RavEngine
Loading...
Searching...
No Matches
physx::PxVec4T< Type > Class Template Reference

Public Member Functions

PX_CUDA_CALLABLE PX_INLINE PxVec4T ()
 default constructor leaves data uninitialized.
 
PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec4T (PxZERO)
 zero constructor.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T (Type a)
 Assigns scalar parameter to all elements.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T (Type nx, Type ny, Type nz, Type nw)
 Initializes from 3 scalar parameters.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T (const PxVec3T< Type > &v, Type nw)
 Initializes from 3 scalar parameters.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T (const Type v[])
 Initializes from an array of scalar parameters.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T (const PxVec4T &v)
 Copy ctor.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T & operator= (const PxVec4T &p)
 Assignment operator.
 
PX_CUDA_CALLABLE PX_INLINE Type & operator[] (unsigned int index)
 element access
 
PX_CUDA_CALLABLE PX_INLINE const Type & operator[] (unsigned int index) const
 element access
 
PX_CUDA_CALLABLE PX_INLINE bool operator== (const PxVec4T &v) const
 returns true if the two vectors are exactly equal.
 
PX_CUDA_CALLABLE PX_INLINE bool operator!= (const PxVec4T &v) const
 returns true if the two vectors are not exactly equal.
 
PX_CUDA_CALLABLE PX_INLINE bool isZero () const
 tests for exact zero vector
 
PX_CUDA_CALLABLE PX_INLINE bool isFinite () const
 returns true if all 3 elems of the vector are finite (not NAN or INF, etc.)
 
PX_CUDA_CALLABLE PX_INLINE bool isNormalized () const
 is normalized - used by API parameter validation
 
PX_CUDA_CALLABLE PX_INLINE Type magnitudeSquared () const
 returns the squared magnitude
 
PX_CUDA_CALLABLE PX_INLINE Type magnitude () const
 returns the magnitude
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T operator- () const
 negation
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T operator+ (const PxVec4T &v) const
 vector addition
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T operator- (const PxVec4T &v) const
 vector difference
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T operator* (Type f) const
 scalar post-multiplication
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T operator/ (Type f) const
 scalar division
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T & operator+= (const PxVec4T &v)
 vector addition
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T & operator-= (const PxVec4T &v)
 vector difference
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T & operator*= (Type f)
 scalar multiplication
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T & operator/= (Type f)
 scalar division
 
PX_CUDA_CALLABLE PX_INLINE Type dot (const PxVec4T &v) const
 returns the scalar product of this and other.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T getNormalized () const
 
PX_CUDA_CALLABLE PX_INLINE Type normalize ()
 normalizes the vector in place
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T multiply (const PxVec4T &a) const
 a[i] * b[i], for all i.
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T minimum (const PxVec4T &v) const
 element-wise minimum
 
PX_CUDA_CALLABLE PX_INLINE PxVec4T maximum (const PxVec4T &v) const
 element-wise maximum
 
PX_CUDA_CALLABLE PX_INLINE PxVec3T< Type > getXYZ () const
 

Public Attributes

Type x
 
Type y
 
Type z
 
Type w
 

Constructor & Destructor Documentation

◆ PxVec4T() [1/4]

template<class Type >
PX_CUDA_CALLABLE PX_INLINE physx::PxVec4T< Type >::PxVec4T ( Type  a)
inlineexplicit

Assigns scalar parameter to all elements.

Useful to initialize to zero or one.

Parameters
[in]aValue to assign to elements.

◆ PxVec4T() [2/4]

template<class Type >
PX_CUDA_CALLABLE PX_INLINE physx::PxVec4T< Type >::PxVec4T ( Type  nx,
Type  ny,
Type  nz,
Type  nw 
)
inline

Initializes from 3 scalar parameters.

Parameters
[in]nxValue to initialize X component.
[in]nyValue to initialize Y component.
[in]nzValue to initialize Z component.
[in]nwValue to initialize W component.

◆ PxVec4T() [3/4]

template<class Type >
PX_CUDA_CALLABLE PX_INLINE physx::PxVec4T< Type >::PxVec4T ( const PxVec3T< Type > &  v,
Type  nw 
)
inline

Initializes from 3 scalar parameters.

Parameters
[in]vValue to initialize the X, Y, and Z components.
[in]nwValue to initialize W component.

◆ PxVec4T() [4/4]

template<class Type >
PX_CUDA_CALLABLE PX_INLINE physx::PxVec4T< Type >::PxVec4T ( const Type  v[])
inlineexplicit

Initializes from an array of scalar parameters.

Parameters
[in]vValue to initialize with.

Member Function Documentation

◆ getNormalized()

template<class Type >
PX_CUDA_CALLABLE PX_INLINE PxVec4T physx::PxVec4T< Type >::getNormalized ( ) const
inline

returns a unit vector

◆ magnitudeSquared()

template<class Type >
PX_CUDA_CALLABLE PX_INLINE Type physx::PxVec4T< Type >::magnitudeSquared ( ) const
inline

returns the squared magnitude

Avoids calling PxSqrt()!


The documentation for this class was generated from the following files: