Classes | Defines | Functions
btVector3.h File Reference
#include "btScalar.h"
#include "btMinMax.h"
Include dependency graph for btVector3.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  btVector3DoubleData
struct  btVector3FloatData
class  btVector4

Defines

#define btVector3Data   btVector3FloatData
#define btVector3DataName   "btVector3FloatData"

Functions

 ATTRIBUTE_ALIGNED16 (class) btVector3
 btVector3 can be used to represent 3D points and vectors. It has an un-used w component to suit 16-byte alignment when btVector3 is stored in containers. This extra component can be used by derived classes (Quaternion?) or by user Ideally, this class should be replaced by a platform optimized SIMD version that keeps the data in registers
SIMD_FORCE_INLINE btScalar btAngle (const btVector3 &v1, const btVector3 &v2)
 Return the angle between two vectors.
SIMD_FORCE_INLINE btVector3 btCross (const btVector3 &v1, const btVector3 &v2)
 Return the cross product of two vectors.
SIMD_FORCE_INLINE btScalar btDistance (const btVector3 &v1, const btVector3 &v2)
 Return the distance between two vectors.
SIMD_FORCE_INLINE btScalar btDistance2 (const btVector3 &v1, const btVector3 &v2)
 Return the distance squared between two vectors.
SIMD_FORCE_INLINE btScalar btDot (const btVector3 &v1, const btVector3 &v2)
 Return the dot product between two vectors.
SIMD_FORCE_INLINE void btPlaneSpace1 (const btVector3 &n, btVector3 &p, btVector3 &q)
SIMD_FORCE_INLINE void btSwapScalarEndian (const btScalar &sourceVal, btScalar &destVal)
 btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization
SIMD_FORCE_INLINE void btSwapVector3Endian (const btVector3 &sourceVec, btVector3 &destVec)
 btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization
SIMD_FORCE_INLINE btScalar btTriple (const btVector3 &v1, const btVector3 &v2, const btVector3 &v3)
SIMD_FORCE_INLINE void btUnSwapVector3Endian (btVector3 &vector)
 btUnSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization
SIMD_FORCE_INLINE btVector3 lerp (const btVector3 &v1, const btVector3 &v2, const btScalar &t)
 Return the linear interpolation between two vectors.
SIMD_FORCE_INLINE btVector3 operator* (const btVector3 &v1, const btVector3 &v2)
 Return the elementwise product of two vectors.
SIMD_FORCE_INLINE btVector3 operator* (const btVector3 &v, const btScalar &s)
 Return the vector scaled by s.
SIMD_FORCE_INLINE btVector3 operator* (const btScalar &s, const btVector3 &v)
 Return the vector scaled by s.
SIMD_FORCE_INLINE btVector3 operator+ (const btVector3 &v1, const btVector3 &v2)
 Return the sum of two vectors (Point symantics)
SIMD_FORCE_INLINE btVector3 operator- (const btVector3 &v1, const btVector3 &v2)
 Return the difference between two vectors.
SIMD_FORCE_INLINE btVector3 operator- (const btVector3 &v)
 Return the negative of the vector.
SIMD_FORCE_INLINE btVector3 operator/ (const btVector3 &v, const btScalar &s)
 Return the vector inversely scaled by s.
SIMD_FORCE_INLINE btVector3 operator/ (const btVector3 &v1, const btVector3 &v2)
 Return the vector inversely scaled by s.

Define Documentation

Definition at line 28 of file btVector3.h.

#define btVector3DataName   "btVector3FloatData"

Definition at line 29 of file btVector3.h.


Function Documentation

ATTRIBUTE_ALIGNED16 ( class  )

btVector3 can be used to represent 3D points and vectors. It has an un-used w component to suit 16-byte alignment when btVector3 is stored in containers. This extra component can be used by derived classes (Quaternion?) or by user Ideally, this class should be replaced by a platform optimized SIMD version that keeps the data in registers

No initialization constructor

Constructor from scalars

Parameters:
xX value
yY value
zZ value

Add a vector to this one

Parameters:
Thevector to add to this one

Subtract a vector from this one

Parameters:
Thevector to subtract

Scale the vector

Parameters:
sScale factor

Inversely scale the vector

Parameters:
sScale factor to divide by

Return the dot product

Parameters:
vThe other vector in the dot product

Return the length of the vector squared

Return the length of the vector

Return the distance squared between the ends of this and another vector This is symantically treating the vector like a point

Return the distance between the ends of this and another vector This is symantically treating the vector like a point

Normalize this vector x^2 + y^2 + z^2 = 1

Return a normalized version of this vector

Rotate this vector

Parameters:
wAxisThe axis to rotate about
angleThe angle to rotate by

Return the angle between this and another vector

Parameters:
vThe other vector

Return a vector will the absolute values of each element

Return the cross product between this and another vector

Parameters:
vThe other vector

Return the axis with the smallest value Note return values are 0,1,2 for x, y, or z

Return the axis with the largest value Note return values are 0,1,2 for x, y, or z

Return the linear interpolation between this and another vector

Parameters:
vThe other vector
tThe ration of this to v (t = 0 => return this, t=1 => return other)

Elementwise multiply this vector by the other

Parameters:
vThe other vector

Return the x value

Return the y value

Return the z value

Set the x value

Set the y value

Set the z value

Set the w value

Return the x value

Return the y value

Return the z value

Return the w value

operator btScalar*() replaces operator[], using implicit conversion. We added operator != and operator == to avoid pointer comparisons.

Set each element to the max of the current values and the values of another btVector3

Parameters:
otherThe other btVector3 to compare with

Set each element to the min of the current values and the values of another btVector3

Parameters:
otherThe other btVector3 to compare with

Definition at line 39 of file btVector3.h.

SIMD_FORCE_INLINE btScalar btAngle ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the angle between two vectors.

Definition at line 436 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 btCross ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the cross product of two vectors.

Definition at line 443 of file btVector3.h.

SIMD_FORCE_INLINE btScalar btDistance ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the distance between two vectors.

Definition at line 429 of file btVector3.h.

SIMD_FORCE_INLINE btScalar btDistance2 ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the distance squared between two vectors.

Definition at line 421 of file btVector3.h.

SIMD_FORCE_INLINE btScalar btDot ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the dot product between two vectors.

Definition at line 413 of file btVector3.h.

SIMD_FORCE_INLINE void btPlaneSpace1 ( const btVector3 &  n,
btVector3 &  p,
btVector3 &  q 
)

Definition at line 670 of file btVector3.h.

SIMD_FORCE_INLINE void btSwapScalarEndian ( const btScalar sourceVal,
btScalar destVal 
)

btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization

Definition at line 626 of file btVector3.h.

SIMD_FORCE_INLINE void btSwapVector3Endian ( const btVector3 &  sourceVec,
btVector3 &  destVec 
)

btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization

Definition at line 649 of file btVector3.h.

SIMD_FORCE_INLINE btScalar btTriple ( const btVector3 &  v1,
const btVector3 &  v2,
const btVector3 &  v3 
)

Definition at line 449 of file btVector3.h.

SIMD_FORCE_INLINE void btUnSwapVector3Endian ( btVector3 &  vector)

btUnSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization

Definition at line 659 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 lerp ( const btVector3 &  v1,
const btVector3 &  v2,
const btScalar t 
)

Return the linear interpolation between two vectors.

Parameters:
v1One vector
v2The other vector
tThe ration of this to v (t = 0 => return v1, t=1 => return v2)

Definition at line 459 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator* ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the elementwise product of two vectors.

Definition at line 364 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator* ( const btVector3 &  v,
const btScalar s 
)

Return the vector scaled by s.

Definition at line 384 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator* ( const btScalar s,
const btVector3 &  v 
)

Return the vector scaled by s.

Definition at line 391 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator+ ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the sum of two vectors (Point symantics)

Definition at line 357 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator- ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the difference between two vectors.

Definition at line 371 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator- ( const btVector3 &  v)

Return the negative of the vector.

Definition at line 377 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator/ ( const btVector3 &  v,
const btScalar s 
)

Return the vector inversely scaled by s.

Definition at line 398 of file btVector3.h.

SIMD_FORCE_INLINE btVector3 operator/ ( const btVector3 &  v1,
const btVector3 &  v2 
)

Return the vector inversely scaled by s.

Definition at line 406 of file btVector3.h.



tf2
Author(s): Tully Foote, Eitan Marder-Eppstein, Wim Meeussen
autogenerated on Mon Oct 6 2014 00:12:43