Public Member Functions

CL_Rectf Class Reference
[clanCore Math]

2D (left,top,right,bottom) rectangle structure - Float More...

#include <rect.h>

Inheritance diagram for CL_Rectf:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 CL_Rectf ()
 CL_Rectf (float new_left, float new_top, const CL_Sizex< float > &size)
 CL_Rectf (const CL_Rectx< double > &rect)
 CL_Rectf (const CL_Rectx< float > &rect)
 CL_Rectf (const CL_Rectx< int > &rect)
 CL_Rectf (const CL_Pointx< float > &p, const CL_Sizex< float > &size)
 CL_Rectf (float new_left, float new_top, float new_right, float new_bottom)
 CL_Rectf (const CL_Sizex< float > &s)
 CL_Rectf (const CL_Sizex< int > &s)
Construction

bool operator== (const CL_Rectx< float > &r) const
 Rect == Rect operator.
bool operator!= (const CL_Rectx< float > &r) const
 Rect != Rect operator.
Operations

CL_Rectx< float > & set_top_left (const CL_Vec2< float > &p)
 Sets the top-left point of the rectangle.
CL_Rectx< float > & set_top_right (const CL_Vec2< float > &p)
 Sets the top-right point of the rectangle.
CL_Rectx< float > & set_bottom_right (const CL_Vec2< float > &p)
 Sets the bottom-right point of the rectangle.
CL_Rectx< float > & set_bottom_left (const CL_Vec2< float > &p)
 Sets the bottom-left point of the rectangle.
CL_Rectx< float > & set_width (floatwidth)
 Sets the width of the rectangle.
CL_Rectx< float > & set_height (floatheight)
 Sets the height of the rectangle.
CL_Rectx< float > & shrink (const float &left, const float &top, const float &right, const float &bottom)
 Shrink the rectangle.
CL_Rectx< float > & shrink (const float &left_right, const float &top_bottom)
 Shrink the rectangle.
CL_Rectx< float > & shrink (const float &shrink)
 Shrink the rectangle.
CL_Rectx< float > & expand (const float &left, const float &top, const float &right, const float &bottom)
 Expand the rectangle.
CL_Rectx< float > & expand (const float &left_and_right, const float &top_and_bottom)
 Expand the rectangle.
CL_Rectx< float > & expand (const float &expand)
 Expand the rectangle.
CL_Rectx< float > & translate (const CL_Vec2< float > &p)
 Translate the rect.
CL_Rectx< float > & translate (const CL_Rectx< float > &p)
 Translate the rect by another rect (only uses the left and top coords).
CL_Rectx< float > & translate (floatx, floaty)
 Translate the rect.
CL_Rectx< float > & set_size (const CL_Sizex< float > &size)
 Sets the size of the rectangle, maintaining top/left position.
CL_Rectx< float > & overlap (const CL_Rectx< float > &rect)
 Calculates the intersection of two rectangles.
CL_Rectx< float > & bounding_rect (const CL_Rectx< float > &rect)
 Calculates the bounding rectangle of the rectangles.
CL_Rectx< float > & normalize ()
 Normalize rectangle. Ensures that left is less than right and top is less than bottom.
CL_Rectx< float > & apply_alignment (CL_Origin origin, floatx, floaty)
 Applies an origin and offset pair to this rectangle.
CL_Rectx< float > & clip (const CL_Rectx< float > &cr)
 Clip according to the specified clip rectangle.

Attributes



float get_width () const
 Returns the width of the rectangle.
float get_height () const
 Returns the height of the rectangle.
CL_Sizex< float > get_size () const
 Returns the size of the rectangle.
bool contains (const CL_Vec2< float > &p) const
 Returns true if the rectangle contains the point.
CL_Pointx< float > get_top_left () const
 Returns the top-left point of the rectangle.
CL_Pointx< float > get_top_right () const
 Returns the top-right point of the rectangle.
CL_Pointx< float > get_bottom_right () const
 Returns the bottom-right point of the rectangle.
CL_Pointx< float > get_bottom_left () const
 Returns the bottom-left point of the rectangle.
bool is_overlapped (const CL_Rectx< float > &r) const
 Returns true if rectangle passed is overlapping or inside this rectangle.
bool is_inside (const CL_Rectx< float > &r) const
 Returns true if rectangle passed is inside this rectangle.
CL_Rectx< float > get_rot_bounds (const CL_Vec2< float > &hotspot, const CL_Angle &angle) const
 Returns another CL_Rectx<Type> containing a rotated version of this one.
CL_Rectx< float > get_rot_bounds (CL_Origin origin, floatx, floaty, const CL_Angle &angle) const
 Returns another CL_Rectx<Type> containing a rotated version of this one.
CL_Pointx< float > get_center () const
 Returns the center point of the rectangle.
float left
 X1-coordinate.
float top
 Y1-coordinate.
float right
 X2-coordinate.
float bottom
 Y2-coordinate.

Detailed Description

2D (left,top,right,bottom) rectangle structure - Float


Constructor & Destructor Documentation

CL_Rectf::CL_Rectf (  )  [inline]
CL_Rectf::CL_Rectf ( const CL_Sizex< int > &  s  )  [inline]
CL_Rectf::CL_Rectf ( const CL_Sizex< float > &  s  )  [inline]
CL_Rectf::CL_Rectf ( float  new_left,
float  new_top,
float  new_right,
float  new_bottom 
) [inline]
CL_Rectf::CL_Rectf ( const CL_Pointx< float > &  p,
const CL_Sizex< float > &  size 
) [inline]
CL_Rectf::CL_Rectf ( const CL_Rectx< int > &  rect  )  [inline]
CL_Rectf::CL_Rectf ( const CL_Rectx< float > &  rect  )  [inline]
CL_Rectf::CL_Rectf ( const CL_Rectx< double > &  rect  )  [inline]
CL_Rectf::CL_Rectf ( float  new_left,
float  new_top,
const CL_Sizex< float > &  size 
) [inline]

Member Function Documentation

CL_Rectx<float >& CL_Rectx< float >::apply_alignment ( CL_Origin  origin,
float  x,
float  y 
) [inline, inherited]

Applies an origin and offset pair to this rectangle.

Parameters:
origin The new origin to adjust to from default upper-left position
x,y Offsets applied negatively to each corner of the rectangle
Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::bounding_rect ( const CL_Rectx< float > &  rect  )  [inline, inherited]

Calculates the bounding rectangle of the rectangles.

Rect values become: min left, min top, max right, max bottom.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::clip ( const CL_Rectx< float > &  cr  )  [inline, inherited]

Clip according to the specified clip rectangle.

Returns:
reference to this object
bool CL_Rectx< float >::contains ( const CL_Vec2< float > &  p  )  const [inline, inherited]

Returns true if the rectangle contains the point.

CL_Rectx<float >& CL_Rectx< float >::expand ( const float &  left,
const float &  top,
const float &  right,
const float &  bottom 
) [inline, inherited]

Expand the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::expand ( const float &  left_and_right,
const float &  top_and_bottom 
) [inline, inherited]

Expand the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::expand ( const float &  expand  )  [inline, inherited]

Expand the rectangle.

Returns:
reference to this object
CL_Pointx<float > CL_Rectx< float >::get_bottom_left (  )  const [inline, inherited]

Returns the bottom-left point of the rectangle.

CL_Pointx<float > CL_Rectx< float >::get_bottom_right (  )  const [inline, inherited]

Returns the bottom-right point of the rectangle.

CL_Pointx<float > CL_Rectx< float >::get_center (  )  const [inline, inherited]

Returns the center point of the rectangle.

float CL_Rectx< float >::get_height (  )  const [inline, inherited]

Returns the height of the rectangle.

CL_Rectx<float > CL_Rectx< float >::get_rot_bounds ( const CL_Vec2< float > &  hotspot,
const CL_Angle angle 
) const [inherited]

Returns another CL_Rectx<Type> containing a rotated version of this one.

Parameters:
hotspot Point to rotate around.
angle Angle to rotate.
CL_Rectx<float > CL_Rectx< float >::get_rot_bounds ( CL_Origin  origin,
float  x,
float  y,
const CL_Angle angle 
) const [inherited]

Returns another CL_Rectx<Type> containing a rotated version of this one.

Parameters:
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
CL_Sizex<float > CL_Rectx< float >::get_size (  )  const [inline, inherited]

Returns the size of the rectangle.

CL_Pointx<float > CL_Rectx< float >::get_top_left (  )  const [inline, inherited]

Returns the top-left point of the rectangle.

CL_Pointx<float > CL_Rectx< float >::get_top_right (  )  const [inline, inherited]

Returns the top-right point of the rectangle.

float CL_Rectx< float >::get_width (  )  const [inline, inherited]

Returns the width of the rectangle.

bool CL_Rectx< float >::is_inside ( const CL_Rectx< float > &  r  )  const [inline, inherited]

Returns true if rectangle passed is inside this rectangle.

bool CL_Rectx< float >::is_overlapped ( const CL_Rectx< float > &  r  )  const [inline, inherited]

Returns true if rectangle passed is overlapping or inside this rectangle.

CL_Rectx<float >& CL_Rectx< float >::normalize (  )  [inline, inherited]

Normalize rectangle. Ensures that left is less than right and top is less than bottom.

Returns:
reference to this object
bool CL_Rectx< float >::operator!= ( const CL_Rectx< float > &  r  )  const [inline, inherited]

Rect != Rect operator.

bool CL_Rectx< float >::operator== ( const CL_Rectx< float > &  r  )  const [inline, inherited]

Rect == Rect operator.

CL_Rectx<float >& CL_Rectx< float >::overlap ( const CL_Rectx< float > &  rect  )  [inline, inherited]

Calculates the intersection of two rectangles.

Rect values become: max left, max top, min right, min bottom.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::set_bottom_left ( const CL_Vec2< float > &  p  )  [inline, inherited]

Sets the bottom-left point of the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::set_bottom_right ( const CL_Vec2< float > &  p  )  [inline, inherited]

Sets the bottom-right point of the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::set_height ( float  height  )  [inline, inherited]

Sets the height of the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::set_size ( const CL_Sizex< float > &  size  )  [inline, inherited]

Sets the size of the rectangle, maintaining top/left position.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::set_top_left ( const CL_Vec2< float > &  p  )  [inline, inherited]

Sets the top-left point of the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::set_top_right ( const CL_Vec2< float > &  p  )  [inline, inherited]

Sets the top-right point of the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::set_width ( float  width  )  [inline, inherited]

Sets the width of the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::shrink ( const float &  left,
const float &  top,
const float &  right,
const float &  bottom 
) [inline, inherited]

Shrink the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::shrink ( const float &  shrink  )  [inline, inherited]

Shrink the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::shrink ( const float &  left_right,
const float &  top_bottom 
) [inline, inherited]

Shrink the rectangle.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::translate ( const CL_Vec2< float > &  p  )  [inline, inherited]

Translate the rect.

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::translate ( const CL_Rectx< float > &  p  )  [inline, inherited]

Translate the rect by another rect (only uses the left and top coords).

Returns:
reference to this object
CL_Rectx<float >& CL_Rectx< float >::translate ( float  x,
float  y 
) [inline, inherited]

Translate the rect.

Returns:
reference to this object

Member Data Documentation

float CL_Rectx< float >::bottom [inherited]

Y2-coordinate.

float CL_Rectx< float >::left [inherited]

X1-coordinate.

float CL_Rectx< float >::right [inherited]

X2-coordinate.

float CL_Rectx< float >::top [inherited]

Y1-coordinate.


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