![]()
gePhysicsJoint
Description: Rigid body joint interface
Source file: …\genesis3d\OpenSource\Source\Physics\PhysicsJoint.h
Functions:
Create, Destroy, GetType, GetLocationA, GetLocationB, SetLocationA, SetLocationB, GetLocationAInWorldSpace, GetLocationBInWorldSpace, SetLocationAInWorldSpace, SetLocationBInWorldSpace, GetObject1, GetObject2, GetAssemblyRate, SetAssemblyRate gePhysicsJoint_Kind, gePhysicsJointAdditions for Genesis3D v1.6: None
![]()
Types:
gePhysicsJoint_Kind
Return to Contents
gePhysicsJoint
typedef struct gePhysicsJoint gePhysicsJoint;
NOTE: The contents of this structure have been intentionally left out of the interface, by the designers of this module. Think of this as a handle only.
Return to Contents
![]()
Functions:
![]()
GENESISAPI gePhysicsJoint* GENESISCC gePhysicsJoint_Create(gePhysicsJoint_Kind Kind, const geVec3d* Location, float assemblyRate, gePhysicsObject* PS1, gePhysicsObject* PS2, float physicsScale);
Creates a joint between two gePhysicsObjects
Kind: Should be JT_WORLD (a joint between PS1 and world) or JT_SPHERICAL (a joint between PS1 and PS2)
Return to Contents
![]()
GENESISAPI geBoolean GENESISCC gePhysicsJoint_Destroy(gePhysicsJoint** ppPhysjnt);
Destroys a joint
Return to Contents
![]()
GENESISAPI gePhysicsJoint_Kind GENESISCC gePhysicsJoint_GetType(const gePhysicsJoint* pPhysjnt);
Returns the type of the joint
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_GetLocationA(const gePhysicsJoint* pPhysjnt, geVec3d* pLoc);
LocationA is the location of PS1, as specified during Create.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_GetLocationB(const gePhysicsJoint* pPhysjnt, geVec3d* pLoc);
This is the location of PS2, as specified during Create. If joint Kind was JT_WORLD, then LocationB will be equal to the location of the joint itself, as specifed during Create.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_SetLocationA(gePhysicsJoint* pPhysjnt, const geVec3d* pLoc);
Will set LocationA. See notes in GetLocationA.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_SetLocationB(gePhysicsJoint* pPhysjnt, const geVec3d* pLoc);
Will set LocationB. See notes in GetLocationB.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_GetLocationAInWorldSpace(const gePhysicsJoint* pPhysjnt, geVec3d* pLoc);
Gets LocationA in WorldSpace. See notes in GetLocationA.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_GetLocationBInWorldSpace(const gePhysicsJoint* pPhysjnt, geVec3d* pLoc);
Will get LocationB in WorldSpace. See notes in GetLocationB.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_SetLocationAInWorldSpace(gePhysicsJoint* pPhysjnt, const geVec3d* pLoc);
Sets LocationA in WorldSpace. See notes in GetLocationA.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_SetLocationBInWorldSpace(gePhysicsJoint* pPhysjnt, const geVec3d* pLoc);
Sets LocationB in WorldSpace. See notes in GetLocationB.
Return to Contents
![]()
GENESISAPI gePhysicsObject* GENESISCC gePhysicsJoint_GetObject1(const gePhysicsJoint* pPhysjnt);
Will return first Object (PS1) as specified during Create.
Return to Contents
![]()
GENESISAPI gePhysicsObject* GENESISCC gePhysicsJoint_GetObject2(const gePhysicsJoint* pPhysjnt);
Will return second Object (PS2) as specified during Create.
Return to Contents
![]()
GENESISAPI float GENESISCC gePhysicsJoint_GetAssemblyRate(const gePhysicsJoint* pPhysjnt);
Will get assemblyRate. Not sure how this is used. Was initially specified during Create.
Return to Contents
![]()
GENESISAPI void GENESISCC gePhysicsJoint_SetAssemblyRate(gePhysicsJoint* pPhysjnt, float assemblyRate);
Will set assemblyRate. Not sure how this is used, or what value range should be.
Return to Contents
![]()