KrisLibrary
1.0.0
|
A 2D point or infinite ray. Note: rays should be normalized unit vectors. More...
#include <rayprimitives.h>
Public Attributes | |
bool | isRay |
Public Attributes inherited from Math3D::Vector2 | |
union { | |
Real data [2] | |
struct { | |
Real x | |
Real y | |
} | |
}; | |
Additional Inherited Members | |
Public Member Functions inherited from Math3D::Vector2 | |
Vector2 (const Vector2 &) | |
Vector2 (Real x) | |
Vector2 (Real x, Real y) | |
Vector2 (const Real *data) | |
bool | operator== (const Vector2 &) const |
bool | operator!= (const Vector2 &) const |
const Vector2 & | operator= (const Vector2 &) |
void | operator+= (const Vector2 &) |
void | operator-= (const Vector2 &) |
void | operator*= (Real) |
void | operator/= (Real) |
Real & | operator[] (int) |
const Real & | operator[] (int) const |
operator Real * () | |
operator const Real * () const | |
void | add (const Vector2 &a, const Vector2 &b) |
void | sub (const Vector2 &a, const Vector2 &b) |
void | mul (const Vector2 &a, Real b) |
void | div (const Vector2 &a, Real b) |
void | madd (const Vector2 &a, Real b) |
Real | dot (const Vector2 &a) const |
Real | cross (const Vector2 &a) const |
2d cross product | |
Real | distance (const Vector2 &a) const |
Real | distanceSquared (const Vector2 &a) const |
Real | norm () const |
Real | normSquared () const |
Real | length () const |
= norm | |
Real | minElement (int *index=NULL) const |
Real | maxElement (int *index=NULL) const |
Real | minAbsElement (int *index=NULL) const |
Real | maxAbsElement (int *index=NULL) const |
void | set (const Vector2 &) |
void | set (Real x) |
void | set (Real x, Real y) |
void | set (const Real *data) |
void | setZero () |
void | setRotation (Real rads) |
sets x=cos(rads), y=sin(rads) | |
void | setPerpendicular (const Vector2 &) |
sets this to the vector rotated 90 degrees ccw | |
void | setOrthogonal (const Vector2 &v) |
void | setNegative (const Vector2 &) |
void | setNormalized (const Vector2 &) |
void | setProjection (const Vector2 &, const Vector2 &) |
sets this to the projection of a on b | |
void | setMinimum (const Vector2 &, const Vector2 &) |
void | setMinimum (const Vector2 &) |
void | setMaximum (const Vector2 &, const Vector2 &) |
void | setMaximum (const Vector2 &) |
void | get (Vector2 &) const |
void | get (Real &x, Real &y) const |
void | get (Real data[2]) const |
void | getNegative (Vector2 &) const |
void | getNormalized (Vector2 &) const |
void | getOrthogonal (Vector2 &) const |
calculates an orthogonal vector | |
void | inplaceNegative () |
void | inplaceMul (Real) |
void | inplaceDiv (Real) |
void | inplaceNormalize () |
bool | isZero (Real eps=Zero) const |
bool | isEqual (const Vector2 &, Real eps=Zero) const |
bool | Read (File &) |
bool | Write (File &) const |
A 2D point or infinite ray. Note: rays should be normalized unit vectors.