vrsode::TrimeshShape Class Reference

Represents a Trimesh Shape. More...

#include <TrimeshShape.h>

Inheritance diagram for vrsode::TrimeshShape:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 TrimeshShape (VRS::SO< TriangleData >)
 ctor.
virtual ~TrimeshShape ()
 dtor.
void geometryChangeCallback ()
 this function should be invoked by TriangleData objects as soon as the geometry of the object changes.

Protected Member Functions

virtual void createDebugNode ()
 create a debug geometry.
virtual void createGeometry ()
 create an ode geometry.

Private Attributes

VRS::SO< TriangleDatam_triangleData
dTriMeshDataID m_trimeshId

Detailed Description

Represents a Trimesh Shape.

A triangle mesh (TriMesh) represents an arbitrary collection of triangles. Any triangle "soup" can be represented - i.e. the triangles are not required to have any particular strip, fan or grid structure. Triangle meshes can interact with spheres, boxes, rays and other triangle meshes.

Definition at line 20 of file TrimeshShape.h.


Constructor & Destructor Documentation

vrsode::TrimeshShape::TrimeshShape ( VRS::SO< TriangleData  ) 

ctor.

Definition at line 16 of file TrimeshShape.cpp.

References createDebugNode(), createGeometry(), vrsode::CS_Trimesh, geometryChangeCallback(), m_triangleData, m_trimeshId, and vrsode::Shape::setCollisionShape().

Here is the call graph for this function:

vrsode::TrimeshShape::~TrimeshShape (  )  [virtual]

dtor.

Definition at line 41 of file TrimeshShape.cpp.

References m_trimeshId.


Member Function Documentation

void vrsode::TrimeshShape::geometryChangeCallback (  ) 

this function should be invoked by TriangleData objects as soon as the geometry of the object changes.

It causes the object to regenerate the trimesh data and load it.

Definition at line 70 of file TrimeshShape.cpp.

References createDebugNode(), vrsode::Shape::geomId(), m_triangleData, and m_trimeshId.

Referenced by TrimeshShape().

Here is the call graph for this function:

Here is the caller graph for this function:

void vrsode::TrimeshShape::createDebugNode (  )  [protected, virtual]

create a debug geometry.

Implements vrsode::Shape.

Definition at line 53 of file TrimeshShape.cpp.

References vrsode::Shape::debugNode(), vrsode::Shape::debugNodeActive(), and m_triangleData.

Referenced by geometryChangeCallback(), and TrimeshShape().

Here is the call graph for this function:

Here is the caller graph for this function:

void vrsode::TrimeshShape::createGeometry (  )  [protected, virtual]

create an ode geometry.

Implements vrsode::Shape.

Definition at line 47 of file TrimeshShape.cpp.

References m_trimeshId, and vrsode::Shape::setGeomId().

Referenced by TrimeshShape().

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

VRS::SO<TriangleData> vrsode::TrimeshShape::m_triangleData [private]

Definition at line 22 of file TrimeshShape.h.

Referenced by createDebugNode(), geometryChangeCallback(), and TrimeshShape().

dTriMeshDataID vrsode::TrimeshShape::m_trimeshId [private]

Definition at line 24 of file TrimeshShape.h.

Referenced by createGeometry(), geometryChangeCallback(), TrimeshShape(), and ~TrimeshShape().


The documentation for this class was generated from the following files:
Generated on Fri May 11 21:02:19 2007 for Random Racer by  doxygen 1.5.1