AI_TVector3SSE Class Reference
[Mathematics]
#include <AI_TVector3_sse.h>
Detailed Description
SSE based AI_Vector3 class.(C) 2002 RadonLabs GmbH
| Public Member Functions | |
| AI_TVector3SSE () | |
| constructor 1 | |
| AI_TVector3SSE (const float _x, const float _y, const float _z) | |
| constructor 2 | |
| AI_TVector3SSE (const AI_TVector3SSE &vec) | |
| constructor 3 | |
| AI_TVector3SSE (const float *p) | |
| constructor 4 | |
| AI_TVector3SSE (const __m128 &m) | |
| private constructor | |
| void | set (const float _x, const float _y, const float _z) | 
| set elements 1 | |
| void | set (const AI_TVector3SSE &vec) | 
| set elements 2 | |
| void | set (const float *p) | 
| set elements 3 | |
| float | len () const | 
| return length | |
| float | lensquared () const | 
| return length squared | |
| void | norm () | 
| normalize | |
| void | operator+= (const AI_TVector3SSE &v0) | 
| inplace add | |
| void | operator-= (const AI_TVector3SSE &v0) | 
| inplace sub | |
| void | operator *= (float s) | 
| inplace scalar multiplication | |
| bool | isequal (const AI_TVector3SSE &v, float tol) const | 
| fuzzy compare | |
| int | compare (const AI_TVector3SSE &v, float tol) const | 
| fuzzy compare, returns -1, 0, +1 | |
| void | rotate (const AI_TVector3SSE &axis, float angle) | 
| rotate around axis | |
| void | lerp (const AI_TVector3SSE &v0, float lerpVal) | 
| inplace linear interpolation | |
| void | lerp (const AI_TVector3SSE &v0, const AI_TVector3SSE &v1, float lerpVal) | 
| linear interpolation between v0 and v1 | |
| AI_TVector3SSE | findortho () const | 
| returns a vector orthogonal to self, not normalized | |
| Public Attributes | |
| union { | |
| __m128 m128 | |
| struct { | |
| float x | |
| float y | |
| float z | |
| float pad | |
| } | |
| }; | |
Constructor & Destructor Documentation
| AI_TVector3SSE::AI_TVector3SSE | ( | ) |  [inline] | 
constructor 1
| AI_TVector3SSE::AI_TVector3SSE | ( | const float | _x, | |
| const float | _y, | |||
| const float | _z | |||
| ) |  [inline] | 
constructor 2
| AI_TVector3SSE::AI_TVector3SSE | ( | const AI_TVector3SSE & | vec | ) |  [inline] | 
constructor 3
| AI_TVector3SSE::AI_TVector3SSE | ( | const float * | p | ) | 
constructor 4
| AI_TVector3SSE::AI_TVector3SSE | ( | const __m128 & | m | ) |  [inline] | 
private constructor
Member Function Documentation
| void AI_TVector3SSE::set | ( | const float | _x, | |
| const float | _y, | |||
| const float | _z | |||
| ) |  [inline] | 
set elements 1
| void AI_TVector3SSE::set | ( | const AI_TVector3SSE & | vec | ) |  [inline] | 
set elements 2
| void AI_TVector3SSE::set | ( | const float * | p | ) | 
set elements 3
| float AI_TVector3SSE::len | ( | void | ) | const  [inline] | 
return length
| float AI_TVector3SSE::lensquared | ( | ) | const  [inline] | 
return length squared
| void AI_TVector3SSE::norm | ( | void | ) |  [inline] | 
normalize
| void AI_TVector3SSE::operator+= | ( | const AI_TVector3SSE & | v0 | ) |  [inline] | 
inplace add
| void AI_TVector3SSE::operator-= | ( | const AI_TVector3SSE & | v0 | ) |  [inline] | 
inplace sub
| void AI_TVector3SSE::operator *= | ( | float | s | ) |  [inline] | 
inplace scalar multiplication
| bool AI_TVector3SSE::isequal | ( | const AI_TVector3SSE & | v, | |
| float | tol | |||
| ) | const  [inline] | 
fuzzy compare
| int AI_TVector3SSE::compare | ( | const AI_TVector3SSE & | v, | |
| float | tol | |||
| ) | const  [inline] | 
fuzzy compare, returns -1, 0, +1
| void AI_TVector3SSE::rotate | ( | const AI_TVector3SSE & | axis, | |
| float | angle | |||
| ) |  [inline] | 
rotate around axis
| void AI_TVector3SSE::lerp | ( | const AI_TVector3SSE & | v0, | |
| float | lerpVal | |||
| ) |  [inline] | 
inplace linear interpolation
| void AI_TVector3SSE::lerp | ( | const AI_TVector3SSE & | v0, | |
| const AI_TVector3SSE & | v1, | |||
| float | lerpVal | |||
| ) |  [inline] | 
linear interpolation between v0 and v1
| AI_TVector3SSE AI_TVector3SSE::findortho | ( | ) | const  [inline] | 
returns a vector orthogonal to self, not normalized
Find a vector that is orthogonal to self. Self should not be (0,0,0). Return value is not normalized.
Member Data Documentation
| __m128 AI_TVector3SSE::m128 | 
| float AI_TVector3SSE::x | 
| float AI_TVector3SSE::y | 
| float AI_TVector3SSE::z | 
| float AI_TVector3SSE::pad | 
| union { ... } | 
The documentation for this class was generated from the following file:
