![]() |
Cinder
0.9.1
|
#include <Rect.h>
Public Types | |
typedef glm::tvec2< T, glm::defaultp > | Vec2T |
typedef glm::tvec3< T, glm::defaultp > | Vec3T |
typedef glm::tmat3x3< T, glm::defaultp > | Mat3T |
Public Member Functions | |
RectT () | |
RectT (const std::vector< Vec2T > &points) | |
RectT (T aX1, T aY1, T aX2, T aY2) | |
RectT (const Vec2T &v1, const Vec2T &v2) | |
RectT (const Area &area) | |
void | set (T aX1, T aY1, T aX2, T aY2) |
T | getWidth () const |
T | getHeight () const |
T | getAspectRatio () const |
T | calcArea () const |
void | canonicalize () |
RectT | canonicalized () const |
void | clipBy (const RectT &clip) |
RectT | getClipBy (const RectT &clip) const |
Area | getInteriorArea () const |
void | offset (const Vec2T &offset) |
RectT | getOffset (const Vec2T &off) const |
void | moveULTo (const Vec2T &newUL) |
RectT | getMoveULTo (const Vec2T &newUL) const |
void | inflate (const Vec2T &amount) |
RectT | inflated (const Vec2T &amount) const |
void | offsetCenterTo (const Vec2T ¢er) |
void | scaleCentered (const Vec2T &scale) |
RectT | scaledCentered (const Vec2T &scale) const |
void | scaleCentered (T scale) |
RectT | scaledCentered (T scale) const |
void | scale (T scale) |
void | scale (const Vec2T &scale) |
RectT | scaled (T scale) const |
RectT | scaled (const Vec2T &scale) const |
void | transform (const Mat3T &matrix) |
RectT | transformed (const Mat3T &matrix) const |
template<typename Y > | |
bool | contains (const glm::tvec2< Y, glm::defaultp > &pt) const |
bool | contains (const Vec2T &pt) const |
bool | intersects (const RectT &rect) const |
T | distance (const Vec2T &pt) const |
T | distanceSquared (const Vec2T &pt) const |
Vec2T | closestPoint (const Vec2T &pt) const |
T | getX1 () const |
T | getY1 () const |
T | getX2 () const |
T | getY2 () const |
Vec2T | getUpperLeft () const |
Vec2T | getUpperRight () const |
Vec2T | getLowerRight () const |
Vec2T | getLowerLeft () const |
Vec2T | getCenter () const |
Vec2T | getSize () const |
RectT | getCenteredFit (const RectT &other, bool expand) const |
RectT | getCenteredFill (const RectT &other, bool contract) const |
void | include (const Vec2T &point) |
void | include (const std::vector< Vec2T > &points) |
void | include (const RectT &rect) |
const RectT< T > | operator+ (const Vec2T &o) const |
const RectT< T > | operator- (const Vec2T &o) const |
const RectT< T > | operator* (T s) const |
const RectT< T > | operator/ (T s) const |
const RectT< T > | operator+ (const RectT< T > &rhs) const |
const RectT< T > | operator- (const RectT< T > &rhs) const |
RectT< T > & | operator+= (const Vec2T &o) |
RectT< T > & | operator-= (const Vec2T &o) |
RectT< T > & | operator*= (T s) |
RectT< T > & | operator/= (T s) |
Static Public Member Functions | |
static RectT | zero () |
Public Attributes | |
T | x1 |
T | y1 |
T | x2 |
T | y2 |
Friends | |
std::ostream & | operator<< (std::ostream &o, const RectT &rect) |
typedef glm::tvec2<T, glm::defaultp> cinder::RectT< T >::Vec2T |
typedef glm::tvec3<T, glm::defaultp> cinder::RectT< T >::Vec3T |
typedef glm::tmat3x3<T, glm::defaultp> cinder::RectT< T >::Mat3T |
cinder::RectT< T >::RectT | ( | ) |
cinder::RectT< T >::RectT | ( | const std::vector< Vec2T > & | points | ) |
Initializes the rectangle to be the bounding box of points.
cinder::RectT< T >::RectT | ( | T | aX1, |
T | aY1, | ||
T | aX2, | ||
T | aY2 | ||
) |
cinder::RectT< T >::RectT | ( | const Vec2T & | v1, |
const Vec2T & | v2 | ||
) |
cinder::RectT< T >::RectT | ( | const Area & | area | ) |
void cinder::RectT< T >::set | ( | T | aX1, |
T | aY1, | ||
T | aX2, | ||
T | aY2 | ||
) |
T cinder::RectT< T >::getWidth | ( | ) | const |
T cinder::RectT< T >::getHeight | ( | ) | const |
T cinder::RectT< T >::getAspectRatio | ( | ) | const |
T cinder::RectT< T >::calcArea | ( | ) | const |
void cinder::RectT< T >::canonicalize | ( | ) |
RectT< T > cinder::RectT< T >::canonicalized | ( | ) | const |
void cinder::RectT< T >::clipBy | ( | const RectT< T > & | clip | ) |
RectT< T > cinder::RectT< T >::getClipBy | ( | const RectT< T > & | clip | ) | const |
Area cinder::RectT< T >::getInteriorArea | ( | ) | const |
void cinder::RectT< T >::offset | ( | const Vec2T & | offset | ) |
Translates the RectT by off.
RectT< T > cinder::RectT< T >::getOffset | ( | const Vec2T & | off | ) | const |
Returns a copy of the RectT translated by off.
void cinder::RectT< T >::moveULTo | ( | const Vec2T & | newUL | ) |
Translates the RectT so that its upper-left corner is newUL.
RectT< T > cinder::RectT< T >::getMoveULTo | ( | const Vec2T & | newUL | ) | const |
Returns a copy of the RectT translated so that its upper-left corner is newUL.
void cinder::RectT< T >::inflate | ( | const Vec2T & | amount | ) |
RectT< T > cinder::RectT< T >::inflated | ( | const Vec2T & | amount | ) | const |
void cinder::RectT< T >::offsetCenterTo | ( | const Vec2T & | center | ) |
Translates the rectangle so that its center is at center.
void cinder::RectT< T >::scaleCentered | ( | const Vec2T & | scale | ) |
RectT< T > cinder::RectT< T >::scaledCentered | ( | const Vec2T & | scale | ) | const |
void cinder::RectT< T >::scaleCentered | ( | T | scale | ) |
RectT< T > cinder::RectT< T >::scaledCentered | ( | T | scale | ) | const |
void cinder::RectT< T >::scale | ( | T | scale | ) |
void cinder::RectT< T >::scale | ( | const Vec2T & | scale | ) |
RectT< T > cinder::RectT< T >::scaled | ( | T | scale | ) | const |
RectT< T > cinder::RectT< T >::scaled | ( | const Vec2T & | scale | ) | const |
void cinder::RectT< T >::transform | ( | const Mat3T & | matrix | ) |
Transforms the Rect by matrix. Represents the bounding box of the transformed Rect when matrix expresses non-scale/translate operations.
RectT< T > cinder::RectT< T >::transformed | ( | const Mat3T & | matrix | ) | const |
Returns a copy of the Rect transformed by matrix. Represents the bounding box of the transformed Rect when matrix expresses non-scale/translate operations.
bool cinder::RectT< T >::contains | ( | const glm::tvec2< Y, glm::defaultp > & | pt | ) | const |
Is a point pt inside the rectangle.
bool cinder::RectT< T >::contains | ( | const Vec2T & | pt | ) | const |
bool cinder::RectT< T >::intersects | ( | const RectT< T > & | rect | ) | const |
Returns whether rect intersects with this.
T cinder::RectT< T >::distance | ( | const Vec2T & | pt | ) | const |
Returns the distance between the point pt and the rectangle. Points inside the rectangle return 0
.
T cinder::RectT< T >::distanceSquared | ( | const Vec2T & | pt | ) | const |
Returns the squared distance between the point pt and the rectangle. Points inside the rectangle return 0
.
RectT< T >::Vec2T cinder::RectT< T >::closestPoint | ( | const Vec2T & | pt | ) | const |
Returns the nearest point on the Rect rect. Points inside the rectangle return pt.
T cinder::RectT< T >::getX1 | ( | ) | const |
T cinder::RectT< T >::getY1 | ( | ) | const |
T cinder::RectT< T >::getX2 | ( | ) | const |
T cinder::RectT< T >::getY2 | ( | ) | const |
Vec2T cinder::RectT< T >::getUpperLeft | ( | ) | const |
Vec2T cinder::RectT< T >::getUpperRight | ( | ) | const |
Vec2T cinder::RectT< T >::getLowerRight | ( | ) | const |
Vec2T cinder::RectT< T >::getLowerLeft | ( | ) | const |
Vec2T cinder::RectT< T >::getCenter | ( | ) | const |
Vec2T cinder::RectT< T >::getSize | ( | ) | const |
RectT< T > cinder::RectT< T >::getCenteredFit | ( | const RectT< T > & | other, |
bool | expand | ||
) | const |
RectT< T > cinder::RectT< T >::getCenteredFill | ( | const RectT< T > & | other, |
bool | contract | ||
) | const |
void cinder::RectT< T >::include | ( | const Vec2T & | point | ) |
Expands the Rect to include point in its interior
void cinder::RectT< T >::include | ( | const std::vector< Vec2T > & | points | ) |
Expands the Rect to include all points in points in its interior
void cinder::RectT< T >::include | ( | const RectT< T > & | rect | ) |
Expands the Rect to include rect in its interior
const RectT<T> cinder::RectT< T >::operator+ | ( | const Vec2T & | o | ) | const |
const RectT<T> cinder::RectT< T >::operator- | ( | const Vec2T & | o | ) | const |
const RectT<T> cinder::RectT< T >::operator* | ( | T | s | ) | const |
const RectT<T> cinder::RectT< T >::operator/ | ( | T | s | ) | const |
const RectT<T> cinder::RectT< T >::operator+ | ( | const RectT< T > & | rhs | ) | const |
const RectT<T> cinder::RectT< T >::operator- | ( | const RectT< T > & | rhs | ) | const |
RectT<T>& cinder::RectT< T >::operator+= | ( | const Vec2T & | o | ) |
RectT<T>& cinder::RectT< T >::operator-= | ( | const Vec2T & | o | ) |
RectT<T>& cinder::RectT< T >::operator*= | ( | T | s | ) |
RectT<T>& cinder::RectT< T >::operator/= | ( | T | s | ) |
|
static |
Constructs a rectangle with all values initialized to zero.
|
friend |
T cinder::RectT< T >::x1 |
T cinder::RectT< T >::y1 |
T cinder::RectT< T >::x2 |
T cinder::RectT< T >::y2 |