VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Attributes | Friends
makVrv::DtFxCollisionObject Class Reference

replaces the PPlane object /ingroup vrvFx More...

Inheritance diagram for makVrv::DtFxCollisionObject:
Inheritance graph
[legend]

Public Types

enum  ObjectType { Plane, Sphere, Ellipsoid }
 

Public Member Functions

 DtFxCollisionObject ()
 CTOR constructs a force. More...
 
virtual ~DtFxCollisionObject ()
 DTOR destroys a force. More...
 
virtual void setPosition (double x, double y, double z)
 sets the position of the object More...
 
virtual void setRadius (float radius)
 turns object into sphere More...
 
virtual void setRadius (float radius_x, float radius_y, float radius_z)
 turns object into ellipsoid More...
 
virtual void setRotation (float angle, float x, float y, float z)
 quat representation of rotation More...
 
virtual void collide (const bdiFarPosition &system_pos, const bdiVec3f &planeNormal, float quantum, DtFxParticle *pParticle) const
 collides a particle with an object. More...
 
virtual void render_into_vbo (const bdiFarPosition &eyePoint, const bdiMat4f &geocentricMat, bdiVec3fArray &verts, bdiVec4fArray &colors) const
 debug rendering More...
 
const bdiMat4f & geocentricMatrix () const
 current geocentric matrix More...
 
bool globalObject () const
 is this a global collision object (usually true if not a collision plane) More...
 
void setGlobalObject (bool global)
 sets this to be a global object More...
 
void setObjectType (int val)
 sets the object type More...
 
int objectType () const
 gets the object type More...
 
virtual void read_cfg_line (bdiCfgEntryLine *cfg_entry_line)
 reads the description from a config entry More...
 
virtual bdiCfgEntryLine * create_cfg_line ()
 writes the description into line More...
 
virtual bdiCfgEntry * create_cfg_entry ()
 
virtual void read_cfg_entry (bdiCfgEntry *entry)
 
const bdiFarPosition & point () const
 center of object or plane More...
 
float radius () const
 sphere radius for bounds check More...
 
const bdiVec3f & normal () const
 plane normal More...
 
- Public Member Functions inherited from makVrv::DtFxCollisionVolumeInterface
virtual ~DtFxCollisionVolumeInterface ()
 DTOR. More...
 

Protected Attributes

bool m_global_object
 
int m_object_type
 
bdiVec3f m_normal
 The plane's normal. More...
 
bdiFarPosition m_point
 A coplanar point within the plane, or center of object. More...
 
float m_radius
 sphere size More...
 
bdiVec3f m_ellipsoid_radius
 ellipsoid size More...
 
bdiVec4f m_quat
 results of set rotation More...
 
float m_bounce_factor
 Coefficient of restitution (or how bouncy the plane is) More...
 
int m_collision_behavior
 
bdiMat4f myGeocentricMatrix
 
bdiMat4f myQuatMatrix
 
bdiMat4f myQuatMatrixInv
 

Friends

class bdiQPropTreeItemCollisionObject
 allows the UI to edit all the various parameters More...
 

Detailed Description

replaces the PPlane object /ingroup vrvFx

Member Enumeration Documentation

Enumerator
Plane 
Sphere 
Ellipsoid 

Constructor & Destructor Documentation

makVrv::DtFxCollisionObject::DtFxCollisionObject ( )

CTOR constructs a force.

virtual makVrv::DtFxCollisionObject::~DtFxCollisionObject ( )
inlinevirtual

DTOR destroys a force.

Member Function Documentation

virtual void makVrv::DtFxCollisionObject::setPosition ( double  x,
double  y,
double  z 
)
virtual

sets the position of the object

Implements makVrv::DtFxCollisionVolumeInterface.

virtual void makVrv::DtFxCollisionObject::setRadius ( float  radius)
virtual

turns object into sphere

Implements makVrv::DtFxCollisionVolumeInterface.

virtual void makVrv::DtFxCollisionObject::setRadius ( float  radius_x,
float  radius_y,
float  radius_z 
)
virtual

turns object into ellipsoid

Implements makVrv::DtFxCollisionVolumeInterface.

virtual void makVrv::DtFxCollisionObject::setRotation ( float  angle,
float  x,
float  y,
float  z 
)
virtual

quat representation of rotation

Implements makVrv::DtFxCollisionVolumeInterface.

virtual void makVrv::DtFxCollisionObject::collide ( const bdiFarPosition &  system_pos,
const bdiVec3f &  planeNormal,
float  quantum,
DtFxParticle pParticle 
) const
virtual

collides a particle with an object.

virtual void makVrv::DtFxCollisionObject::render_into_vbo ( const bdiFarPosition &  eyePoint,
const bdiMat4f &  geocentricMat,
bdiVec3fArray &  verts,
bdiVec4fArray &  colors 
) const
virtual

debug rendering

const bdiMat4f& makVrv::DtFxCollisionObject::geocentricMatrix ( ) const
inline

current geocentric matrix

bool makVrv::DtFxCollisionObject::globalObject ( ) const
inline

is this a global collision object (usually true if not a collision plane)

void makVrv::DtFxCollisionObject::setGlobalObject ( bool  global)
inline

sets this to be a global object

void makVrv::DtFxCollisionObject::setObjectType ( int  val)
inline

sets the object type

int makVrv::DtFxCollisionObject::objectType ( ) const
inline

gets the object type

virtual void makVrv::DtFxCollisionObject::read_cfg_line ( bdiCfgEntryLine *  cfg_entry_line)
virtual

reads the description from a config entry

virtual bdiCfgEntryLine* makVrv::DtFxCollisionObject::create_cfg_line ( )
virtual

writes the description into line

virtual bdiCfgEntry* makVrv::DtFxCollisionObject::create_cfg_entry ( )
virtual
virtual void makVrv::DtFxCollisionObject::read_cfg_entry ( bdiCfgEntry *  entry)
virtual
const bdiFarPosition& makVrv::DtFxCollisionObject::point ( ) const
inline

center of object or plane

float makVrv::DtFxCollisionObject::radius ( ) const
inline

sphere radius for bounds check

const bdiVec3f& makVrv::DtFxCollisionObject::normal ( ) const
inline

plane normal

Friends And Related Function Documentation

friend class bdiQPropTreeItemCollisionObject
friend

allows the UI to edit all the various parameters

Member Data Documentation

bool makVrv::DtFxCollisionObject::m_global_object
protected
int makVrv::DtFxCollisionObject::m_object_type
protected
bdiVec3f makVrv::DtFxCollisionObject::m_normal
protected

The plane's normal.

bdiFarPosition makVrv::DtFxCollisionObject::m_point
protected

A coplanar point within the plane, or center of object.

float makVrv::DtFxCollisionObject::m_radius
protected

sphere size

bdiVec3f makVrv::DtFxCollisionObject::m_ellipsoid_radius
protected

ellipsoid size

bdiVec4f makVrv::DtFxCollisionObject::m_quat
protected

results of set rotation

float makVrv::DtFxCollisionObject::m_bounce_factor
protected

Coefficient of restitution (or how bouncy the plane is)

int makVrv::DtFxCollisionObject::m_collision_behavior
protected
bdiMat4f makVrv::DtFxCollisionObject::myGeocentricMatrix
protected
bdiMat4f makVrv::DtFxCollisionObject::myQuatMatrix
protected
bdiMat4f makVrv::DtFxCollisionObject::myQuatMatrixInv
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)