cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | Static Protected Attributes | List of all members
osaODEWorld Class Reference

#include <osaODEWorld.h>

Inheritance diagram for osaODEWorld:
osaOSGWorld mtsODEWorld

Public Member Functions

 osaODEWorld (double period, const vctFixedSizeVector< double, 3 > &gravity=GRAVITY)
 Create a new world. More...
 
 ~osaODEWorld ()
 Destroy the world! More...
 
dWorldID GetWorldID () const
 Return the world ID. More...
 
dSpaceID GetSpaceID () const
 Return the space ID. More...
 
double GetTimeStep () const
 
void SetGravity (const vctFixedSizeVector< double, 3 > &g=GRAVITY)
 
void SetERP (double erp)
 
void SetCFM (double cfm)
 
void SetContactMaxCorrectingVel (double cmcv)
 
void Collision (dGeomID o1, dGeomID o2)
 Process collisions between two geometries. More...
 
void Step ()
 Take a simulation step. More...
 
std::list< osaODEContactGetContacts ()
 Get a list of contacts. More...
 
void SetContactERP (double erp)
 
void SetContactBouncing (double cb)
 
void SetContactFriction (double mu)
 
void SetContactSurfaceLayer (double sl)
 
- Public Member Functions inherited from osaOSGWorld
 osaOSGWorld ()
 
 ~osaOSGWorld ()
 

Protected Attributes

double contacterp
 
double contactbounce
 
double mu
 
double surfacelayer
 

Static Protected Attributes

static const
vctFixedSizeVector< double, 3 > 
GRAVITY
 Default gravity. More...
 

Constructor & Destructor Documentation

osaODEWorld::osaODEWorld ( double  period,
const vctFixedSizeVector< double, 3 > &  gravity = GRAVITY 
)

Create a new world.

Create a new ODE world. This initializes the ODE engine and create a new world and a new top level space. It also sets simulation parameters such as error reduction parameter (ERP) and constraint force mixing (CFM)

Parameters
gravityA gravity vector. The defalt value is ${bmatrix} 0 & 0 & -9.81 {bmatrix}$.
osaODEWorld::~osaODEWorld ( )

Destroy the world!

Member Function Documentation

void osaODEWorld::Collision ( dGeomID  o1,
dGeomID  o2 
)

Process collisions between two geometries.

This is the main call to process collisions between geometries. This must be public since it is called from a C function.

Parameters
o1The geometry of the first object
o2The geometry of the second object
std::list< osaODEContact > osaODEWorld::GetContacts ( )

Get a list of contacts.

dSpaceID osaODEWorld::GetSpaceID ( ) const
inline

Return the space ID.

double osaODEWorld::GetTimeStep ( ) const
inline
dWorldID osaODEWorld::GetWorldID ( ) const
inline

Return the world ID.

void osaODEWorld::SetCFM ( double  cfm)
inline
void osaODEWorld::SetContactBouncing ( double  cb)
inline
void osaODEWorld::SetContactERP ( double  erp)
inline
void osaODEWorld::SetContactFriction ( double  mu)
inline
void osaODEWorld::SetContactMaxCorrectingVel ( double  cmcv)
inline
void osaODEWorld::SetContactSurfaceLayer ( double  sl)
inline
void osaODEWorld::SetERP ( double  erp)
inline
void osaODEWorld::SetGravity ( const vctFixedSizeVector< double, 3 > &  g = GRAVITY)
inline
void osaODEWorld::Step ( )

Take a simulation step.

Member Data Documentation

double osaODEWorld::contactbounce
protected
double osaODEWorld::contacterp
protected
const vctFixedSizeVector<double,3> osaODEWorld::GRAVITY
staticprotected

Default gravity.

double osaODEWorld::mu
protected
double osaODEWorld::surfacelayer
protected

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