2D (left,top,right,bottom) rectangle structure - Integer More...
#include <rect.h>
Public Member Functions | |
Rect () | |
Rect (const Sizex< int > &s) | |
Rect (int new_left, int new_top, int new_right, int new_bottom) | |
Rect (const Pointx< int > &p, const Sizex< int > &size) | |
Rect (const Rectx< int > &rect) | |
Rect (const Rectx< float > &rect) | |
Rect (const Rectx< double > &rect) | |
Rect (int new_left, int new_top, const Sizex< int > &size) | |
Construction | |
bool | operator== (const Rectx< int > &r) const |
Rect == Rect operator. More... | |
bool | operator!= (const Rectx< int > &r) const |
Rect != Rect operator. More... | |
Operations | |
Rectx< int > & | set_top_left (const Vec2< int > &p) |
Sets the top-left point of the rectangle. More... | |
Rectx< int > & | set_width (intwidth) |
Sets the width of the rectangle. More... | |
Rectx< int > & | set_height (intheight) |
Sets the height of the rectangle. More... | |
Rectx< int > & | shrink (const int &left, const int &top, const int &right, const int &bottom) |
Shrink the rectangle. More... | |
Rectx< int > & | shrink (const int &left_right, const int &top_bottom) |
Shrink the rectangle. More... | |
Rectx< int > & | shrink (const int &shrink) |
Shrink the rectangle. More... | |
Rectx< int > & | expand (const int &left, const int &top, const int &right, const int &bottom) |
Expand the rectangle. More... | |
Rectx< int > & | expand (const int &left_and_right, const int &top_and_bottom) |
Expand the rectangle. More... | |
Rectx< int > & | expand (const int &expand) |
Expand the rectangle. More... | |
Rectx< int > & | translate (const Vec2< int > &p) |
Translate the rect. More... | |
Rectx< int > & | translate (const Sizex< int > &p) |
Translate the rect. More... | |
Rectx< int > & | translate (const Rectx< int > &p) |
Translate the rect by another rect (only uses the left and top coords). More... | |
Rectx< int > & | translate (intx, inty) |
Translate the rect. More... | |
Rectx< int > & | set_size (const Sizex< int > &size) |
Sets the size of the rectangle, maintaining top/left position. More... | |
Rectx< int > & | overlap (const Rectx< int > &rect) |
Calculates the intersection of two rectangles. More... | |
Rectx< int > & | bounding_rect (const Rectx< int > &rect) |
Calculates the bounding rectangle of the rectangles. More... | |
Rectx< int > & | normalize () |
Normalize rectangle. More... | |
Rectx< int > & | apply_alignment (Origin origin, intx, inty) |
Applies an origin and offset pair to this rectangle. More... | |
Rectx< int > & | clip (const Rectx< int > &cr) |
Clip according to the specified clip rectangle. More... | |
Attributes | |
int | get_width () const |
Returns the width of the rectangle. More... | |
int | get_height () const |
Returns the height of the rectangle. More... | |
Sizex< int > | get_size () const |
Returns the size of the rectangle. More... | |
bool | contains (const Vec2< int > &p) const |
Returns true if the rectangle contains the point. More... | |
Pointx< int > | get_top_left () const |
Returns the top-left point inside the rectangle. More... | |
Pointx< int > | get_top_right () const |
Returns the top-right point outside the rectangle. More... | |
Pointx< int > | get_bottom_right () const |
Returns the bottom-right point outside the rectangle. More... | |
Pointx< int > | get_bottom_left () const |
Returns the bottom-left point outside the rectangle. More... | |
bool | is_overlapped (const Rectx< int > &r) const |
Returns true if rectangle passed is overlapping or inside this rectangle. More... | |
bool | is_inside (const Rectx< int > &r) const |
Returns true if rectangle passed is inside this rectangle. More... | |
Rectx< int > | get_rot_bounds (const Vec2< int > &hotspot, const Angle &angle) const |
Returns another Rectx<Type> containing a rotated version of this one. More... | |
Rectx< int > | get_rot_bounds (Origin origin, intx, inty, const Angle &angle) const |
Returns another Rectx<Type> containing a rotated version of this one. More... | |
Pointx< int > | get_center () const |
Returns the center point of the rectangle. More... | |
int | left |
X1-coordinate (left point inside the rectangle) More... | |
int | top |
Y1-coordinate (top point inside the rectangle) More... | |
int | right |
X2-coordinate (point outside the rectangle) More... | |
int | bottom |
Y2-coordinate (point outside the rectange) More... | |
2D (left,top,right,bottom) rectangle structure - Integer
|
inlineinherited |
Applies an origin and offset pair to this rectangle.
origin | The new origin to adjust to from default upper-left position |
x,y | Offsets applied negatively to each corner of the rectangle |
References clan::Vec2< Type >::calc_origin(), clan::Vec2< Type >::x, and clan::Vec2< Type >::y.
|
inlineinherited |
Calculates the bounding rectangle of the rectangles.
Rect values become: min left, min top, max right, max bottom.
References clan::Rectx< Type >::bottom, clan::Rectx< Type >::left, clan::max(), clan::min(), clan::Rectx< Type >::right, and clan::Rectx< Type >::top.
|
inlineinherited |
Clip according to the specified clip rectangle.
References clan::Rectx< Type >::bottom, clan::Rectx< Type >::left, clan::max(), clan::min(), clan::Rectx< Type >::right, and clan::Rectx< Type >::top.
|
inlineinherited |
Returns true if the rectangle contains the point.
References clan::Vec2< Type >::x, and clan::Vec2< Type >::y.
|
inlineinherited |
Expand the rectangle.
|
inlineinherited |
Expand the rectangle.
|
inlineinherited |
Expand the rectangle.
|
inlineinherited |
Returns the bottom-left point outside the rectangle.
|
inlineinherited |
Returns the bottom-right point outside the rectangle.
|
inlineinherited |
Returns the center point of the rectangle.
|
inlineinherited |
Returns the height of the rectangle.
|
inherited |
Returns another Rectx<Type> containing a rotated version of this one.
hotspot | Point to rotate around. |
angle | Angle to rotate. |
|
inherited |
Returns another Rectx<Type> containing a rotated version of this one.
origin | Determines the hotspot point within the rectangle |
x | Offsets applied negatively to the hotspot point |
y | Offsets applied negatively to the hotspot point |
angle | Angle |
|
inlineinherited |
Returns the size of the rectangle.
|
inlineinherited |
Returns the top-left point inside the rectangle.
|
inlineinherited |
Returns the top-right point outside the rectangle.
|
inlineinherited |
Returns the width of the rectangle.
|
inlineinherited |
Returns true if rectangle passed is inside this rectangle.
References clan::Rectx< Type >::bottom, clan::Rectx< Type >::left, clan::Rectx< Type >::right, and clan::Rectx< Type >::top.
|
inlineinherited |
Returns true if rectangle passed is overlapping or inside this rectangle.
References clan::Rectx< Type >::bottom, clan::Rectx< Type >::left, clan::Rectx< Type >::right, and clan::Rectx< Type >::top.
|
inlineinherited |
Normalize rectangle.
Sets the width to 0 if found a negative width Sets the height to 0 if found a negative height
|
inlineinherited |
Rect != Rect operator.
References clan::Rectx< Type >::bottom, clan::Rectx< Type >::left, clan::Rectx< Type >::right, and clan::Rectx< Type >::top.
|
inlineinherited |
Rect == Rect operator.
References clan::Rectx< Type >::bottom, clan::Rectx< Type >::left, clan::Rectx< Type >::right, and clan::Rectx< Type >::top.
|
inlineinherited |
Calculates the intersection of two rectangles.
Rect values become: max left, max top, min right, min bottom.
References clan::Rectx< Type >::bottom, clan::Rectx< Type >::left, clan::max(), clan::min(), clan::Rectx< Type >::right, and clan::Rectx< Type >::top.
|
inlineinherited |
Sets the height of the rectangle.
|
inlineinherited |
Sets the size of the rectangle, maintaining top/left position.
References clan::Sizex< Type >::height, and clan::Sizex< Type >::width.
|
inlineinherited |
Sets the top-left point of the rectangle.
References clan::Vec2< Type >::x, and clan::Vec2< Type >::y.
|
inlineinherited |
Sets the width of the rectangle.
|
inlineinherited |
Shrink the rectangle.
|
inlineinherited |
Shrink the rectangle.
|
inlineinherited |
Shrink the rectangle.
|
inlineinherited |
Translate the rect.
References clan::Vec2< Type >::x, and clan::Vec2< Type >::y.
|
inlineinherited |
Translate the rect.
References clan::Sizex< Type >::height, and clan::Sizex< Type >::width.
|
inlineinherited |
Translate the rect by another rect (only uses the left and top coords).
References clan::Rectx< Type >::left, and clan::Rectx< Type >::top.
|
inlineinherited |
Translate the rect.
|
inherited |
Y2-coordinate (point outside the rectange)
|
inherited |
X1-coordinate (left point inside the rectangle)
|
inherited |
X2-coordinate (point outside the rectangle)
|
inherited |
Y1-coordinate (top point inside the rectangle)