47 template<
typename Type>
64 :
p(new_p),
q(new_q),
r(new_r),
s(new_s) {}
78 r(rect.
right, rect.bottom),
s(rect.
left, rect.bottom) {}
87 {
p += quad.
p;
q += quad.
q;
r += quad.
r;
s += quad.
s;
return *
this; }
91 {
p -= quad.
p;
q -= quad.
q;
r -= quad.
r;
s -= quad.
s;
return *
this; }
95 {
p += point;
q += point;
r += point;
s += point;
return *
this; }
99 {
p -= point;
q -= point;
r -= point;
s -= point;
return *
this; }
103 {
return Quadx(
p + quad.
p,
q + quad.
q,
r + quad.
r,
s + quad.
s); }
107 {
return Quadx(
p - quad.
p,
q - quad.
q,
r - quad.
r,
s - quad.
s); }
111 {
return Quadx(
p + point,
q + point,
r + point,
s + point); }
115 {
return Quadx(
p - point,
q - point,
r - point,
s - point); }
119 {
return (
p == quad.
p &&
q == quad.
q &&
r == quad.
r &&
s == quad.
s); }
123 {
return (
p != quad.
p ||
q != quad.
q ||
r != quad.
r ||
s != quad.
s); }
Quadd(const Quadx< double > &quad)
Definition: quad.h:228
Quadx< Type > & operator+=(const Vec2< Type > &point)
Quad += Point operator.
Definition: quad.h:94
Quadx< Type > & scale(const Vec2< Type > &hotspot, float sx, float sy)
Scale the Quad.
Quadf(const Rectf &rect)
Definition: quad.h:217
Vec2< Type > center() const
Returns the center point of the quad.
Vec2< Type > q
Second Point.
Definition: quad.h:134
Quadx(const Vec2< Type > &new_p, const Vec2< Type > &new_q, const Vec2< Type > &new_r, const Vec2< Type > &new_s)
Constructs a quad.
Definition: quad.h:63
2D (left,top,right,bottom) rectangle structure.
Definition: line.h:45
Quad()
Definition: quad.h:205
2D quad structure.
Definition: quad.h:49
2D (left,top,right,bottom) rectangle structure - Integer
Definition: rect.h:471
Type get_width() const
Returns the width of the quad.
Sizex< Type > get_size() const
Returns the size of the rectangle.
Definition: quad.h:149
2D quad structure - Integer
Definition: quad.h:203
Quadx< Type > operator+(const Quadx< Type > &quad) const
Quad + Quad operator.
Definition: quad.h:102
2D (left,top,right,bottom) rectangle structure - Float
Definition: rect.h:485
2D quad structure - Float
Definition: quad.h:213
Origin
Alignment origins.
Definition: origin.h:41
Quad(const Rect &rect)
Definition: quad.h:207
Quadx(const Quadx< Type > &quad)
Constructs a quad.
Definition: quad.h:83
Vec2< Type > r
Third Point.
Definition: quad.h:137
Angle class.
Definition: angle.h:63
Quadx< Type > & operator-=(const Vec2< Type > &point)
Quad -= Point operator.
Definition: quad.h:98
Quadx(const Rectx< Type > &rect)
Constructs a quad.
Definition: quad.h:77
Quad(const Vec2< int > &new_p, const Vec2< int > &new_q, const Vec2< int > &new_r, const Vec2< int > &new_s)
Definition: quad.h:206
2D vector
Definition: line.h:48
Quadx()
Constructs a quad.
Definition: quad.h:55
Quadx< Type > & apply_alignment(Origin origin, Type x, Type y)
Applies an origin and offset pair to this rectangle.
Quadx< Type > & operator+=(const Quadx< Type > &quad)
Quad += Quad operator.
Definition: quad.h:86
Quadx< Type > operator-(const Quadx< Type > &quad) const
Quad - Quad operator.
Definition: quad.h:106
bool operator==(const Quadx< Type > &quad) const
Quad == Quad operator.
Definition: quad.h:118
Quadx< Type > operator+(const Vec2< Type > &point) const
Quad + Point operator.
Definition: quad.h:110
Quadx< Type > & operator-=(const Quadx< Type > &quad)
Quad -= Quad operator.
Definition: quad.h:90
Type get_height() const
Returns the height of the quad.
Vec2< Type > p
First Point.
Definition: quad.h:131
Quadd(const Rectd &rect)
Definition: quad.h:227
Quadf()
Definition: quad.h:215
2D (left,top,right,bottom) rectangle structure - Double
Definition: rect.h:500
Quadd(const Vec2< double > &new_p, const Vec2< double > &new_q, const Vec2< double > &new_r, const Vec2< double > &new_s)
Definition: quad.h:226
2D quad structure - Double
Definition: quad.h:223
Quadx< Type > & scale(float sx, float sy)
Scale the Quad.
Rect get_bounds() const
Returns the bounding box of the quad as a Rect.
Quadx< Type > operator-(const Vec2< Type > &point) const
Quad - Point operator.
Definition: quad.h:114
Quad(const Quadx< int > &quad)
Definition: quad.h:208
bool is_inside(const Vec2< Type > &point) const
Check if a point is inside or outside the quad.
Vec2< Type > s
Fourth Point.
Definition: quad.h:140
Quadf(const Quadx< float > &quad)
Definition: quad.h:218
2D (width,height) size structure.
Definition: size.h:55
Quadf(const Vec2< float > &new_p, const Vec2< float > &new_q, const Vec2< float > &new_r, const Vec2< float > &new_s)
Definition: quad.h:216
Quadx< Type > & rotate(const Vec2< Type > &hotspot, const Angle &angle)
Rotates the Quad.
bool operator!=(const Quadx< Type > &quad) const
Quad != Quad operator.
Definition: quad.h:122
Quadd()
Definition: quad.h:225