Public Member Functions | Public Attributes | List of all members
PxVec4 Class Reference

4 Element vector class. More...

#include <PxVec4.h>

Public Member Functions

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

Public Attributes

PxReal x
 
PxReal y
 
PxReal z
 
PxReal w
 

Detailed Description

4 Element vector class.

This is a 4-dimensional vector class with public data members.

Constructor & Destructor Documentation

PX_CUDA_CALLABLE PX_INLINE PxVec4::PxVec4 ( )
inline

default constructor leaves data uninitialized.

PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec4::PxVec4 ( PxZERO  r)
inline

zero constructor.

References PX_UNUSED().

PX_CUDA_CALLABLE PX_INLINE PxVec4::PxVec4 ( PxReal  a)
inlineexplicit

Assigns scalar parameter to all elements.

Useful to initialize to zero or one.

Parameters
[in]aValue to assign to elements.
PX_CUDA_CALLABLE PX_INLINE PxVec4::PxVec4 ( PxReal  nx,
PxReal  ny,
PxReal  nz,
PxReal  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.
PX_CUDA_CALLABLE PX_INLINE PxVec4::PxVec4 ( const PxVec3 v,
PxReal  nw 
)
inline

Initializes from 3 scalar parameters.

Parameters
[in]vValue to initialize the X, Y, and Z components.
[in]nwValue to initialize W component.
PX_CUDA_CALLABLE PX_INLINE PxVec4::PxVec4 ( const PxReal  v[])
inlineexplicit

Initializes from an array of scalar parameters.

Parameters
[in]vValue to initialize with.
PX_CUDA_CALLABLE PX_INLINE PxVec4::PxVec4 ( const PxVec4 v)
inline

Copy ctor.

Member Function Documentation

PX_CUDA_CALLABLE PX_INLINE PxReal PxVec4::dot ( const PxVec4 v) const
inline

returns the scalar product of this and other.

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::getNormalized ( ) const
inline

return a unit vector

References PxRecipSqrt().

PX_CUDA_CALLABLE PX_INLINE PxVec3 PxVec4::getXYZ ( ) const
inline
PX_CUDA_CALLABLE PX_INLINE bool PxVec4::isFinite ( ) const
inline

returns true if all 3 elems of the vector are finite (not NAN or INF, etc.)

References PxIsFinite().

PX_CUDA_CALLABLE PX_INLINE bool PxVec4::isNormalized ( ) const
inline

is normalized - used by API parameter validation

References PxAbs().

PX_CUDA_CALLABLE PX_INLINE bool PxVec4::isZero ( ) const
inline

tests for exact zero vector

PX_CUDA_CALLABLE PX_INLINE PxReal PxVec4::magnitude ( ) const
inline

returns the magnitude

References PxSqrt().

PX_CUDA_CALLABLE PX_INLINE PxReal PxVec4::magnitudeSquared ( ) const
inline

returns the squared magnitude

Avoids calling PxSqrt()!

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::maximum ( const PxVec4 v) const
inline

element-wise maximum

References PxMax(), w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::minimum ( const PxVec4 v) const
inline

element-wise minimum

References PxMin(), w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::multiply ( const PxVec4 a) const
inline

a[i] * b[i], for all i.

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxReal PxVec4::normalize ( )
inline

normalizes the vector in place

PX_CUDA_CALLABLE PX_INLINE bool PxVec4::operator!= ( const PxVec4 v) const
inline

returns true if the two vectors are not exactly equal.

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::operator* ( PxReal  f) const
inline

scalar post-multiplication

PX_CUDA_CALLABLE PX_INLINE PxVec4& PxVec4::operator*= ( PxReal  f)
inline

scalar multiplication

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::operator+ ( const PxVec4 v) const
inline

vector addition

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4& PxVec4::operator+= ( const PxVec4 v)
inline

vector addition

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::operator- ( ) const
inline

negation

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::operator- ( const PxVec4 v) const
inline

vector difference

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4& PxVec4::operator-= ( const PxVec4 v)
inline

vector difference

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE PxVec4 PxVec4::operator/ ( PxReal  f) const
inline

scalar division

PX_CUDA_CALLABLE PX_INLINE PxVec4& PxVec4::operator/= ( PxReal  f)
inline

scalar division

PX_CUDA_CALLABLE PX_INLINE PxVec4& PxVec4::operator= ( const PxVec4 p)
inline

Assignment operator.

References w, x, y, and z.

PX_CUDA_CALLABLE PX_INLINE bool PxVec4::operator== ( const PxVec4 v) const
inline

returns true if the two vectors are exactly equal.

References w, x, y, and z.

PX_DEPRECATED PX_CUDA_CALLABLE PX_INLINE PxReal& PxVec4::operator[] ( int  index)
inline

element access

References PX_ASSERT.

PX_CUDA_CALLABLE PX_INLINE PxReal& PxVec4::operator[] ( unsigned int  index)
inline

element access

References PX_ASSERT.

PX_DEPRECATED PX_CUDA_CALLABLE PX_INLINE const PxReal& PxVec4::operator[] ( int  index) const
inline

element access

References PX_ASSERT.

PX_CUDA_CALLABLE PX_INLINE const PxReal& PxVec4::operator[] ( unsigned int  index) const
inline

element access

References PX_ASSERT.

PX_CUDA_CALLABLE PX_INLINE void PxVec4::setZero ( )
inline

set vector elements to zero

Member Data Documentation

PxReal PxVec4::w
PxReal PxVec4::x
PxReal PxVec4::y
PxReal PxVec4::z

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


Copyright © 2008-2015 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com