Kaim::Box2LL Class Reference

Kaim::Box2LL Class Reference

#include <box2ll.h>

Class Description

2d axis aligned box of 64bits integers. Does not maintain m_countXY = m_max - m_min as a member.

Functions

 Box2LL ()
 Set { {+infinite, +infinite}, {-infinite, -infinite} }. More...
 
 Box2LL (const Vec2LL &min_, const Vec2LL &max_)
 
 Box2LL (KyInt64 min_x, KyInt64 min_y, KyInt64 max_x, KyInt64 max_y)
 
bool operator== (const Box2LL &other) const
 
bool operator!= (const Box2LL &other) const
 
void Clear ()
 Set { {+infinite, +infinite}, {-infinite, -infinite} }. More...
 
bool IsValid () const
 
void MakeZero ()
 
void Set (const Vec2LL &min_, const Vec2LL &max_)
 
void SetMin (const Vec2LL &min_)
 
void SetMax (const Vec2LL &max_)
 
const Vec2LLMin () const
 
const Vec2LLMax () const
 
KyInt64 CountX () const
 
KyInt64 CountY () const
 
bool DoesContain (const Vec2LL &pos) const
 
bool DoesStrictlyContain (const Vec2LL &pos) const
 
void ExpandByPos (const Vec2LL &pos)
 
void ExpandByBox (const Box2LL &box)
 
void Enlarge (KyInt64 enlargement)
 
void GetEnlarged (KyInt64 enlargement, Box2LL &enlarged) const
 
bool IntersectWith (const Box2LL &box)
 Set itself as its intersection with box, return true if itself and box do intersect. More...
 
bool SetAsIntersection (const Box2LL &box_1, const Box2LL &box_2)
 Set itself as the intersection of box_1 and box_2, return true if box_1 and box_2 do intersect. More...
 

Data

Vec2LL m_min
 
Vec2LL m_max
 

Constructor & Destructor Documentation

Kaim::Box2LL::Box2LL ( )
inline

Set { {+infinite, +infinite}, {-infinite, -infinite} }.

Member Function Documentation

void Kaim::Box2LL::Clear ( )
inline

Set { {+infinite, +infinite}, {-infinite, -infinite} }.

bool Kaim::Box2LL::IntersectWith ( const Box2LL box)
inline

Set itself as its intersection with box, return true if itself and box do intersect.

bool Kaim::Box2LL::SetAsIntersection ( const Box2LL box_1,
const Box2LL box_2 
)
inline

Set itself as the intersection of box_1 and box_2, return true if box_1 and box_2 do intersect.


The documentation for this class was generated from the following file: