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

vector3f - three-dimensional vector with single precision. More...

Public Member Functions

_FORCEINLINE vector3f ()
 The constructor does not set the initial values to the fields.
 
_FORCEINLINE vector3f (float a)
 Constructor, sets all parameters equal to one value.
 
_FORCEINLINE vector3f (float _x, float _y, float _z)
 
_FORCEINLINE vector3f (vector3i &_a)
 Converting the integer vector in floating-point format.
 
_FORCEINLINE void abs ()
 Transforms itself in the absolute value of the vector.
 
_FORCEINLINE void add (vector3f &a, vector3f &b)
 Addition of vectors.
 
_FORCEINLINE float angle (vector3d &b)
 The angle between the vectors.
 
_FORCEINLINE void combine (vector3f &a, vector3f &b, float c, float d)
 Scaling and addition of vectors by the formula a * c + b * d.
 
_FORCEINLINE vector3f cross (vector3f &a)
 Cross product.
 
_FORCEINLINE void cross (vector3f &a, vector3f &b)
 Cross product.
 
_FORCEINLINE float dot (vector3f &a)
 Dot product.
 
_FORCEINLINE void lerp (vector3f &a, vector3f &b, float 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 vector3f norm ()
 Converts the vector to a unit length.
 
_FORCEINLINE void normalize ()
 Scales the vector to a unit length.
 
_FORCEINLINE const vector3f operator* (const float &b)
 Scaling vector.
 
_FORCEINLINE const vector3f operator* (const quaternionf &b)
 Transforming a vector by a quaternion.
 
_FORCEINLINE const vector3f operator* (const vector3f &a)
 Element-by-element multiplication of vectors.
 
_FORCEINLINE const vector3f operator*= (const float &b)
 Scaling vector.
 
_FORCEINLINE const vector3f operator*= (float &b)
 Scaling vector.
 
_FORCEINLINE const vector3f operator+ (const vector3f &a)
 Addition of vectors.
 
_FORCEINLINE const vector3foperator+= (const vector3f &a)
 Addition of vectors.
 
_FORCEINLINE const vector3f operator- (const vector3f &a)
 Subtraction of vectors.
 
_FORCEINLINE const vector3foperator-= (const vector3f &a)
 Subtraction of vectors.
 
_FORCEINLINE const vector3f operator/ (const vector3f &a)
 Element-by-element division of vectors.
 
_FORCEINLINE float & operator[] (unsigned int id) const
 Field reference as to the elements of the array.
 
_FORCEINLINE const float operator| (vector3f &a)
 Dot product of the vectors.
 
_FORCEINLINE void reflect (vector3f &a)
 The reflection vector.
 
_FORCEINLINE void scale (float a)
 Scales the vector.
 
_FORCEINLINE float sqrLen ()
 Vector length squared.
 
_FORCEINLINE void sub (vector3f &a, vector3f &b)
 Subtraction of vectors.
 
_FORCEINLINE void zero ()
 Sets the value of the fields to zero.
 

Public Attributes

BT_API TYPEINFO_H
 Static identifier type vector3f::t()
 
float x
 Параметр оси X.
 
float y
 Параметр оси Y.
 
float z
 Параметр оси Z.
 

Friends

_FORCEINLINE friend vector3f operator& (const vector3f &a, const vector3f &b)
 Cross product of the vectors.
 
_FORCEINLINE friend vector3f operator* (const vector3f &a, const float &b)
 Scaling vector.
 
_FORCEINLINE friend vector3f operator* (const float &b, const vector3f &a)
 Scaling vector.
 
_FORCEINLINE friend vector3f operator* (vector3f &a, float &b)
 Scaling vector.
 
_FORCEINLINE friend vector3f operator* (float &b, vector3f &a)
 Scaling vector.
 
_FORCEINLINE friend vector3f operator* (const vector3f &a, const quaternionf &b)
 Transforming a vector by a quaternion.
 
_FORCEINLINE friend vector3f operator* (vector3f &a, vector3f &b)
 Element-by-element multiplication of vectors.
 
_FORCEINLINE friend vector3f operator+ (const vector3f &a, const vector3f &b)
 Addition of vectors.
 
_FORCEINLINE friend vector3f operator+ (vector3f &a, vector3f &b)
 Addition of vectors.
 
_FORCEINLINE friend vector3foperator+= (vector3f &a, vector3f &b)
 Addition of vectors.
 
_FORCEINLINE friend vector3f operator- (const vector3f &a, const vector3f &b)
 Subtraction of vectors.
 
_FORCEINLINE friend vector3f operator- (vector3f &a, vector3f &b)
 Subtraction of vectors.
 
_FORCEINLINE friend vector3foperator-= (vector3f &a, vector3f &b)
 Subtraction of vectors.
 
_FORCEINLINE friend vector3f operator/ (vector3f &a, vector3f &b)
 Element-by-element division of vectors.
 
_FORCEINLINE friend float operator| (vector3f &a, vector3f &b)
 Dot product of the vectors.
 

Detailed Description

vector3f - three-dimensional vector with single precision.

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

Constructor & Destructor Documentation

_FORCEINLINE bt::vector3f::vector3f ( float  _x,
float  _y,
float  _z 
)
inline
Parameters
_x- vector x
_y- vector y
_z- vector z