RobWorkProject  23.9.11-
Classes | Static Public Member Functions | List of all members
ODEUtil Class Reference

Classes

struct  TriGeomData
 
struct  TriMeshData
 

Static Public Member Functions

static void setODEBodyT3D (dBodyID bodyId, const rw::math::Transform3D<> &t3d)
 set the transform of a ode body More...
 
static void setODEGeomT3D (dGeomID geoId, const rw::math::Transform3D<> &t3d)
 
static rw::math::Transform3D getODEGeomT3D (dGeomID geomId)
 
static rw::math::Transform3D getODEBodyT3D (dBodyID bodyId)
 
static void toODEVector (const rw::math::Vector3D<> &v, dVector3 dst)
 
static rw::math::Vector3D< double > toVector3D (const dReal *v)
 
static void toODERotation (const rw::math::Rotation3D<> &rwR, dMatrix3 R)
 
static void toODETransform (const rw::math::Transform3D<> &t3d, dVector3 p, dQuaternion q)
 
static void setODEBodyMass (dBodyID body, double mass, const rw::math::Vector3D<> &c, const rw::math::InertiaMatrix<> &I)
 
static double calcElasticERP (double Kp, double Kd, double dt)
 calculate the ERP to use in an elastic (spring-and-damper system) contact with elastic More...
 
static double calcElasticCFM (double Kp, double Kd, double dt)
 calculate the CFM to use in an elastic (spring-and-damper system) contact with elastic More...
 
static TriMeshData::Ptr buildTriMesh (rw::core::Ptr< rw::geometry::GeometryData > gdata, bool invert=false)
 
static std::vector< TriGeomData * > buildTriGeom (std::vector< rw::core::Ptr< rw::geometry::Geometry >> geoms, dSpaceID spaceid, rw::kinematics::Frame *ref, const rw::kinematics::State &state, bool invert=false)
 

Member Function Documentation

◆ calcElasticCFM()

static double calcElasticCFM ( double  Kp,
double  Kd,
double  dt 
)
static

calculate the CFM to use in an elastic (spring-and-damper system) contact with elastic

Parameters
Kp[in] the spring coefficient
Kd[in] the damper coefficient
dt[in] the timestep
Returns
the ERP to use in an elastic contact

◆ calcElasticERP()

static double calcElasticERP ( double  Kp,
double  Kd,
double  dt 
)
static

calculate the ERP to use in an elastic (spring-and-damper system) contact with elastic

Parameters
Kp[in] the spring coefficient
Kd[in] the damper coefficient
dt[in] the timestep
Returns
the ERP to use in an elastic contact
Note
this needs to be used together with a correctly calculated CFM constant

◆ setODEBodyT3D()

static void setODEBodyT3D ( dBodyID  bodyId,
const rw::math::Transform3D<> &  t3d 
)
static

set the transform of a ode body

Parameters
bodyId[in] the bodyId of the ode body
t3d[in] the rw transform

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