23 #ifndef _ODE_OBJECTS_H_
24 #define _ODE_OBJECTS_H_
26 #include <ode/common.h>
28 #include <ode/contact.h>
29 #include <ode/threading.h>
119 #define dWORLDSTEP_THREADCOUNT_UNLIMITED 0U
223 #define dWORLDSTEP_RESERVEFACTOR_DEFAULT 1.2f
224 #define dWORLDSTEP_RESERVESIZE_DEFAULT 65536U
244 unsigned struct_size;
245 float reserve_factor;
246 unsigned reserve_minimum;
299 unsigned struct_size;
300 void *(*alloc_block)(
size_t block_size);
301 void *(*shrink_block)(
void *block_pointer,
size_t block_current_size,
size_t block_smaller_size);
302 void (*free_block)(
void *block_pointer,
size_t block_current_size);
429 dReal ix, dReal iy, dReal iz, dVector3 force
752 dReal angular_scale);
1092 dReal px, dReal py, dReal pz);
1098 dReal px, dReal py, dReal pz);
1104 dReal px, dReal py, dReal pz);
1110 dReal px, dReal py, dReal pz);
1161 dBodyID, dReal px, dReal py, dReal pz,
1172 dBodyID, dReal px, dReal py, dReal pz,
1184 dBodyID, dReal px, dReal py, dReal pz,
1198 dBodyID, dReal px, dReal py, dReal pz,
1209 dBodyID, dReal px, dReal py, dReal pz,
1220 dBodyID, dReal px, dReal py, dReal pz,
1670 ODE_API dJointID dJointCreateNull (
dWorldID, dJointGroupID);
1887 ODE_API
void dJointSetHingeAnchorDelta (dJointID, dReal x, dReal y, dReal z, dReal ax, dReal ay, dReal az);
1950 ODE_API
void dJointSetSliderAxisDelta (dJointID, dReal x, dReal y, dReal z, dReal ax, dReal ay, dReal az);
2049 dReal offset1, dReal offset2);
2096 dReal offset1, dReal offset2);
2161 dReal dx, dReal dy, dReal dz);
2193 dReal dx, dReal dy, dReal dz);
2283 dReal dx, dReal dy, dReal dz);
2304 ODE_API_DEPRECATED ODE_API
void dJointSetPistonAxisDelta (dJointID j, dReal x, dReal y, dReal z, dReal ax, dReal ay, dReal az);
2336 ODE_API
void dJointSetFixedParam (dJointID,
int parameter, dReal value);
2350 dReal x, dReal y, dReal z);
2403 ODE_API
void dJointSetLMotorAxis (dJointID,
int anum,
int rel, dReal x, dReal y, dReal z);
2414 ODE_API
void dJointSetPlane2DXParam (dJointID,
int parameter, dReal value);
2420 ODE_API
void dJointSetPlane2DYParam (dJointID,
int parameter, dReal value);
2425 ODE_API
void dJointSetPlane2DAngleParam (dJointID,
int parameter, dReal value);
2433 ODE_API
void dJointGetBallAnchor (dJointID, dVector3 result);
2445 ODE_API
void dJointGetBallAnchor2 (dJointID, dVector3 result);
ODE_API dReal dBodyGetAngularDamping(dBodyID b)
Get the body's angular damping scale.
Definition: ode.cpp:1034
ODE_API dReal dJointGetUniversalAngle1Rate(dJointID)
Get time derivative of angle.
ODE_API void dJointSetPUAnchorOffset(dJointID, dReal x, dReal y, dReal z, dReal dx, dReal dy, dReal dz)
Set the PU anchor as if the 2 bodies were already at [dx, dy, dz] appart.This function initialize the...
ODE_API dReal dJointGetAMotorAngle(dJointID, int anum)
Get the current angle for axis.
ODE_API const dReal * dBodyGetAngularVel(dBodyID)
Get the angular velocity of a body.
Definition: ode.cpp:475
ODE_API void dWorldSetAngularDamping(dWorldID w, dReal scale)
Set the world's angular damping scale.
Definition: ode.cpp:1992
ODE_API dReal dJointGetPUPositionRate(dJointID)
Get the PR linear position's time derivative.
ODE_API dReal dWorldGetContactMaxCorrectingVel(dWorldID)
Get the maximum correcting velocity that contacts are allowed to generated.
Definition: ode.cpp:2061
ODE_API void dJointSetDBallParam(dJointID, int parameter, dReal value)
set double ball joint parameter
ODE_API void dBodyAddRelTorque(dBodyID, dReal fx, dReal fy, dReal fz)
Add torque at centre of mass of body in coordinates relative to body.
Definition: ode.cpp:542
ODE_API void dJointGetPistonAnchor2(dJointID, dVector3 result)
Get the joint anchor w.r.t. body 2.
ODE_API dReal dJointGetPUAngle1Rate(dJointID)
ODE_API void dBodyDisable(dBodyID)
Manually disable a body.
Definition: ode.cpp:854
ODE_API dReal dJointGetTransmissionAngle1(dJointID j)
get the phase, that is the traversed angle for the first wheel of the Transmission joint ...
ODE_API void dJointSetTransmissionAxis1(dJointID, dReal x, dReal y, dReal z)
set the first axis for the Transmission joint
ODE_API void dJointAddHinge2Torques(dJointID joint, dReal torque1, dReal torque2)
Applies torque1 about the hinge2's axis 1, torque2 about the hinge2's axis 2.
ODE_API int dBodyGetAutoDisableSteps(dBodyID)
Get auto steps a body must be thought of as idle to disable.
Definition: ode.cpp:951
ODE_API void dBodyEnable(dBodyID)
Manually enable a body.
Definition: ode.cpp:844
ODE_API dJointID dJointCreateLMotor(dWorldID, dJointGroupID)
Create a new joint of the L-motor type.
Definition: ode.cpp:1248
ODE_API int dAreConnectedExcluding(dBodyID body1, dBodyID body2, int joint_type)
Utility function.
Definition: ode.cpp:1558
ODE_API void dJointGetPUAngles(dJointID, dReal *angle1, dReal *angle2)
Get both angles at the same time.
ODE_API dReal dJointGetBallParam(dJointID, int parameter)
get joint parameter
ODE_API int dBodyGetAutoDisableFlag(dBodyID)
Get auto disable flag.
Definition: ode.cpp:979
ODE_API void dBodySetPosition(dBodyID, dReal x, dReal y, dReal z)
Set position of a body.
Definition: ode.cpp:345
ODE_API dReal dWorldGetAngularDamping(dWorldID w)
Get the world's angular damping scale.
Definition: ode.cpp:1986
ODE_API void dJointSetDBallAnchor2(dJointID, dReal x, dReal y, dReal z)
set anchor2 for double ball joint
ODE_API void dJointAddSliderForce(dJointID joint, dReal force)
Applies the given force in the slider's direction.
ODE_API int dBodyGetAutoDisableAverageSamplesCount(dBodyID)
Get auto disable average size (samples count).
Definition: ode.cpp:913
ODE_API dReal dJointGetDBallDistance(dJointID)
get the set distance from double ball joint
ODE_API dGeomID dBodyGetFirstGeom(dBodyID b)
Return the first geom associated with the body.
Definition: ode.cpp:1116
ODE_API dReal dJointGetUniversalAngle2(dJointID)
Get angle.
ODE_API void dBodyAddRelForce(dBodyID, dReal fx, dReal fy, dReal fz)
Add force at centre of mass of body in coordinates relative to body.
Definition: ode.cpp:527
ODE_API const dReal * dBodyGetLinearVel(dBodyID)
Get the linear velocity of a body.
Definition: ode.cpp:468
ODE_API dGeomID dBodyGetNextGeom(dGeomID g)
returns the next geom associated with the same body.
Definition: ode.cpp:1123
ODE_API dReal dJointGetPUParam(dJointID, int parameter)
get joint parameter
ODE_API void dBodySetGyroscopicMode(dBodyID b, int enabled)
Enable/disable the body's gyroscopic term.
Definition: ode.cpp:1136
ODE_API void dJointGetTransmissionContactPoint2(dJointID, dVector3 result)
get contact point of the second wheel of the Transmission joint.
ODE_API void dBodySetAngularDampingThreshold(dBodyID b, dReal threshold)
Set the body's angular damping threshold.
Definition: ode.cpp:1076
ODE_API void dWorldSetAutoDisableSteps(dWorldID, int steps)
Set auto disable steps for newly created bodies.
Definition: ode.cpp:1906
ODE_API dReal dJointGetTransmissionRadius1(dJointID j)
get the radius of the first wheel of the Transmission joint
ODE_API int dWorldUseSharedWorkingMemory(dWorldID w, dWorldID from_world)
Set the world to use shared working memory along with another world.
Definition: ode.cpp:1673
ODE_API dReal dJointGetTransmissionRadius2(dJointID j)
get the radius of the second wheel of the Transmission joint
ODE_API int dJointIsEnabled(dJointID)
Check wether a joint is enabled.
ODE_API void dBodySetAutoDisableAngularThreshold(dBodyID, dReal angular_average_threshold)
Set auto disable angular average threshold.
Definition: ode.cpp:906
ODE_API void dJointGroupDestroy(dJointGroupID)
Destroy a joint group.All joints in the joint group will be destroyed.
Definition: ode.cpp:1312
ODE_API void dJointSetPistonAnchorOffset(dJointID j, dReal x, dReal y, dReal z, dReal dx, dReal dy, dReal dz)
Set the Piston anchor as if the 2 bodies were already at [dx,dy, dz] appart.This function initialize ...
ODE_API void dJointDisable(dJointID)
Manually disable a joint.
ODE_API void dWorldSetAutoDisableLinearAverageThreshold(dWorldID, dReal linear_average_threshold)
Set auto disable linear average threshold for newly created bodies.
ODE_API void dBodySetDynamic(dBodyID)
Set rigid body to dynamic state (default).
Definition: ode.cpp:824
ODE_API dReal dJointGetPUAngle2(dJointID)
Get angle.
ODE_API dReal dJointGetPRPositionRate(dJointID)
Get the PR linear position's time derivative.
ODE_API dReal dJointGetTransmissionParam(dJointID, int parameter)
get a Transmission joint parameter
ODE_API dReal dBodyGetLinearDampingThreshold(dBodyID b)
Get the body's linear damping threshold.
Definition: ode.cpp:1057
ODE_API void dJointSetAMotorNumAxes(dJointID, int num)
set the nr of axes
Memory reservation policy descriptor structure for world stepping functions.
Definition: include/ode/objects.h:242
ODE_API void dWorldSetContactSurfaceLayer(dWorldID, dReal depth)
Set the depth of the surface layer around all geometry objects.
Definition: ode.cpp:2068
ODE_API dReal dJointGetPistonAngle(dJointID)
Get the Piston angular position (i.e. the twist between the 2 bodies)
ODE_API void dBodySetFiniteRotationMode(dBodyID, int mode)
controls the way a body's orientation is updated at each timestep.
Definition: ode.cpp:759
ODE_API dReal dJointGetHinge2Angle2Rate(dJointID)
Get time derivative of angle.
ODE_API int dBodyGetNumJoints(dBodyID b)
Get the number of joints that are attached to this body.
Definition: ode.cpp:805
ODE_API dReal dBodyGetLinearDamping(dBodyID b)
Get the body's linear damping scale.
Definition: ode.cpp:1018
ODE_API void dJointSetPUAxis1(dJointID, dReal x, dReal y, dReal z)
set the axis for the first axis or the universal articulation
ODE_API void dBodyDestroy(dBodyID)
Destroy a body.
ODE_API void dWorldGetGravity(dWorldID, dVector3 gravity)
Get the gravity vector for a given world.
Definition: ode.cpp:1624
ODE_API void dBodySetAngularDamping(dBodyID b, dReal scale)
Set the body's angular damping scale.
Definition: ode.cpp:1040
ODE_API void dWorldSetGravity(dWorldID, dReal x, dReal y, dReal z)
Set the world's global gravity vector.
Definition: ode.cpp:1615
ODE_API dReal dJointGetPRAngleRate(dJointID)
Get the PR angular position's time derivative.
ODE_API unsigned dWorldGetStepIslandsProcessingMaxThreadCount(dWorldID w)
Get maximum threads that are allowed to be used for island stepping.
Definition: ode.cpp:1667
ODE_API dReal dJointGetUniversalAngle1(dJointID)
Get angle.
ODE_API void dJointSetHinge2Axis1(dJointID, dReal x, dReal y, dReal z)
set axis
ODE_API dReal dWorldGetAutoDisableAngularThreshold(dWorldID)
Get auto disable angular threshold for newly created bodies.
Definition: ode.cpp:1871
ODE_API void dBodySetTorque(dBodyID b, dReal x, dReal y, dReal z)
Set the body torque accumulation vector.
Definition: ode.cpp:662
ODE_API dReal dWorldGetLinearDamping(dWorldID w)
Get the world's linear damping scale.
Definition: ode.cpp:1970
ODE_API void dJointSetPistonAxis(dJointID, dReal x, dReal y, dReal z)
set the joint axis
ODE_API void dJointSetAMotorAxis(dJointID, int anum, int rel, dReal x, dReal y, dReal z)
set axis
ODE_API dReal dJointGetHingeAngle(dJointID)
Get the hinge angle.
ODE_API void dJointSetData(dJointID, void *data)
Set the user-data pointer.
ODE_API int dBodyIsKinematic(dBodyID)
Check wether a body is in kinematic state.
Definition: ode.cpp:838
ODE_API_DEPRECATED ODE_API void dJointSetPUAnchorDelta(dJointID, dReal x, dReal y, dReal z, dReal dx, dReal dy, dReal dz)
set anchor
ODE_API int dWorldSetStepMemoryReservationPolicy(dWorldID w, const dWorldStepReserveInfo *policyinfo)
Set memory reservation policy for world to be used with simulation stepping functions.
Definition: ode.cpp:1729
ODE_API void dJointGetPUAxis1(dJointID, dVector3 result)
Get the first axis of the universal component of the joint.
ODE_API dJointID dJointCreatePR(dWorldID, dJointGroupID)
Create a new joint of the PR (Prismatic and Rotoide) type.
Definition: ode.cpp:1210
ODE_API int dJointGetTransmissionMode(dJointID j)
get the Transmission joint mode
ODE_API void dWorldDestroy(dWorldID world)
Destroy a world and everything in it.
ODE_API void dWorldSetContactMaxCorrectingVel(dWorldID, dReal vel)
Set the maximum correcting velocity that contacts are allowed to generate.
Definition: ode.cpp:2054
World stepping memory manager descriptor structure.
Definition: include/ode/objects.h:297
ODE_API dReal dJointGetPUPosition(dJointID)
Get the PU linear position (i.e. the prismatic's extension)
ODE_API int dWorldGetAutoDisableFlag(dWorldID)
Get auto disable flag for newly created bodies.
Definition: ode.cpp:1927
ODE_API void dBodySetDampingDefaults(dBodyID b)
Resets the damping settings to the current world's settings.
Definition: ode.cpp:1082
ODE_API void dJointGetPistonAnchor(dJointID, dVector3 result)
Get the joint anchor.
ODE_API dReal dWorldGetAutoDisableTime(dWorldID)
Get auto disable time for newly created bodies.
Definition: ode.cpp:1913
ODE_API dReal dJointGetPRPosition(dJointID)
Get the PR linear position (i.e. the prismatic's extension)
ODE_API const dReal * dBodyGetForce(dBodyID)
Return the current accumulated force vector.
Definition: ode.cpp:639
ODE_API void dJointGetUniversalAxis2(dJointID, dVector3 result)
Get axis.
ODE_API dJointType dJointGetType(dJointID)
Get the type of the joint.
ODE_API dReal dJointGetTransmissionRatio(dJointID j)
get the Transmission joint ratio
ODE_API void dJointSetUniversalAnchor(dJointID, dReal x, dReal y, dReal z)
set anchor
ODE_API void * dJointGetData(dJointID)
Get the user-data pointer.
ODE_API dJointGroupID dJointGroupCreate(int max_size)
Create a joint group.
Definition: ode.cpp:1304
ODE_API void dJointGetDHingeAnchor1(dJointID, dVector3 result)
get anchor1 from double hinge joint
ODE_API void dJointSetHingeAxisOffset(dJointID j, dReal x, dReal y, dReal z, dReal angle)
Set the Hinge axis as if the 2 bodies were already at angle appart.This function initialize the Axis ...
ODE_API void dBodySetMovedCallback(dBodyID b, void(*callback)(dBodyID))
Set the 'moved' callback of a body.
Definition: ode.cpp:1109
ODE_API dJointID dJointCreateSlider(dWorldID, dJointGroupID)
Create a new joint of the slider type.
Definition: ode.cpp:1179
ODE_API void dBodySetLinearVel(dBodyID, dReal x, dReal y, dReal z)
Set the linear velocity of a body.
Definition: ode.cpp:389
ODE_API void dJointSetPRParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API void dJointSetBallAnchor2(dJointID, dReal x, dReal y, dReal z)
Set the joint anchor point.
ODE_API void dJointSetHingeAxis(dJointID, dReal x, dReal y, dReal z)
Set hinge axis.
ODE_API void dBodyAddRelForceAtRelPos(dBodyID, dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
Add force at specified point in body in local coordinates.
Definition: ode.cpp:617
ODE_API void dJointGetHingeAnchor(dJointID, dVector3 result)
Get the hinge anchor point, in world coordinates.
ODE_API dJointID dJointCreateUniversal(dWorldID, dJointGroupID)
Create a new joint of the universal type.
Definition: ode.cpp:1204
ODE_API void dJointGetUniversalAxis1(dJointID, dVector3 result)
Get axis.
ODE_API_DEPRECATED ODE_API void dJointSetPistonAxisDelta(dJointID j, dReal x, dReal y, dReal z, dReal ax, dReal ay, dReal az)
ODE_API dReal dBodyGetAutoDisableLinearThreshold(dBodyID)
Get auto disable linear average threshold.
Definition: ode.cpp:885
ODE_API void dBodyGetPointVel(dBodyID, dReal px, dReal py, dReal pz, dVector3 result)
Get velocity vector in global coords of a globally specified point on a body.
Definition: ode.cpp:704
ODE_API void dWorldSetStepThreadingImplementation(dWorldID w, const dThreadingFunctionsInfo *functions_info, dThreadingImplementationID threading_impl)
Assign threading implementation to be used for [quick]stepping the world.
Definition: ode.cpp:1789
ODE_API void dWorldSetAutoDisableAverageSamplesCount(dWorldID, unsigned int average_samples_count)
Set auto disable average sample count for newly created bodies.
Definition: ode.cpp:1892
ODE_API dReal dJointGetHingeParam(dJointID, int parameter)
get joint parameter
ODE_API void dWorldSetAutoDisableTime(dWorldID, dReal time)
Set auto disable time for newly created bodies.
Definition: ode.cpp:1920
ODE_API int dWorldSetStepMemoryManager(dWorldID w, const dWorldStepMemoryFunctionsInfo *memfuncs)
Set memory manager for world to be used with simulation stepping functions.
Definition: ode.cpp:1759
ODE_API void dJointSetUniversalAxis1(dJointID, dReal x, dReal y, dReal z)
set axis
ODE_API void dJointSetAMotorMode(dJointID, int mode)
set mode
ODE_API void dJointSetHingeAnchor(dJointID, dReal x, dReal y, dReal z)
Set hinge anchor parameter.
ODE_API void dBodySetQuaternion(dBodyID, const dQuaternion q)
Set the orientation of a body.
Definition: ode.cpp:373
ODE_API void dBodyGetFiniteRotationAxis(dBodyID, dVector3 result)
Get the finite rotation axis.
Definition: ode.cpp:796
ODE_API void dWorldSetERP(dWorldID, dReal erp)
Set the global ERP value, that controls how much error correction is performed in each time step...
Definition: ode.cpp:1633
ODE_API void dWorldSetQuickStepW(dWorldID, dReal over_relaxation)
Set the SOR over-relaxation parameter.
Definition: ode.cpp:2040
Definition: ode/src/objects.h:161
ODE_API void dJointSetPistonParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API void dJointAttach(dJointID, dBodyID body1, dBodyID body2)
Attach the joint to some new bodies.If the joint is already attached, it will be detached from the ol...
ODE_API dReal dJointGetUniversalAngle2Rate(dJointID)
Get time derivative of angle.
ODE_API void dWorldSetAutoDisableAngularAverageThreshold(dWorldID, dReal angular_average_threshold)
Set auto disable angular average threshold for newly created bodies.
ODE_API void dBodySetForce(dBodyID b, dReal x, dReal y, dReal z)
Set the body force accumulation vector.
Definition: ode.cpp:653
ODE_API void dJointGetHingeAnchor2(dJointID, dVector3 result)
Get the joint anchor point, in world coordinates.
ODE_API void dBodySetAutoDisableDefaults(dBodyID)
Set auto disable defaults.
Definition: ode.cpp:1006
ODE_API void dBodySetLinearDamping(dBodyID b, dReal scale)
Set the body's linear damping scale.
Definition: ode.cpp:1024
ODE_API void dBodySetDamping(dBodyID b, dReal linear_scale, dReal angular_scale)
Convenience function to set linear and angular scales at once.
Definition: ode.cpp:1050
ODE_API int dJointGetLMotorNumAxes(dJointID)
Get nr of axes.
ODE_API dReal dWorldGetCFM(dWorldID)
Get the constraint force mixing value.
Definition: ode.cpp:1654
ODE_API dReal dWorldGetERP(dWorldID)
Get the error reduction parameter.
Definition: ode.cpp:1640
ODE_API void dJointDestroy(dJointID)
Destroy a joint.disconnects it from its attached bodies and removing it from the world. However, if the joint is a member of a group then this function has no effect - to destroy that joint the group must be emptied or destroyed.
ODE_API void dJointAddAMotorTorques(dJointID, dReal torque1, dReal torque2, dReal torque3)
Applies torque0 about the AMotor's axis 0, torque1 about the AMotor's axis 1, and torque2 about the A...
ODE_API void dJointSetUniversalAxis2Offset(dJointID, dReal x, dReal y, dReal z, dReal offset1, dReal offset2)
Set the Universal axis2 as if the 2 bodies were already at offset1 and offset2 appart with respect to...
ODE_API void dBodyVectorToWorld(dBodyID, dReal px, dReal py, dReal pz, dVector3 result)
Convert from local to world coordinates.
Definition: ode.cpp:733
ODE_API dJointID dJointCreatePiston(dWorldID, dJointGroupID)
Create a new joint of the Piston type.
Definition: ode.cpp:1222
ODE_API void dBodyCopyPosition(dBodyID body, dVector3 pos)
Copy the position of a body into a vector.
Definition: ode.cpp:414
ODE_API void dBodyGetPosRelPoint(dBodyID, dReal px, dReal py, dReal pz, dVector3 result)
takes a point in global coordinates and returns the point's position in body-relative coordinates...
Definition: ode.cpp:720
ODE_API void dBodyGetRelPointPos(dBodyID, dReal px, dReal py, dReal pz, dVector3 result)
Get world position of a relative point on body.
Definition: ode.cpp:671
ODE_API void dJointSetBallParam(dJointID, int parameter, dReal value)
Param setting for Ball joints.
ODE_API void dBodyCopyQuaternion(dBodyID body, dQuaternion quat)
Copy the orientation of a body into a quaternion.
Definition: ode.cpp:457
ODE_API void dJointGetSliderAxis(dJointID, dVector3 result)
Get the slider axis.
ODE_API void dBodyAddTorque(dBodyID, dReal fx, dReal fy, dReal fz)
Add torque at centre of mass of body in absolute coordinates.
Definition: ode.cpp:518
ODE_API int dWorldGetQuickStepNumIterations(dWorldID)
Get the number of iterations that the QuickStep method performs per step.
Definition: ode.cpp:2033
ODE_API void dJointSetUniversalParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API void * dBodyGetData(dBodyID)
Get the body's user-data pointer.
Definition: ode.cpp:338
ODE_API void dBodySetGravityMode(dBodyID b, int mode)
Set whether the body is influenced by the world's gravity or not.
Definition: ode.cpp:868
ODE_API void dJointSetTransmissionAxis(dJointID j, dReal x, dReal y, dReal z)
set the common axis for both wheels of the Transmission joint
ODE_API void dBodySetAutoDisableAverageSamplesCount(dBodyID, unsigned int average_samples_count)
Set auto disable average buffer size (average steps).
Definition: ode.cpp:920
ODE_API void dBodyVectorFromWorld(dBodyID, dReal px, dReal py, dReal pz, dVector3 result)
Convert from world to local coordinates.
Definition: ode.cpp:746
ODE_API void dJointSetPistonAnchor(dJointID, dReal x, dReal y, dReal z)
set the joint anchor
ODE_API void dJointSetFeedback(dJointID, dJointFeedback *)
Sets the datastructure that is to receive the feedback.
ODE_API void dJointSetTransmissionRatio(dJointID j, dReal ratio)
set the Transmission ratio
ODE_API void dJointSetAMotorAngle(dJointID, int anum, dReal angle)
Tell the AMotor what the current angle is along axis anum.
ODE_API void dJointGetTransmissionAxis1(dJointID, dVector3 result)
get first axis for the Transmission joint
ODE_API dReal dJointGetPistonAngleRate(dJointID)
Get the piston angular position's time derivative.
ODE_API void dJointSetTransmissionMode(dJointID j, int mode)
set the Transmission joint mode
ODE_API void dBodyAddRelForceAtPos(dBodyID, dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
Add force at specified point in body in global coordinates.
Definition: ode.cpp:596
ODE_API void dJointGetTransmissionAnchor2(dJointID, dVector3 result)
get the second anchor for the Transmission joint
ODE_API dReal dJointGetPRAngle(dJointID)
Get the PR angular position (i.e. the twist between the 2 bodies)
ODE_API dReal dJointGetSliderPosition(dJointID)
Get the slider linear position (i.e. the slider's extension)
ODE_API dReal dJointGetLMotorParam(dJointID, int parameter)
get joint parameter
ODE_API dReal dBodyGetAngularDampingThreshold(dBodyID b)
Get the body's angular damping threshold.
Definition: ode.cpp:1070
ODE_API void dBodyGetRelPointVel(dBodyID, dReal px, dReal py, dReal pz, dVector3 result)
Get velocity vector in global coords of a relative point on body.
Definition: ode.cpp:687
ODE_API dReal dWorldGetAutoDisableLinearThreshold(dWorldID)
Get auto disable linear threshold for newly created bodies.
Definition: ode.cpp:1857
ODE_API void dBodySetMaxAngularSpeed(dBodyID b, dReal max_speed)
Set the body's maximum angular speed.
Definition: ode.cpp:1099
ODE_API void dJointGetPRAnchor(dJointID, dVector3 result)
Get the joint anchor point, in world coordinates.
ODE_API void dBodyCopyRotation(dBodyID, dMatrix3 R)
Copy the rotation of a body.
Definition: ode.cpp:431
ODE_API int dJointGetAMotorMode(dJointID)
Get the angular motor mode.
ODE_API dReal dJointGetAMotorParam(dJointID, int parameter)
get joint parameter
ODE_API void dJointSetPUParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API void dJointSetUniversalAxis1Offset(dJointID, dReal x, dReal y, dReal z, dReal offset1, dReal offset2)
Set the Universal axis1 as if the 2 bodies were already at offset1 and offset2 appart with respect to...
ODE_API void dJointSetHinge2Anchor(dJointID, dReal x, dReal y, dReal z)
set anchor
ODE_API dJointID dJointCreateContact(dWorldID, dJointGroupID, const dContact *)
Create a new joint of the contact type.
Definition: ode.cpp:1186
ODE_API dReal dJointGetSliderParam(dJointID, int parameter)
get joint parameter
ODE_API dReal dJointGetHinge2Param(dJointID, int parameter)
get joint parameter
ODE_API void dBodySetAutoDisableFlag(dBodyID, int do_auto_disable)
Set auto disable flag.
Definition: ode.cpp:986
ODE_API void dJointSetHinge2Axis2(dJointID, dReal x, dReal y, dReal z)
set axis
ODE_API int dJointGetAMotorNumAxes(dJointID)
Get the number of angular axes that will be controlled by the AMotor.
ODE_API dReal dJointGetAMotorAngleRate(dJointID, int anum)
Get the current angle rate for axis anum.
ODE_API dJointID dJointCreateDBall(dWorldID, dJointGroupID)
Create a new joint of the double ball type.
Definition: ode.cpp:1260
ODE_API dWorldID dBodyGetWorld(dBodyID)
Retrieves the world attached to te given body.
ODE_API void dJointSetTransmissionRadius2(dJointID j, dReal radius)
set the radius of the second wheel of the Transmission joint
ODE_API void dWorldSetQuickStepNumIterations(dWorldID, int num)
Set the number of iterations that the QuickStep method performs per step.
Definition: ode.cpp:2026
ODE_API dReal dWorldGetQuickStepW(dWorldID)
Get the SOR over-relaxation parameter.
Definition: ode.cpp:2047
Definition: ode/src/objects.h:131
ODE_API void dJointAddPRTorque(dJointID j, dReal torque)
Applies the torque about the rotoide axis of the PR joint.
ODE_API int dWorldStep(dWorldID w, dReal stepsize)
Step the world.
Definition: ode.cpp:1803
ODE_API dReal dJointGetDHingeParam(dJointID, int parameter)
get double hinge joint parameter
ODE_API void dWorldSetLinearDamping(dWorldID w, dReal scale)
Set the world's linear damping scale.
Definition: ode.cpp:1976
ODE_API void dJointGetTransmissionAxis(dJointID j, dVector3 result)
get the common axis for both wheels of the Transmission joint
ODE_API dReal dJointGetFixedParam(dJointID, int parameter)
get joint parameter
ODE_API void dBodyAddForce(dBodyID, dReal fx, dReal fy, dReal fz)
Add force at centre of mass of body in absolute coordinates.
Definition: ode.cpp:509
ODE_API int dWorldQuickStep(dWorldID w, dReal stepsize)
Quick-step the world.
Definition: ode.cpp:1822
ODE_API int dBodyGetFiniteRotationMode(dBodyID)
Get the way a body's orientation is updated each timestep.
Definition: ode.cpp:789
ODE_API void dBodySetLinearDampingThreshold(dBodyID b, dReal threshold)
Set the body's linear damping threshold.
Definition: ode.cpp:1063
ODE_API void dJointGetUniversalAnchor2(dJointID, dVector3 result)
Get the joint anchor point, in world coordinates.
ODE_API void dJointGetPUAnchor(dJointID, dVector3 result)
Get the joint anchor point, in world coordinates.
ODE_API dReal dJointGetDHingeDistance(dJointID)
get the set distance from double hinge joint
ODE_API dJointFeedback * dJointGetFeedback(dJointID)
Gets the datastructure that is to receive the feedback.
ODE_API void dJointSetPRAnchor(dJointID, dReal x, dReal y, dReal z)
set anchor
ODE_API void dJointGetPRAxis1(dJointID, dVector3 result)
Get the prismatic axis.
ODE_API void dJointSetDBallAnchor1(dJointID, dReal x, dReal y, dReal z)
set anchor1 for double ball joint
ODE_API void dBodySetMass(dBodyID, const dMass *mass)
Set the mass of a body.
Definition: ode.cpp:482
ODE_API void dJointAddPistonForce(dJointID joint, dReal force)
Applies the given force in the slider's direction.
ODE_API void dJointGetTransmissionContactPoint1(dJointID, dVector3 result)
get the contact point of the first wheel of the Transmission joint.
ODE_API void dJointGetAMotorAxis(dJointID, int anum, dVector3 result)
Get the AMotor axes.
ODE_API int dWorldGetAutoDisableAverageSamplesCount(dWorldID)
Get auto disable sample count for newly created bodies.
Definition: ode.cpp:1885
ODE_API dReal dJointGetSliderPositionRate(dJointID)
Get the slider linear position's time derivative.
ODE_API void dJointGetHinge2Anchor(dJointID, dVector3 result)
Get the joint anchor point, in world coordinates.
ODE_API void dBodyAddForceAtRelPos(dBodyID, dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
Add force at specified point in body in local coordinates.
Definition: ode.cpp:575
ODE_API void dJointSetDHingeAnchor2(dJointID, dReal x, dReal y, dReal z)
set anchor2 for double hinge joint
ODE_API void dWorldSetStepIslandsProcessingMaxThreadCount(dWorldID w, unsigned count)
Set maximum threads to be used for island stepping.
Definition: ode.cpp:1661
ODE_API void dJointSetTransmissionRadius1(dJointID j, dReal radius)
set the radius of the first wheel of the Transmission joint
ODE_API dJointID dJointCreateHinge2(dWorldID, dJointGroupID)
Create a new joint of the hinge2 type.
Definition: ode.cpp:1197
ODE_API void dJointEnable(dJointID)
Manually enable a joint.
ODE_API void dJointAddPUTorque(dJointID j, dReal torque)
Applies the torque about the rotoide axis of the PU joint.
ODE_API dReal dJointGetHingeAngleRate(dJointID)
Get the hinge angle time derivative.
ODE_API int dJointGetAMotorAxisRel(dJointID, int anum)
Get axis.
ODE_API dJointID dJointCreateTransmission(dWorldID, dJointGroupID)
Create a new joint of the Transmission type.
Definition: ode.cpp:1273
ODE_API void dJointSetFixed(dJointID)
Call this on the fixed joint after it has been attached to remember the current desired relative offs...
ODE_API void dJointAddUniversalTorques(dJointID joint, dReal torque1, dReal torque2)
Applies torque1 about the universal's axis 1, torque2 about the universal's axis 2.
ODE_API void dJointSetPUAxisP(dJointID id, dReal x, dReal y, dReal z)
set the axis for the prismatic articulation
ODE_API dReal dWorldGetLinearDampingThreshold(dWorldID w)
Get the world's linear damping threshold.
Definition: ode.cpp:1946
ODE_API void dJointSetPRAxis1(dJointID, dReal x, dReal y, dReal z)
set the axis for the prismatic articulation
ODE_API dReal dBodyGetAutoDisableTime(dBodyID)
Get auto disable time.
Definition: ode.cpp:965
ODE_API void dBodySetFiniteRotationAxis(dBodyID, dReal x, dReal y, dReal z)
sets the finite rotation axis for a body.
Definition: ode.cpp:773
ODE_API void dBodyGetMass(dBodyID, dMass *mass)
Get the mass of a body.
Definition: ode.cpp:502
ODE_API void dBodySetKinematic(dBodyID)
Set rigid body to kinematic state. When in kinematic state the body isn't simulated as a dynamic body...
Definition: ode.cpp:831
ODE_API dReal dWorldGetAngularDampingThreshold(dWorldID w)
Get the world's angular damping threshold.
Definition: ode.cpp:1958
ODE_API dJointID dJointCreateDHinge(dWorldID, dJointGroupID)
Create a new joint of the double hinge type.
Definition: ode.cpp:1266
ODE_API void dJointGetPistonAxis(dJointID, dVector3 result)
Get the prismatic axis (This is also the rotoide axis.
ODE_API dJointID dJointCreateHinge(dWorldID, dJointGroupID)
Create a new joint of the hinge type.
Definition: ode.cpp:1172
ODE_API void dJointGetTransmissionAxis2(dJointID, dVector3 result)
get second axis for the Transmission joint
ODE_API void dJointSetAMotorParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API dReal dWorldGetAutoDisableAngularAverageThreshold(dWorldID)
Get auto disable angular average threshold for newly created bodies.
ODE_API void dJointSetTransmissionAnchor1(dJointID, dReal x, dReal y, dReal z)
set the first anchor for the Transmission joint
ODE_API int dWorldGetAutoDisableSteps(dWorldID)
Get auto disable steps for newly created bodies.
Definition: ode.cpp:1899
ODE_API void dJointGetLMotorAxis(dJointID, int anum, dVector3 result)
Get axis.
ODE_API void dJointGroupEmpty(dJointGroupID)
Empty a joint group.All joints in the joint group will be destroyed, but the joint group itself will ...
Definition: ode.cpp:1319
ODE_API void dJointSetTransmissionBacklash(dJointID j, dReal backlash)
set the backlash of the Transmission joint
Definition: collision_kernel.h:96
ODE_API void dJointSetPUAxis3(dJointID, dReal x, dReal y, dReal z)
set the axis for the prismatic articulation
ODE_API void dJointSetLMotorNumAxes(dJointID, int num)
Set the number of axes that will be controlled by the LMotor.
ODE_API void dJointGetPUAxis3(dJointID, dVector3 result)
Get the prismatic axis.
ODE_API dJointID dJointCreatePU(dWorldID, dJointGroupID)
Create a new joint of the PU (Prismatic and Universal) type.
Definition: ode.cpp:1216
ODE_API const dReal * dBodyGetTorque(dBodyID)
Return the current accumulated torque vector.
Definition: ode.cpp:646
ODE_API void dJointSetDHingeParam(dJointID, int parameter, dReal value)
set double hinge joint parameter
ODE_API void dJointGetPRAxis2(dJointID, dVector3 result)
Get the Rotoide axis.
ODE_API void dJointSetTransmissionParam(dJointID, int parameter, dReal value)
set a Transmission joint parameter
ODE_API dJointID dJointCreateFixed(dWorldID, dJointGroupID)
Create a new joint of the fixed type.
Definition: ode.cpp:1228
ODE_API void dWorldSetAutoDisableAngularThreshold(dWorldID, dReal angular_threshold)
Set auto disable angular threshold for newly created bodies.
Definition: ode.cpp:1878
ODE_API void dJointSetLMotorAxis(dJointID, int anum, int rel, dReal x, dReal y, dReal z)
Set the AMotor axes.
ODE_API dReal dJointGetPRParam(dJointID, int parameter)
get joint parameter
ODE_API void dJointGetTransmissionAnchor1(dJointID, dVector3 result)
get the first anchor of the Transmission joint
ODE_API dReal dJointGetUniversalParam(dJointID, int parameter)
get joint parameter
ODE_API dReal dJointGetTransmissionAngle2(dJointID j)
get the phase, that is the traversed angle for the second wheel of the Transmission joint ...
ODE_API dJointID dJointCreateAMotor(dWorldID, dJointGroupID)
Create a new joint of the A-motor type.
Definition: ode.cpp:1242
ODE_API void dJointGetDHingeAnchor2(dJointID, dVector3 result)
get anchor2 from double hinge joint
ODE_API void dBodySetAutoDisableSteps(dBodyID, int steps)
Set auto disable steps.
Definition: ode.cpp:958
ODE_API void dJointSetPRAxis2(dJointID, dReal x, dReal y, dReal z)
set the axis for the rotoide articulation
ODE_API void dJointSetDHingeAnchor1(dJointID, dReal x, dReal y, dReal z)
set anchor1 for double hinge joint
ODE_API const dReal * dBodyGetRotation(dBodyID)
Get the rotation of a body.
Definition: ode.cpp:424
ODE_API void dWorldSetAutoDisableLinearThreshold(dWorldID, dReal linear_threshold)
Set auto disable linear threshold for newly created bodies.
Definition: ode.cpp:1864
ODE_API void dJointGetDHingeAxis(dJointID, dVector3 result)
get axis for double hinge joint
ODE_API void dJointGetHinge2Axis2(dJointID, dVector3 result)
Get joint axis.
ODE_API void dJointGetHinge2Axis1(dJointID, dVector3 result)
Get joint axis.
ODE_API dReal dJointGetHinge2Angle1Rate(dJointID)
Get time derivative of angle.
ODE_API void dWorldCleanupWorkingMemory(dWorldID w)
Release internal working memory allocated for world.
Definition: ode.cpp:1717
ODE_API dJointID dJointCreatePlane2D(dWorldID, dJointGroupID)
Create a new joint of the plane-2d type.
Definition: ode.cpp:1254
ODE_API int dAreConnected(dBodyID, dBodyID)
Utility function.
Definition: ode.cpp:1547
ODE_API void dJointSetHinge2Param(dJointID, int parameter, dReal value)
set joint parameter
ODE_API dBodyID dJointGetBody(dJointID, int index)
Return the bodies that this joint connects.
ODE_API void dJointGetHinge2Anchor2(dJointID, dVector3 result)
Get the joint anchor point, in world coordinates. This returns the point on body 2. If the joint is perfectly satisfied, this will return the same value as dJointGetHinge2Anchor. If not, this value will be slightly different. This can be used, for example, to see how far the joint has come apart.
ODE_API dReal dJointGetPistonPositionRate(dJointID)
Get the piston linear position's time derivative.
ODE_API void dBodySetData(dBodyID, void *data)
Set the body's user-data pointer.
Definition: ode.cpp:331
ODE_API void dBodySetAutoDisableLinearThreshold(dBodyID, dReal linear_average_threshold)
Set auto disable linear average threshold.
Definition: ode.cpp:892
ODE_API void dWorldImpulseToForce(dWorldID, dReal stepsize, dReal ix, dReal iy, dReal iz, dVector3 force)
Converts an impulse to a force.
Definition: ode.cpp:1842
ODE_API void dBodySetAngularVel(dBodyID, dReal x, dReal y, dReal z)
Set the angular velocity of a body.
Definition: ode.cpp:398
ODE_API void dBodySetAutoDisableTime(dBodyID, dReal time)
Set auto disable time.
Definition: ode.cpp:972
ODE_API void dJointSetSliderParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API dReal dJointGetTransmissionBacklash(dJointID j)
get the backlash of the Transmission joint
ODE_API void dJointSetDHingeAxis(dJointID, dReal x, dReal y, dReal z)
set axis for double hinge joint
ODE_API void dJointSetUniversalAxis2(dJointID, dReal x, dReal y, dReal z)
set axis
ODE_API dJointID dJointCreateBall(dWorldID, dJointGroupID)
Create a new joint of the ball type.
Definition: ode.cpp:1165
ODE_API dReal dJointGetPistonParam(dJointID, int parameter)
get joint parameter
ODE_API void dJointSetBallAnchor(dJointID, dReal x, dReal y, dReal z)
Set the joint anchor point.The joint will try to keep this point on each body together. The input is specified in world coordinates.
ODE_API void dWorldSetLinearDampingThreshold(dWorldID w, dReal threshold)
Set the world's linear damping threshold.
Definition: ode.cpp:1952
ODE_API void dJointSetPUAxis2(dJointID, dReal x, dReal y, dReal z)
set the axis for the second axis or the universal articulation
ODE_API dReal dJointGetPistonPosition(dJointID)
Get the Piston linear position (i.e. the piston's extension)
ODE_API dReal dJointGetPUAngle1(dJointID)
Get angle.
ODE_API void dJointSetPUAnchor(dJointID, dReal x, dReal y, dReal z)
set anchor
ODE_API dReal dJointGetDBallParam(dJointID, int parameter)
get double ball joint parameter
ODE_API void dJointSetTransmissionAnchor2(dJointID, dReal x, dReal y, dReal z)
set the second anchor for the Transmission joint
An interface structure with function pointers to be provided by threading implementation.
Definition: threading.h:370
ODE_API int dBodyGetGravityMode(dBodyID b)
Get whether the body is influenced by the world's gravity or not.
Definition: ode.cpp:876
ODE_API dReal dJointGetHinge2Angle1(dJointID)
Get angle.
ODE_API dReal dBodyGetMaxAngularSpeed(dBodyID b)
Get the body's maximum angular speed.
Definition: ode.cpp:1093
ODE_API void dJointSetSliderAxis(dJointID, dReal x, dReal y, dReal z)
set the joint axis
ODE_API void dJointGetDBallAnchor1(dJointID, dVector3 result)
get anchor1 from double ball joint
ODE_API void dJointGetHingeAxis(dJointID, dVector3 result)
get axis
ODE_API void dWorldSetDamping(dWorldID w, dReal linear_scale, dReal angular_scale)
Convenience function to set body linear and angular scales.
Definition: ode.cpp:2002
ODE_API void dJointGetPUAxisP(dJointID id, dVector3 result)
Get the prismatic axis.
ODE_API void dJointSetTransmissionAxis2(dJointID, dReal x, dReal y, dReal z)
set second axis for the Transmission joint
ODE_API void dJointGetUniversalAngles(dJointID, dReal *angle1, dReal *angle2)
Get both angles at the same time.
ODE_API void dBodySetRotation(dBodyID, const dMatrix3 R)
Set the orientation of a body.
Definition: ode.cpp:358
ODE_API void dJointSetHingeParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API void dWorldSetAngularDampingThreshold(dWorldID w, dReal threshold)
Set the world's angular damping threshold.
Definition: ode.cpp:1964
ODE_API void dJointSetLMotorParam(dJointID, int parameter, dReal value)
set joint parameter
ODE_API void dJointAddHingeTorque(dJointID joint, dReal torque)
Applies the torque about the hinge axis.
ODE_API dReal dBodyGetAutoDisableAngularThreshold(dBodyID)
Get auto disable angular average threshold.
Definition: ode.cpp:899
ODE_API dWorldID dWorldCreate(void)
Create a new, empty world and return its ID number.
Definition: ode.cpp:1571
ODE_API dReal dJointGetPUAngle2Rate(dJointID)
ODE_API void dWorldSetAutoDisableFlag(dWorldID, int do_auto_disable)
Set auto disable flag for newly created bodies.
Definition: ode.cpp:1934
ODE_API dBodyID dBodyCreate(dWorldID)
Create a body in given world.
ODE_API void dWorldSetCFM(dWorldID, dReal cfm)
Set the global CFM (constraint force mixing) value.
Definition: ode.cpp:1647
ODE_API dJointID dBodyGetJoint(dBodyID, int index)
Return a joint attached to this body, given by index.
Definition: ode.cpp:814
ODE_API int dBodyIsEnabled(dBodyID)
Check wether a body is enabled.
Definition: ode.cpp:861
ODE_API dReal dWorldGetContactSurfaceLayer(dWorldID)
Get the depth of the surface layer around all geometry objects.
Definition: ode.cpp:2075
ODE_API int dBodyGetGyroscopicMode(dBodyID b)
Get the body's gyroscopic state.
Definition: ode.cpp:1130
ODE_API int dJointGetNumBodies(dJointID)
Return the number of bodies attached to the joint.
ODE_API void dJointGetDBallAnchor2(dJointID, dVector3 result)
get anchor2 from double ball joint
ODE_API const dReal * dBodyGetPosition(dBodyID)
Get the position of a body.
Definition: ode.cpp:407
ODE_API dReal dWorldGetMaxAngularSpeed(dWorldID w)
Get the default maximum angular speed.
Definition: ode.cpp:2009
ODE_API void dWorldSetMaxAngularSpeed(dWorldID w, dReal max_speed)
Set the default maximum angular speed for new bodies.
Definition: ode.cpp:2015
ODE_API const dReal * dBodyGetQuaternion(dBodyID)
Get the rotation of a body.
Definition: ode.cpp:450
ODE_API void dJointGetUniversalAnchor(dJointID, dVector3 result)
Get the joint anchor point, in world coordinates.
ODE_API void dBodyAddForceAtPos(dBodyID, dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
Add force at specified point in body in global coordinates.
Definition: ode.cpp:557
ODE_API dReal dWorldGetAutoDisableLinearAverageThreshold(dWorldID)
Get auto disable linear average threshold for newly created bodies.
ODE_API void dJointGetPUAxis2(dJointID, dVector3 result)
Get the second axis of the Universal component of the joint.