|
| | Pointx () |
| | Pointx (const Pointx< Type > &p) |
| | Pointx (const Vec2< Type > &p) |
| | Pointx (Type x, Type y) |
| | Vec2 () |
| | Vec2 (const Type &p1, const Type &p2) |
| | Vec2 (const Type &scalar) |
| | Vec2 (const Type *array_xy) |
| template<typename OtherType, typename std::enable_if_t< std::is_integral< Type >::value &&!std::is_integral< OtherType >::value, int > = 0> |
| | Vec2 (const Vec2< OtherType > ©) |
| template<typename OtherType, typename std::enable_if_t<!std::is_integral< Type >::value||std::is_integral< OtherType >::value, int > = 0> |
| | Vec2 (const Vec2< OtherType > ©) |
| | Vec2 (const Vec2< Type > ©)=default |
| | Vec2 (const Vec3< Type > ©) |
| | Vec2 (const Vec4< Type > ©) |
| Angle | angle (const Vec2< Type > &vector) const |
| | Calculate the angle between this vector and an other vector.
|
| Angle | angle_line (const Vec2< Type > &point) const |
| | Calculate the angle of the line joining this point and other point.
|
| Angle | angle_normed (const Vec2< Type > &vector) const |
| | Calculate the angle between this vector and an other vector, where the vectors are unit vectors.
|
| Type | distance (const Vec2< Type > &vector) const |
| | Calculate the distance between this vector and an other vector.
|
| Type | dot (const Vec2< Type > &vector) const |
| | Dot products this vector with an other vector.
|
| bool | is_equal (const Vec2< Type > &other, Type epsilon) const |
| | Returns true if equal within the bounds of an epsilon.
|
| Type | length () const |
| | Returns the length (magnitude) of this vector.
|
| double | length () const |
| float | length () const |
| Vec2< Type > & | normalize () |
| | Normalizes this vector.
|
| bool | operator!= (const Vec2< Type > &vector) const |
| | != operator.
|
| void | operator*= (const Vec2< Type > &vector) |
| | *= operator.
|
| void | operator*= (Type value) |
| | *= operator.
|
| void | operator+= (const Vec2< Type > &vector) |
| | += operator.
|
| void | operator+= (Type value) |
| | += operator.
|
| Vec2< Type > | operator- () const |
| |
|
| void | operator-= (const Vec2< Type > &vector) |
| | -= operator.
|
| void | operator-= (Type value) |
| | -= operator.
|
| void | operator/= (const Vec2< Type > &vector) |
| | /= operator.
|
| void | operator/= (Type value) |
| | /= operator.
|
| bool | operator< (const Vec2< Type > &vector) const |
| | < operator.
|
| Vec2< Type > & | operator= (const Vec2< Type > &vector)=default |
| | = operator.
|
| bool | operator== (const Vec2< Type > &vector) const |
| | == operator.
|
| Vec2< Type > & | rotate (const Vec2< Type > &hotspot, const Angle &angle) |
| | Rotate this vector around another point.
|
| Vec2< Type > & | round () |
| | Rounds all components of this vector.
|
| Type | round_value (float value) const |
| | Rounds a value for the datatype.
|
|
| typedef Type | datatype |
| static Pointx< Type > | calc_origin (Origin origin, const Sizex< Type > &size) |
| | Returns the anchor point for the origin within the dimensions of the size structure.
|
| static Type | dot (const Vec2< Type > &vector_1, const Vec2< Type > &vector_2) |
| | Dot products a vector with an other vector.
|
| static bool | is_equal (const Vec2< Type > &first, const Vec2< Type > &second, Type epsilon) |
| | Returns true if equal within the bounds of an epsilon.
|
| static Vec2< Type > | normalize (const Vec2< Type > &vector) |
| | Normalizes a vector.
|
| static Vec2< Type > | rotate (const Vec2< Type > &vector, const Vec2< Type > &hotspot, const Angle &angle) |
| | Rotate a vector around another point.
|
| static Vec2< Type > | round (const Vec2< Type > &vector) |
| | Rounds all components on a vector.
|
| union { | |
| Type g | |
| Type t | |
| Type y | |
| }; | |
| union { | |
| Type r | |
| Type s | |
| Type x | |
| }; | |
template<typename Type>
class clan::Pointx< Type >
2D (x,y) point structure.
These point templates are defined for: int (Point), float (Pointf), double (Pointd)