iRigidBody Struct Reference
This is the interface for a rigid body. More...
#include <dynamics.h>
Inheritance diagram for iRigidBody:

Public Methods | |
virtual iObject * | QueryObject (void)=0 |
returns the underlying object | |
virtual bool | MakeStatic (void)=0 |
Makes a body stop reacting dynamically. | |
virtual bool | MakeDynamic (void)=0 |
Returns a static body to a dynamic state. | |
virtual bool | IsStatic (void)=0 |
Tells whether a body has been made static or not. | |
virtual csRef< iBodyGroup > | GetGroup (void)=0 |
Returns which group a body belongs to. | |
virtual bool | AttachColliderMesh (iMeshWrapper *mesh, const csOrthoTransform &trans, float friction, float density, float elasticity, float softness=0.01f)=0 |
Add a collider with a associated friction coefficient. | |
virtual bool | AttachColliderCylinder (float length, float radius, const csOrthoTransform &trans, float friction, float density, float elasticity, float softness=0.01f)=0 |
Cylinder orientated along its local z axis. | |
virtual bool | AttachColliderBox (const csVector3 &size, const csOrthoTransform &trans, float friction, float density, float elasticity, float softness=0.01f)=0 |
Add a collider box with given properties. | |
virtual bool | AttachColliderSphere (float radius, const csVector3 &offset, float friction, float density, float elasticity, float softness=0.01f)=0 |
Add a collider sphere with given properties. | |
virtual bool | AttachColliderPlane (const csPlane3 &plane, float friction, float density, float elasticity, float softness=0.01f)=0 |
Add a collider plane with given properties. | |
virtual void | SetPosition (const csVector3 &trans)=0 |
Set the position. | |
virtual const csVector3 | GetPosition () const=0 |
Get the position. | |
virtual void | SetOrientation (const csMatrix3 &trans)=0 |
Set the orientation. | |
virtual const csMatrix3 | GetOrientation () const=0 |
Get the orientation. | |
virtual void | SetTransform (const csOrthoTransform &trans)=0 |
Set the transform. | |
virtual const csOrthoTransform | GetTransform () const=0 |
Get the transform. | |
virtual void | SetLinearVelocity (const csVector3 &vel)=0 |
Set the linear velocity (movement). | |
virtual const csVector3 | GetLinearVelocity () const=0 |
Get the linear velocity (movement). | |
virtual void | SetAngularVelocity (const csVector3 &vel)=0 |
Set the angular velocity (rotation). | |
virtual const csVector3 | GetAngularVelocity () const=0 |
Get the angular velocity (rotation). | |
virtual void | SetProperties (float mass, const csVector3 ¢er, const csMatrix3 &inertia)=0 |
Set the physic properties. | |
virtual void | GetProperties (float *mass, csVector3 *center, csMatrix3 *inertia)=0 |
Get the physic properties. 0 parameters are ignored. | |
virtual void | AdjustTotalMass (float targetmass)=0 |
Set total mass to targetmass, and adjust properties. | |
virtual void | AddForce (const csVector3 &force)=0 |
Add a force (world space) (active for one timestep). | |
virtual void | AddTorque (const csVector3 &force)=0 |
Add a torque (world space) (active for one timestep). | |
virtual void | AddRelForce (const csVector3 &force)=0 |
Add a force (local space) (active for one timestep). | |
virtual void | AddRelTorque (const csVector3 &force)=0 |
Add a torque (local space) (active for one timestep). | |
virtual void | AddForceAtPos (const csVector3 &force, const csVector3 &pos)=0 |
Add a force (world space) at a specific position (world space) (active for one timestep). | |
virtual void | AddForceAtRelPos (const csVector3 &force, const csVector3 &pos)=0 |
Add a force (world space) at a specific position (local space) (active for one timestep). | |
virtual void | AddRelForceAtPos (const csVector3 &force, const csVector3 &pos)=0 |
Add a force (local space) at a specific position (world space) (active for one timestep). | |
virtual void | AddRelForceAtRelPos (const csVector3 &force, const csVector3 &pos)=0 |
Add a force (local space) at a specific position (loacl space) (active for one timestep). | |
virtual const csVector3 | GetForce () const=0 |
Get total force (world space). | |
virtual const csVector3 | GetTorque () const=0 |
Get total torque (world space). | |
virtual void | AttachMesh (iMeshWrapper *mesh)=0 |
Attach a iMeshWrapper to this body. | |
virtual csRef< iMeshWrapper > | GetAttachedMesh ()=0 |
Returns the attached MeshWrapper. | |
virtual void | AttachBone (iSkeletonBone *bone)=0 |
Attach a bone to this body. | |
virtual csRef< iSkeletonBone > | GetAttachedBone ()=0 |
Returns the attached bone. | |
virtual void | SetMoveCallback (iDynamicsMoveCallback *cb)=0 |
Set a callback to be executed when this body moves. | |
virtual void | SetCollisionCallback (iDynamicsCollisionCallback *cb)=0 |
Set a callback to be executed when this body collides with another If 0, no callback is executed. | |
virtual void | Collision (iRigidBody *other)=0 |
If there's a collision callback with this body, execute it. | |
virtual void | Update ()=0 |
Update transforms for mesh and/or bone. |
Detailed Description
This is the interface for a rigid body.It keeps all properties for the body. It can also be attached to a movable or a bone, to automatically update it.
Definition at line 247 of file dynamics.h.
Member Function Documentation
|
Add a force (world space) (active for one timestep).
|
|
Add a force (world space) at a specific position (world space) (active for one timestep).
|
|
Add a force (world space) at a specific position (local space) (active for one timestep).
|
|
Add a force (local space) (active for one timestep).
|
|
Add a force (local space) at a specific position (world space) (active for one timestep).
|
|
Add a force (local space) at a specific position (loacl space) (active for one timestep).
|
|
Add a torque (local space) (active for one timestep).
|
|
Add a torque (world space) (active for one timestep).
|
|
Set total mass to targetmass, and adjust properties.
|
|
Attach a bone to this body.
|
|
Add a collider box with given properties.
|
|
Cylinder orientated along its local z axis.
|
|
Add a collider with a associated friction coefficient.
|
|
Add a collider plane with given properties.
|
|
Add a collider sphere with given properties.
|
|
Attach a iMeshWrapper to this body.
|
|
If there's a collision callback with this body, execute it.
|
|
Get the angular velocity (rotation).
|
|
Returns the attached bone.
|
|
Returns the attached MeshWrapper.
|
|
Get total force (world space).
|
|
Returns which group a body belongs to.
|
|
Get the linear velocity (movement).
|
|
Get the orientation.
|
|
Get the position.
|
|
Get the physic properties. 0 parameters are ignored.
|
|
Get total torque (world space).
|
|
Get the transform.
|
|
Tells whether a body has been made static or not.
|
|
Returns a static body to a dynamic state.
|
|
Makes a body stop reacting dynamically. This is especially useful for environmental objects. It will also increase speed in some cases by ignoring all physics for that body |
|
returns the underlying object
|
|
Set the angular velocity (rotation).
|
|
Set a callback to be executed when this body collides with another If 0, no callback is executed.
|
|
Set the linear velocity (movement).
|
|
Set a callback to be executed when this body moves. If 0, no callback is executed. |
|
Set the orientation.
|
|
Set the position.
|
|
Set the physic properties.
|
|
Set the transform.
|
|
Update transforms for mesh and/or bone.
|
The documentation for this struct was generated from the following file:
- ivaria/dynamics.h
Generated for Crystal Space by doxygen 1.2.18