AI_TVector4SSE Class Reference
[Mathematics]
#include <AI_TVector4_sse.h>
Detailed Description
A AI_Vector4 class using SSE.(C) 2002 RadonLabs GmbH
Public Member Functions | |
AI_TVector4SSE () | |
constructor 1 | |
AI_TVector4SSE (const float _x, const float _y, const float _z, const float _w) | |
constructor 2 | |
AI_TVector4SSE (const AI_TVector4SSE &vec) | |
constructor 3 | |
void | set (const float _x, const float _y, const float _z, const float _w) |
set elements 1 | |
void | set (const AI_TVector4SSE &v) |
set elements 2 | |
float | len () const |
return length | |
void | norm () |
normalize | |
void | operator+= (const AI_TVector4SSE &v) |
inplace add | |
void | operator-= (const AI_TVector4SSE &v) |
inplace sub | |
void | operator *= (const float s) |
inplace scalar mul | |
bool | isequal (const AI_TVector4SSE &v, float tol) const |
fuzzy compare | |
int | compare (const AI_TVector4SSE &v, float tol) const |
fuzzy compare, return -1, 0, +1 | |
void | minimum (const AI_TVector4SSE &v) |
set own components to minimum | |
void | maximum (const AI_TVector4SSE &v) |
set own components to maximum | |
void | lerp (const AI_TVector4SSE &v0, float lerpVal) |
inplace linear interpolation | |
void | lerp (const AI_TVector4SSE &v0, const AI_TVector4SSE &v1, float lerpVal) |
linear interpolation between v0 and v1 | |
AI_TVector4SSE (const __m128 &m) | |
private constructor, takes _m128 | |
float | addhorizontal (const __m128 &a) |
add components | |
Public Attributes | |
union { | |
__m128 m128 | |
struct { | |
float x | |
float y | |
float z | |
float w | |
} | |
}; |
Constructor & Destructor Documentation
AI_TVector4SSE::AI_TVector4SSE | ( | ) | [inline] |
constructor 1
AI_TVector4SSE::AI_TVector4SSE | ( | const float | _x, | |
const float | _y, | |||
const float | _z, | |||
const float | _w | |||
) | [inline] |
constructor 2
AI_TVector4SSE::AI_TVector4SSE | ( | const AI_TVector4SSE & | vec | ) | [inline] |
constructor 3
AI_TVector4SSE::AI_TVector4SSE | ( | const __m128 & | m | ) | [inline] |
private constructor, takes _m128
Member Function Documentation
void AI_TVector4SSE::set | ( | const float | _x, | |
const float | _y, | |||
const float | _z, | |||
const float | _w | |||
) | [inline] |
set elements 1
void AI_TVector4SSE::set | ( | const AI_TVector4SSE & | v | ) | [inline] |
set elements 2
float AI_TVector4SSE::len | ( | void | ) | const [inline] |
return length
void AI_TVector4SSE::norm | ( | void | ) | [inline] |
normalize
void AI_TVector4SSE::operator+= | ( | const AI_TVector4SSE & | v | ) | [inline] |
inplace add
void AI_TVector4SSE::operator-= | ( | const AI_TVector4SSE & | v | ) | [inline] |
inplace sub
void AI_TVector4SSE::operator *= | ( | const float | s | ) | [inline] |
inplace scalar mul
bool AI_TVector4SSE::isequal | ( | const AI_TVector4SSE & | v, | |
float | tol | |||
) | const [inline] |
fuzzy compare
int AI_TVector4SSE::compare | ( | const AI_TVector4SSE & | v, | |
float | tol | |||
) | const [inline] |
fuzzy compare, return -1, 0, +1
void AI_TVector4SSE::minimum | ( | const AI_TVector4SSE & | v | ) | [inline] |
set own components to minimum
void AI_TVector4SSE::maximum | ( | const AI_TVector4SSE & | v | ) | [inline] |
set own components to maximum
void AI_TVector4SSE::lerp | ( | const AI_TVector4SSE & | v0, | |
float | lerpVal | |||
) | [inline] |
inplace linear interpolation
void AI_TVector4SSE::lerp | ( | const AI_TVector4SSE & | v0, | |
const AI_TVector4SSE & | v1, | |||
float | lerpVal | |||
) | [inline] |
linear interpolation between v0 and v1
float AI_TVector4SSE::addhorizontal | ( | const __m128 & | a | ) |
add components
Member Data Documentation
__m128 AI_TVector4SSE::m128 |
float AI_TVector4SSE::x |
float AI_TVector4SSE::y |
float AI_TVector4SSE::z |
float AI_TVector4SSE::w |
union { ... } |
The documentation for this class was generated from the following file: