Project

General

Profile

SO3Engine
OgreNewt::BallAndSocket Class Reference

Ball and Socket joint. More...

#include <OgreNewt_BasicJoints.h>

Inheritance diagram for OgreNewt::BallAndSocket:
OgreNewt::Joint

Public Member Functions

 BallAndSocket (const OgreNewt::Body *child, const OgreNewt::Body *parent, const Ogre::Vector3 &pos)
 constructor
 
 ~BallAndSocket ()
 destructor.
 
Ogre::Vector3 getJointAngle ()
 retrieve the current joint angle
 
Ogre::Vector3 getJointOmega ()
 retrieve the current joint omega
 
Ogre::Vector3 getJointForce ()
 retrieve the current joint force.
 
- Public Member Functions inherited from OgreNewt::Joint
 Joint ()
 constructor
 
virtual ~Joint ()
 destructor
 
BodygetBody0 () const
 get the pointer to the first rigid body
 
BodygetBody1 () const
 get the pointer to the first rigid body
 
const OgreNewt::WorldgetWorld ()
 get the pointer to the world
 
virtual void submitConstraint (Ogre::Real timeStep, int threadIndex)
 must be define for a functioning joint.
 
virtual void showDebugData (Ogre::SceneNode *debugRootNode)
 show joint visual debugging data
 
int getCollisionState () const
 returns collision state
 
void setCollisionState (int state) const
 sets the collision state
 
Ogre::Real getStiffness () const
 get joint stiffness
 
void setStiffness (Ogre::Real stiffness) const
 set joint stiffness
 

Additional Inherited Members

- Protected Member Functions inherited from OgreNewt::Joint
void addLinearRow (const Ogre::Vector3 &pt0, const Ogre::Vector3 &pt1, const Ogre::Vector3 &dir) const
 
void addAngularRow (Ogre::Radian relativeAngleError, const Ogre::Vector3 &dir) const
 
void addGeneralRow (const Ogre::Vector3 &linear0, const Ogre::Vector3 &angular0, const Ogre::Vector3 &linear1, const Ogre::Vector3 &angular1) const
 
void setRowMinimumFriction (Ogre::Real friction) const
 
void setRowMaximumFriction (Ogre::Real friction) const
 
void setRowStiffness (Ogre::Real stiffness) const
 
void setRowAcceleration (Ogre::Real accel) const
 
void setRowSpringDamper (Ogre::Real springK, Ogre::Real springD) const
 
void SetSupportJoint (CustomJoint *supportJoint)
 SetSupportJoint.
 
CustomJoint * GetSupportJoint () const
 GetSupportJoint.
 
- Static Protected Member Functions inherited from OgreNewt::Joint
static void _CDECL destructorCallback (const CustomJoint *me)
 joint destructor callback glue
 
static void _CDECL submitConstraintCallback (const CustomJoint *me, dFloat timestep, int threadIndex)
 submintContraint
 
- Protected Attributes inherited from OgreNewt::Joint
CustomJoint * m_joint
 

Detailed Description

Ball and Socket joint.

simple ball and socket joint, without limits.

Definition at line 68 of file OgreNewt_BasicJoints.h.

Constructor & Destructor Documentation

◆ BallAndSocket()

OgreNewt::BallAndSocket::BallAndSocket ( const OgreNewt::Body child,
const OgreNewt::Body parent,
const Ogre::Vector3 &  pos 
)

constructor

Parameters
childpointer to the child rigid body.
parentpointer to the parent rigid body. pass NULL to make the world itself the parent (aka a rigid joint)
posposition of the joint in global space

Definition at line 88 of file OgreNewt_BasicJoints.cpp.

◆ ~BallAndSocket()

OgreNewt::BallAndSocket::~BallAndSocket ( )

destructor.

Definition at line 101 of file OgreNewt_BasicJoints.cpp.

Member Function Documentation

◆ getJointAngle()

Ogre::Vector3 OgreNewt::BallAndSocket::getJointAngle ( )

retrieve the current joint angle

Definition at line 106 of file OgreNewt_BasicJoints.cpp.

◆ getJointForce()

Ogre::Vector3 OgreNewt::BallAndSocket::getJointForce ( )

retrieve the current joint force.

This can be used to find the "stress" on the joint. you can do special effects like break the joint if the force exceedes some value, etc.

Definition at line 134 of file OgreNewt_BasicJoints.cpp.

◆ getJointOmega()

Ogre::Vector3 OgreNewt::BallAndSocket::getJointOmega ( )

retrieve the current joint omega

Definition at line 120 of file OgreNewt_BasicJoints.cpp.


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