com.jme3.bullet.joints
Class SixDofJoint

java.lang.Object
  extended by com.jme3.bullet.joints.PhysicsJoint
      extended by com.jme3.bullet.joints.SixDofJoint
All Implemented Interfaces:
Savable
Direct Known Subclasses:
SixDofSpringJoint

public class SixDofJoint
extends PhysicsJoint

From bullet manual:
This generic constraint can emulate a variety of standard constraints, by configuring each of the 6 degrees of freedom (dof). The first 3 dof axis are linear axis, which represent translation of rigidbodies, and the latter 3 dof axis represent the angular motion. Each axis can be either locked, free or limited. On construction of a new btGeneric6DofConstraint, all axis are locked. Afterwards the axis can be reconfigured. Note that several combinations that include free and/or limited angular degrees of freedom are undefined.


Field Summary
 
Fields inherited from class com.jme3.bullet.joints.PhysicsJoint
collisionBetweenLinkedBodys, nodeA, nodeB, objectId, pivotA, pivotB
 
Constructor Summary
SixDofJoint()
           
SixDofJoint(PhysicsRigidBody nodeA, PhysicsRigidBody nodeB, Vector3f pivotA, Vector3f pivotB, boolean useLinearReferenceFrameA)
           
SixDofJoint(PhysicsRigidBody nodeA, PhysicsRigidBody nodeB, Vector3f pivotA, Vector3f pivotB, Matrix3f rotA, Matrix3f rotB, boolean useLinearReferenceFrameA)
           
 
Method Summary
 RotationalLimitMotor getRotationalLimitMotor(int index)
          returns one of the three RotationalLimitMotors of this 6DofJoint which allow manipulating the rotational axes
 TranslationalLimitMotor getTranslationalLimitMotor()
          returns the TranslationalLimitMotor of this 6DofJoint which allows manipulating the translational axis
 void read(JmeImporter im)
           
 void setAngularLowerLimit(Vector3f vector)
           
 void setAngularUpperLimit(Vector3f vector)
           
 void setLinearLowerLimit(Vector3f vector)
           
 void setLinearUpperLimit(Vector3f vector)
           
 void write(JmeExporter ex)
           
 
Methods inherited from class com.jme3.bullet.joints.PhysicsJoint
destroy, finalize, getAppliedImpulse, getBodyA, getBodyB, getObjectId, getPivotA, getPivotB, isCollisionBetweenLinkedBodys, setCollisionBetweenLinkedBodys
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SixDofJoint

public SixDofJoint()

SixDofJoint

public SixDofJoint(PhysicsRigidBody nodeA,
                   PhysicsRigidBody nodeB,
                   Vector3f pivotA,
                   Vector3f pivotB,
                   Matrix3f rotA,
                   Matrix3f rotB,
                   boolean useLinearReferenceFrameA)
Parameters:
pivotA - local translation of the joint connection point in node A
pivotB - local translation of the joint connection point in node B

SixDofJoint

public SixDofJoint(PhysicsRigidBody nodeA,
                   PhysicsRigidBody nodeB,
                   Vector3f pivotA,
                   Vector3f pivotB,
                   boolean useLinearReferenceFrameA)
Parameters:
pivotA - local translation of the joint connection point in node A
pivotB - local translation of the joint connection point in node B
Method Detail

getTranslationalLimitMotor

public TranslationalLimitMotor getTranslationalLimitMotor()
returns the TranslationalLimitMotor of this 6DofJoint which allows manipulating the translational axis

Returns:
the TranslationalLimitMotor

getRotationalLimitMotor

public RotationalLimitMotor getRotationalLimitMotor(int index)
returns one of the three RotationalLimitMotors of this 6DofJoint which allow manipulating the rotational axes

Parameters:
index - the index of the RotationalLimitMotor
Returns:
the RotationalLimitMotor at the given index

setLinearUpperLimit

public void setLinearUpperLimit(Vector3f vector)

setLinearLowerLimit

public void setLinearLowerLimit(Vector3f vector)

setAngularUpperLimit

public void setAngularUpperLimit(Vector3f vector)

setAngularLowerLimit

public void setAngularLowerLimit(Vector3f vector)

read

public void read(JmeImporter im)
          throws java.io.IOException
Specified by:
read in interface Savable
Overrides:
read in class PhysicsJoint
Throws:
java.io.IOException

write

public void write(JmeExporter ex)
           throws java.io.IOException
Specified by:
write in interface Savable
Overrides:
write in class PhysicsJoint
Throws:
java.io.IOException