KrisLibrary
1.0.0
|
A 3D point or infinite ray. Note: rays should be normalized unit vectors. More...
#include <rayprimitives.h>
Public Attributes | |
bool | isRay |
Public Attributes inherited from Math3D::Vector3 | |
union { | |
Real data [3] | |
struct { | |
Real x | |
Real y | |
Real z | |
} | |
}; | |
Additional Inherited Members | |
Public Member Functions inherited from Math3D::Vector3 | |
Vector3 (const Vector3 &) | |
Vector3 (Real x) | |
Vector3 (Real x, Real y, Real z) | |
Vector3 (const Real *data) | |
bool | operator== (const Vector3 &) const |
bool | operator!= (const Vector3 &) const |
const Vector3 & | operator= (const Vector3 &) |
void | operator+= (const Vector3 &) |
void | operator-= (const Vector3 &) |
void | operator*= (Real) |
void | operator/= (Real) |
Real & | operator[] (int) |
const Real & | operator[] (int) const |
operator Real * () | |
operator const Real * () const | |
void | add (const Vector3 &a, const Vector3 &b) |
void | sub (const Vector3 &a, const Vector3 &b) |
void | mul (const Vector3 &a, Real b) |
void | div (const Vector3 &a, Real b) |
void | madd (const Vector3 &a, Real b) |
Real | dot (const Vector3 &a) const |
Real | distance (const Vector3 &a) const |
Real | distanceSquared (const Vector3 &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 Vector3 &) |
void | set (Real x) |
void | set (Real x, Real y, Real z) |
void | set (const Real *data) |
void | setZero () |
void | setNegative (const Vector3 &) |
void | setCross (const Vector3 &, const Vector3 &) |
void | setNormalized (const Vector3 &) |
void | setProjection (const Vector3 &, const Vector3 &) |
void | setMinimum (const Vector3 &, const Vector3 &) |
void | setMinimum (const Vector3 &) |
void | setMaximum (const Vector3 &, const Vector3 &) |
void | setMaximum (const Vector3 &) |
void | get (Vector3 &) const |
void | get (Real &x, Real &y, Real &z) const |
void | get (Real data[3]) const |
void | getNegative (Vector3 &) const |
void | getNormalized (Vector3 &) const |
void | getOrthogonalBasis (Vector3 &yb, Vector3 &zb) const |
calculates two unit vectors orthogonal to this vector (and positively oriented) | |
void | inplaceNegative () |
void | inplaceMul (Real) |
void | inplaceDiv (Real) |
void | inplaceNormalize () |
bool | isZero (Real eps=Zero) const |
bool | isEqual (const Vector3 &, Real eps=Zero) const |
bool | Read (File &) |
bool | Write (File &) const |
A 3D point or infinite ray. Note: rays should be normalized unit vectors.