CSAD
 All Classes Namespaces Functions Variables Enumerations Enumerator Friends Groups Pages
Public Member Functions | Public Attributes | Friends | List of all members
bt::vector4d Class Reference

vector4d - four-dimensional double precision vector. More...

Public Member Functions

_FORCEINLINE vector4d ()
 The constructor does not set the initial values to the fields.
 
_FORCEINLINE vector4d (double _a)
 Конструктор, задает все параметры равными одному значению.
 
_FORCEINLINE vector4d (double _x, double _y, double _z, double _w)
 
_FORCEINLINE void combine (vector4d &a, vector4d &b, double c, double d)
 Scaling and addition of vectors by the formula a * c + b * d.
 
_FORCEINLINE double dot (vector4d &a)
 Dot product.
 
_FORCEINLINE void lerp (vector4d &a, vector4d &b, double c)
 The vector interpolation between a and b, с[0.0 .. 1.0].
 
_FORCEINLINE void neg ()
 The appeal of the sign of the vector.
 
_FORCEINLINE const vector4d norm ()
 Converts the vector to a unit length.
 
_FORCEINLINE void normalize ()
 Converts the vector to a unit length.
 
_FORCEINLINE const vector4d operator+ (const vector4d &a)
 Addition of vectors.
 
_FORCEINLINE const vector4doperator+= (const vector4d &a)
 Addition of vectors.
 
_FORCEINLINE const vector4d operator- (const vector4d &a)
 Subtraction of vectors.
 
_FORCEINLINE const vector4doperator-= (const vector4d &a)
 Subtraction of vectors.
 
_FORCEINLINE double & operator[] (unsigned int id) const
 Accessing parameters as array elements.
 
_FORCEINLINE void scale (double a)
 Scales the vector.
 
_FORCEINLINE double sqrLen ()
 Vector length squared.
 
_FORCEINLINE void zero ()
 Clears the vector.
 

Public Attributes

BT_API TYPEINFO_H
 Статический индентификатор типа vector4d::t()
 
double w
 Параметр оси W.
 
double x
 Параметр оси X.
 
double y
 Параметр оси Y.
 
double z
 Параметр оси Z.
 

Friends

_FORCEINLINE friend vector4d operator& (vector4d &a, vector4d &b)
 Cross product of the vectors, the vector is represented as 3D.
 
_FORCEINLINE friend vector4d operator* (vector4d &a, double &b)
 Scaling vector.
 
_FORCEINLINE friend vector4d operator* (double &b, vector4d &a)
 Scaling vector.
 
_FORCEINLINE friend vector4d operator* (vector4d &a, vector4d &b)
 Element-by-element multiplication of vectors.
 
_FORCEINLINE friend vector4d operator+ (vector4d &a, vector4d &b)
 Addition of vectors.
 
_FORCEINLINE friend vector4d operator+= (vector4d &a, vector4d &b)
 Addition of vectors.
 
_FORCEINLINE friend vector4d operator- (vector4d &a, vector4d &b)
 Subtraction of vectors.
 
_FORCEINLINE friend vector4d operator-= (vector4d &a, vector4d &b)
 Subtraction of vectors.
 
_FORCEINLINE friend vector4d operator/ (vector4d &a, vector4d &b)
 Element-by-element division of vectors.
 
_FORCEINLINE friend double operator| (vector4d &a, vector4d &b)
 Dot product of the vectors.
 

Detailed Description

vector4d - four-dimensional double precision vector.

See Also
vector4f, vector2f, vector2d, vector3f, vector3d, bt: math

Constructor & Destructor Documentation

_FORCEINLINE bt::vector4d::vector4d ( double  _x,
double  _y,
double  _z,
double  _w 
)
inline

Конструктор.

Parameters
_x- vector x
_y- vector y
_z- vector z
_w- vector w