vec4 Struct (C++)
Vector of 4 float components.
To use this structure, include the UnigineMathLib.h file.
Unigine::vec4Structure
Members
UNIGINE_DECLARE_USE_MEMORY UNIGINE_INLINE vec4 ()
Default constructor that produces a zero vector.UNIGINE_INLINE vec4 (const vec4 & v)
Initialization by a vector.Arguments
- const vec4 & v - The value of the vector.
UNIGINE_INLINE vec4 (const vec2 & v, float z, float w)
Initialization by a vector and two scalars.Arguments
- const vec2 & v - The value of the vector.
- float z - Z component of the vector.
- float w - W component of the vector.
UNIGINE_INLINE vec4 (const vec3 & v, float w)
Initialization by a vector and a scalar.Arguments
- const vec3 & v - The value of the vector.
- float w - W component of the vector.
UNIGINE_INLINE vec4 (float x, float y, float z, float w)
Initialization by scalars.Arguments
- float x - X component of the vector.
- float y - Y component of the vector.
- float z - Z component of the vector.
- float w - W component of the vector.
explicit UNIGINE_INLINE vec4 (float v)
Initialization by a scalar.Arguments
- float v - The value of the scalar.
explicit UNIGINE_INLINE vec4 (const vec2 & v)
Initialization by a two component vector: x=v.x, y=v.y, z=0.0f, w=1.0f.Arguments
- const vec2 & v - The value of the vector.
explicit UNIGINE_INLINE vec4 (const vec3 & v)
Initialization by a three component vector: x=v.x, y=v.y, z=v.z, w=1.0f.Arguments
- const vec3 & v - The value of the vector.
explicit UNIGINE_INLINE vec4 (const dvec4 & v)
Initialization by a vector of double components.Arguments
- const dvec4 & v - The value of the vector.
explicit UNIGINE_INLINE vec4 (const ivec4 & v)
Initialization by a vector of integer components.Arguments
- const ivec4 & v - The value of the vector.
explicit UNIGINE_INLINE vec4 (const bvec4 & v)
Initialization by a vector of byte components.Arguments
- const bvec4 & v - The value of the vector.
explicit UNIGINE_INLINE vec4 (const float * v)
Initialization by a pointer to the vector.Arguments
- const float * v - Pointer to the vector.
UNIGINE_INLINE vec4 operator- () const
Vector negation.Return value
The resulting vector.UNIGINE_INLINE vec4 & operator*= (float v)
Scalar multiplication.Arguments
- float v - The value of the scalar.
Return value
The resulting vector.UNIGINE_INLINE vec4 & operator*= (const vec4 & v)
Vector multiplication.Arguments
- const vec4 & v - The value of the vector.
Return value
The resulting vector.UNIGINE_INLINE vec4 & operator+= (const vec4 & v)
Vector addition.Arguments
- const vec4 & v - The value of the vector.
Return value
The resulting vector.UNIGINE_INLINE vec4 & operator-= (const vec4 & v)
Vector subtraction.Arguments
- const vec4 & v - The value of the vector.
Return value
The resulting vector.UNIGINE_INLINE float & operator[] (int i)
Array access.Arguments
- int i - Array item index.
Return value
The array item.UNIGINE_INLINE float operator[] (int i) const
Constant array access.Arguments
- int i - Array item index.
Return value
The array item.UNIGINE_INLINE void set (float x_, float y_, float z_, float w_)
Set vector.Arguments
- float x_ - X component of the vector.
- float y_ - Y component of the vector.
- float z_ - Z component of the vector.
- float w_ - W component of the vector.
UNIGINE_INLINE void set (const float * v)
Set vector.Arguments
- const float * v - Pointer to the vector.
UNIGINE_INLINE void get (float * v) const
Get vector.Arguments
- float * v - Pointer to the vector.
UNIGINE_INLINE float * get ()
Get a pointer to the vector.Return value
Pointer to the vector.UNIGINE_INLINE const float * get () const
Get a constant pointer to the vector.Return value
Pointer to the vector.Unigine::vec4::Union
union {
struct
{
float x;
float y;
float z;
float w;
};
float v[4];
};
Last update: 2017-07-03
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)