Classes | Defines | Typedefs | Functions
Bullet-C-Api.h File Reference

Go to the source code of this file.

Classes

struct  plRayCastResult

Defines

#define PL_DECLARE_HANDLE(name)   typedef struct name##__ { int unused; } *name

Typedefs

typedef void(* btBroadphaseCallback )(void *clientData, void *object1, void *object2)
typedef plReal plQuaternion [4]
typedef struct plRayCastResult plRayCastResult
typedef float plReal
typedef plReal plVector3 [3]

Functions

 PL_DECLARE_HANDLE (plPhysicsSdkHandle)
 PL_DECLARE_HANDLE (plDynamicsWorldHandle)
 PL_DECLARE_HANDLE (plRigidBodyHandle)
 PL_DECLARE_HANDLE (plCollisionShapeHandle)
 PL_DECLARE_HANDLE (plConstraintHandle)
 PL_DECLARE_HANDLE (plMeshInterfaceHandle)
 PL_DECLARE_HANDLE (plCollisionBroadphaseHandle)
 PL_DECLARE_HANDLE (plBroadphaseProxyHandle)
 PL_DECLARE_HANDLE (plCollisionWorldHandle)
void plAddChildShape (plCollisionShapeHandle compoundShape, plCollisionShapeHandle childShape, plVector3 childPos, plQuaternion childOrn)
void plAddRigidBody (plDynamicsWorldHandle world, plRigidBodyHandle object)
void plAddTriangle (plMeshInterfaceHandle meshHandle, plVector3 v0, plVector3 v1, plVector3 v2)
void plAddVertex (plCollisionShapeHandle convexHull, plReal x, plReal y, plReal z)
plCollisionWorldHandle plCreateCollisionWorld (plPhysicsSdkHandle physicsSdk)
plDynamicsWorldHandle plCreateDynamicsWorld (plPhysicsSdkHandle physicsSdk)
plBroadphaseProxyHandle plCreateProxy (plCollisionBroadphaseHandle bp, void *clientData, plReal minX, plReal minY, plReal minZ, plReal maxX, plReal maxY, plReal maxZ)
plRigidBodyHandle plCreateRigidBody (void *user_data, float mass, plCollisionShapeHandle cshape)
plCollisionBroadphaseHandle plCreateSapBroadphase (btBroadphaseCallback beginCallback, btBroadphaseCallback endCallback)
void plDeleteDynamicsWorld (plDynamicsWorldHandle world)
void plDeletePhysicsSdk (plPhysicsSdkHandle physicsSdk)
void plDeleteRigidBody (plRigidBodyHandle body)
void plDeleteShape (plCollisionShapeHandle shape)
void plDestroyBroadphase (plCollisionBroadphaseHandle bp)
void plDestroyProxy (plCollisionBroadphaseHandle bp, plBroadphaseProxyHandle proxyHandle)
void plGetOpenGLMatrix (plRigidBodyHandle object, plReal *matrix)
void plGetOrientation (plRigidBodyHandle object, plQuaternion orientation)
void plGetPosition (plRigidBodyHandle object, plVector3 position)
double plNearestPoints (float p1[3], float p2[3], float p3[3], float q1[3], float q2[3], float q3[3], float *pa, float *pb, float normal[3])
plCollisionShapeHandle plNewBoxShape (plReal x, plReal y, plReal z)
plPhysicsSdkHandle plNewBulletSdk (void)
plCollisionShapeHandle plNewCapsuleShape (plReal radius, plReal height)
plCollisionShapeHandle plNewCompoundShape (void)
plCollisionShapeHandle plNewConeShape (plReal radius, plReal height)
plCollisionShapeHandle plNewConvexHullShape (void)
plCollisionShapeHandle plNewCylinderShape (plReal radius, plReal height)
plMeshInterfaceHandle plNewMeshInterface (void)
plCollisionShapeHandle plNewSphereShape (plReal radius)
plCollisionShapeHandle plNewStaticTriangleMeshShape (plMeshInterfaceHandle)
int plRayCast (plDynamicsWorldHandle world, const plVector3 rayStart, const plVector3 rayEnd, plRayCastResult res)
void plRemoveRigidBody (plDynamicsWorldHandle world, plRigidBodyHandle object)
void plSetBoundingBox (plBroadphaseProxyHandle proxyHandle, plReal minX, plReal minY, plReal minZ, plReal maxX, plReal maxY, plReal maxZ)
void plSetEuler (plReal yaw, plReal pitch, plReal roll, plQuaternion orient)
void plSetOpenGLMatrix (plRigidBodyHandle object, plReal *matrix)
void plSetOrientation (plRigidBodyHandle object, const plQuaternion orientation)
void plSetPosition (plRigidBodyHandle object, const plVector3 position)
void plSetScaling (plCollisionShapeHandle shape, plVector3 scaling)
void plStepSimulation (plDynamicsWorldHandle, plReal timeStep)

Define Documentation

#define PL_DECLARE_HANDLE (   name)    typedef struct name##__ { int unused; } *name

Definition at line 26 of file Bullet-C-Api.h.


Typedef Documentation

typedef void(* btBroadphaseCallback)(void *clientData, void *object1, void *object2)

Collision World, not strictly necessary, you can also just create a Dynamics World with Rigid Bodies which internally manages the Collision World with Collision Objects

Definition at line 73 of file Bullet-C-Api.h.

typedef plReal plQuaternion[4]

Definition at line 35 of file Bullet-C-Api.h.

typedef float plReal

Definition at line 31 of file Bullet-C-Api.h.

typedef plReal plVector3[3]

Definition at line 34 of file Bullet-C-Api.h.


Function Documentation

PL_DECLARE_HANDLE ( plPhysicsSdkHandle  )

Particular physics SDK (C-API)

PL_DECLARE_HANDLE ( plDynamicsWorldHandle  )

Dynamics world, belonging to some physics SDK (C-API)

PL_DECLARE_HANDLE ( plRigidBodyHandle  )

Rigid Body that can be part of a Dynamics World (C-API)

PL_DECLARE_HANDLE ( plCollisionShapeHandle  )

Collision Shape/Geometry, property of a Rigid Body (C-API)

PL_DECLARE_HANDLE ( plConstraintHandle  )

Constraint for Rigid Bodies (C-API)

PL_DECLARE_HANDLE ( plMeshInterfaceHandle  )

Triangle Mesh interface (C-API)

PL_DECLARE_HANDLE ( plCollisionBroadphaseHandle  )

Broadphase Scene/Proxy Handles (C-API)

PL_DECLARE_HANDLE ( plBroadphaseProxyHandle  )
PL_DECLARE_HANDLE ( plCollisionWorldHandle  )
void plAddChildShape ( plCollisionShapeHandle  compoundShape,
plCollisionShapeHandle  childShape,
plVector3  childPos,
plQuaternion  childOrn 
)
void plAddRigidBody ( plDynamicsWorldHandle  world,
plRigidBodyHandle  object 
)
void plAddTriangle ( plMeshInterfaceHandle  meshHandle,
plVector3  v0,
plVector3  v1,
plVector3  v2 
)
void plAddVertex ( plCollisionShapeHandle  convexHull,
plReal  x,
plReal  y,
plReal  z 
)
plCollisionWorldHandle plCreateCollisionWorld ( plPhysicsSdkHandle  physicsSdk)
plDynamicsWorldHandle plCreateDynamicsWorld ( plPhysicsSdkHandle  physicsSdk)
plBroadphaseProxyHandle plCreateProxy ( plCollisionBroadphaseHandle  bp,
void *  clientData,
plReal  minX,
plReal  minY,
plReal  minZ,
plReal  maxX,
plReal  maxY,
plReal  maxZ 
)
plRigidBodyHandle plCreateRigidBody ( void *  user_data,
float  mass,
plCollisionShapeHandle  cshape 
)
plCollisionBroadphaseHandle plCreateSapBroadphase ( btBroadphaseCallback  beginCallback,
btBroadphaseCallback  endCallback 
)
void plDeleteDynamicsWorld ( plDynamicsWorldHandle  world)
void plDeletePhysicsSdk ( plPhysicsSdkHandle  physicsSdk)
void plDeleteRigidBody ( plRigidBodyHandle  body)
void plDeleteShape ( plCollisionShapeHandle  shape)
void plDestroyBroadphase ( plCollisionBroadphaseHandle  bp)
void plDestroyProxy ( plCollisionBroadphaseHandle  bp,
plBroadphaseProxyHandle  proxyHandle 
)
void plGetOpenGLMatrix ( plRigidBodyHandle  object,
plReal matrix 
)
void plGetOrientation ( plRigidBodyHandle  object,
plQuaternion  orientation 
)
void plGetPosition ( plRigidBodyHandle  object,
plVector3  position 
)
double plNearestPoints ( float  p1[3],
float  p2[3],
float  p3[3],
float  q1[3],
float  q2[3],
float  q3[3],
float *  pa,
float *  pb,
float  normal[3] 
)
plCollisionShapeHandle plNewBoxShape ( plReal  x,
plReal  y,
plReal  z 
)
plPhysicsSdkHandle plNewBulletSdk ( void  )

Create and Delete a Physics SDK

plCollisionShapeHandle plNewCapsuleShape ( plReal  radius,
plReal  height 
)
plCollisionShapeHandle plNewCompoundShape ( void  )
plCollisionShapeHandle plNewConeShape ( plReal  radius,
plReal  height 
)
plCollisionShapeHandle plNewConvexHullShape ( void  )
plCollisionShapeHandle plNewCylinderShape ( plReal  radius,
plReal  height 
)
plMeshInterfaceHandle plNewMeshInterface ( void  )
plCollisionShapeHandle plNewSphereShape ( plReal  radius)
plCollisionShapeHandle plNewStaticTriangleMeshShape ( plMeshInterfaceHandle  )
int plRayCast ( plDynamicsWorldHandle  world,
const plVector3  rayStart,
const plVector3  rayEnd,
plRayCastResult  res 
)
void plRemoveRigidBody ( plDynamicsWorldHandle  world,
plRigidBodyHandle  object 
)
void plSetBoundingBox ( plBroadphaseProxyHandle  proxyHandle,
plReal  minX,
plReal  minY,
plReal  minZ,
plReal  maxX,
plReal  maxY,
plReal  maxZ 
)
void plSetEuler ( plReal  yaw,
plReal  pitch,
plReal  roll,
plQuaternion  orient 
)
void plSetOpenGLMatrix ( plRigidBodyHandle  object,
plReal matrix 
)
void plSetOrientation ( plRigidBodyHandle  object,
const plQuaternion  orientation 
)
void plSetPosition ( plRigidBodyHandle  object,
const plVector3  position 
)
void plSetScaling ( plCollisionShapeHandle  shape,
plVector3  scaling 
)
void plStepSimulation ( plDynamicsWorldHandle  ,
plReal  timeStep 
)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


bullet
Author(s): Erwin Coumans, ROS package maintained by Tully Foote
autogenerated on Wed Oct 31 2012 07:54:32