Public Types | |
typedef double | value_type |
Type of Vec class. | |
enum | { num_components = 4 } |
Number of vector components. More... | |
Public Member Functions | |
Vec4d () | |
Vec4d (value_type x, value_type y, value_type z, value_type w) | |
Vec4d (const Vec3d &v3, value_type w) | |
Vec4d (const Vec4f &vec) | |
operator Vec4f () const | |
bool | operator== (const Vec4d &v) const |
bool | operator!= (const Vec4d &v) const |
bool | operator< (const Vec4d &v) const |
value_type * | ptr () |
const value_type * | ptr () const |
void | set (value_type x, value_type y, value_type z, value_type w) |
value_type & | operator[] (unsigned int i) |
value_type | operator[] (unsigned int i) const |
value_type & | x () |
value_type & | y () |
value_type & | z () |
value_type & | w () |
value_type | x () const |
value_type | y () const |
value_type | z () const |
value_type | w () const |
value_type & | r () |
value_type & | g () |
value_type & | b () |
value_type & | a () |
value_type | r () const |
value_type | g () const |
value_type | b () const |
value_type | a () const |
unsigned long | asABGR () const |
unsigned long | asRGBA () const |
bool | valid () const |
bool | isNaN () const |
value_type | operator * (const Vec4d &rhs) const |
Dot product. | |
Vec4d | operator * (value_type rhs) const |
Multiply by scalar. | |
Vec4d & | operator *= (value_type rhs) |
Unary multiply by scalar. | |
Vec4d | operator/ (value_type rhs) const |
Divide by scalar. | |
Vec4d & | operator/= (value_type rhs) |
Unary divide by scalar. | |
Vec4d | operator+ (const Vec4d &rhs) const |
Binary vector add. | |
Vec4d & | operator+= (const Vec4d &rhs) |
Unary vector add. | |
Vec4d | operator- (const Vec4d &rhs) const |
Binary vector subtract. | |
Vec4d & | operator-= (const Vec4d &rhs) |
Unary vector subtract. | |
const Vec4d | operator- () const |
Negation operator. | |
value_type | length () const |
Length of the vector = sqrt( vec . | |
value_type | length2 () const |
Length squared of the vector = vec . | |
value_type | normalize () |
Normalize the vector so that it has length unity. | |
Public Attributes | |
value_type | _v [4] |
Vec member varaible. |
Uses include representation of color coordinates. No support yet added for double * Vec4d - is it necessary? Need to define a non-member non-friend operator* etc. Vec4d * double is okay
|
Type of Vec class.
|
|
Number of vector components.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Length of the vector = sqrt( vec . vec ) |
|
Length squared of the vector = vec . vec |
|
Normalize the vector so that it has length unity. Returns the previous length of the vector. |
|
Multiply by scalar.
|
|
Dot product.
|
|
Unary multiply by scalar.
|
|
|
|
|
|
Binary vector add.
|
|
Unary vector add. Slightly more efficient because no temporary intermediate object. |
|
Negation operator. Returns the negative of the Vec4d. |
|
Binary vector subtract.
|
|
Unary vector subtract.
|
|
Divide by scalar.
|
|
Unary divide by scalar.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Vec member varaible.
|