Public Member Functions | List of all members
clan::Pointx< Type > Class Template Reference
clanCore Math

2D (x,y) point structure. More...

`#include <point.h>`

Inheritance diagram for clan::Pointx< Type >:

## Public Member Functions
| Pointx ()
| Pointx (Type x, Type y)
| Pointx (const Pointx< Type > &p)
| Pointx (const Vec2< Type > &p)
Public Member Functions inherited from clan::Vec2< Type >
| Vec2 ()
| Vec2 (const Type &scalar)
| Vec2 (const Vec3< Type > &copy)
| Vec2 (const Vec4< Type > &copy)
| Vec2 (const Type &p1, const Type &p2)
| Vec2 (const Type *array_xy)
| Vec2 (const Vec2< double > &copy)
| Vec2 (const Vec2< float > &copy)
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
| Vec2 (const Vec2< float > &copy)
template<>
| Vec2 (const Vec2< double > &copy)
template<>
| Vec2 (const Vec2< int > &copy)
template<>
double | length () const
template<>
float | length () const
Type | length () const
| Returns the length (magnitude) of this vector. More...
Vec2< Type > & | normalize ()
| Normalizes this vector. More...
Type | dot (const Vec2< Type > &vector) const
| Dot products this vector with an other vector. More...
Angle | angle (const Vec2< Type > &vector) const
| Calculate the angle between this vector and an other vector. More...
Angle | angle_normed (const Vec2< Type > &vector) const
| Calculate the angle between this vector and an other vector, where the vectors are unit vectors. More...
Angle | angle_line (const Vec2< Type > &point) const
| Calculate the angle of the line joining this point and other point. More...
Type | distance (const Vec2< Type > &vector) const
| Calculate the distance between this vector and an other vector. More...
Vec2< Type > & | round ()
| Rounds all components of this vector. More...
Vec2< Type > & | rotate (const Vec2< Type > &hotspot, const Angle &angle)
| Rotate this vector around another point. More...
Type | round_value (float value) const
| Rounds a value for the datatype. More...
bool | is_equal (const Vec2< Type > &other, Type epsilon) const
| Returns true if equal within the bounds of an epsilon. More...
void | operator+= (const Vec2< Type > &vector)
| += operator. More...
void | operator+= (Type value)
| += operator. More...
void | operator-= (const Vec2< Type > &vector)
| -= operator. More...
void | operator-= (Type value)
| -= operator. More...
Vec2< Type > | operator- () const
| operator. More...
void | operator*= (const Vec2< Type > &vector)
| *= operator. More...
void | operator*= (Type value)
| *= operator. More...
void | operator/= (const Vec2< Type > &vector)
| /= operator. More...
void | operator/= (Type value)
| /= operator. More...
Vec2< Type > & | operator= (const Vec2< Type > &vector)
| = operator. More...
bool | operator== (const Vec2< Type > &vector) const
| == operator. More...
bool | operator!= (const Vec2< Type > &vector) const
| != operator. More...
bool | operator< (const Vec2< Type > &vector) const
| < operator. More...

## Additional Inherited Members
Public Types inherited from clan::Vec2< Type >
typedef Type | datatype
Static Public Member Functions inherited from clan::Vec2< Type >
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. More...
static Type | dot (const Vec2< Type > &vector_1, const Vec2< Type > &vector_2)
| Dot products a vector with an other vector. More...
static bool | is_equal (const Vec2< Type > &first, const Vec2< Type > &second, Type epsilon)
| Returns true if equal within the bounds of an epsilon. More...
static Vec2< Type > | normalize (const Vec2< Type > &vector)
| Normalizes a vector. More...
static Vec2< Type > | rotate (const Vec2< Type > &vector, const Vec2< Type > &hotspot, const Angle &angle)
| Rotate a vector around another point. More...
static Vec2< Type > | round (const Vec2< Type > &vector)
| Rounds all components on a vector. More...
Public Attributes inherited from clan::Vec2< Type >
union {
Type clan::Vec2< Type >::r
Type clan::Vec2< Type >::s
Type clan::Vec2< Type >::x
}; |
union {
Type clan::Vec2< Type >::g
Type clan::Vec2< Type >::t
Type clan::Vec2< Type >::y
}; |

## Detailed Description

### template<typename Type>
class clan::Pointx< Type >

2D (x,y) point structure.

These point templates are defined for: int (Point), float (Pointf), double (Pointd)

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

- point.h