40 #ifndef _physicsconetwistconstraint_h
41 #define _physicsconetwistconstraint_h
43 #include "Physics/dualtransformconstraint.h"
45 class btConeTwistConstraint;
67 virtual void DestroyConstraint();
96 Boole IsPassedSwingLimit()
const;
99 Real GetTwistAngle()
const;
102 virtual void SetPivotATransform(
const Transform& TransA);
104 virtual void SetPivotBTransform(
const Transform& TransB);
106 virtual Transform GetPivotATransform()
const;
108 virtual Transform GetPivotBTransform()
const;
115 virtual void EnableMotor(
const Boole Enable);
118 virtual Boole IsMotorEnabled()
const;
120 virtual void SetAngularOnly(
const Boole AngularOnly);
121 virtual Boole GetAngularOnly()
const;
131 virtual void SetLimit(
const Integer LimitIndex,
const Real LimitValue);
143 virtual void SetLimits(
const Real SwingSpan1,
const Real SwingSpan2,
const Real TwistSpan,
const Real Softness = 1.0,
const Real BiasFactor = 0.3,
const Real RelaxationFactor = 1.0);
151 virtual Real GetLimit(
const Integer LimitIndex)
const;
154 virtual Real GetSwingSpan1()
const;
157 virtual Real GetSwingSpan2()
const;
160 virtual Real GetTwistSpan()
const;
163 virtual Real GetLimitSoftness()
const;
166 virtual Real GetBiasFactor()
const;
169 virtual Real GetRelaxationFactor()
const;
171 virtual void SetDamping(
const Real Damping);
172 virtual Real GetDamping()
const;
173 virtual void SetMaxMotorImpulse(
const Real MaxMotorImpulse);
174 virtual void SetMaxMotorImpulseNormalized(
const Real MaxMotorImpulse);
175 virtual Boole IsMaxMotorImpulseNormalized()
const;
176 virtual Real GetMaxMotorImpulse()
const;
177 virtual void SetFixThresh(
const Real FixThresh);
178 virtual Real GetFixThresh()
const;
179 virtual void SetMotorTarget(
const Quaternion& Quat);
180 virtual void SetMotorTargetInConstraintSpace(
const Quaternion& Quat);
188 virtual ParamList GetValidParamsOnAxis(
int Axis)
const;
190 virtual AxisList GetValidLinearAxes()
const;
192 virtual AxisList GetValidAngularAxes()
const;
200 virtual void ProtoSerializeProperties(
XML::Node& SelfRoot)
const;
202 virtual void ProtoDeSerializeProperties(
const XML::Node& SelfRoot);
205 virtual String GetDerivedSerializableName()
const;
208 static String GetSerializableName();
214 virtual btTypedConstraint* _GetConstraintBase()
const;
std::vector< int > AxisList
Used to Store lists of Int Axis for return types.
bool Boole
Generally acts a single bit, true or false.
int Integer
A datatype used to represent any integer close to.
float Real
A Datatype used to represent a real floating point number.
This is a constraint that will limit the movement allowed from one body to within a cone area around ...
btConeTwistConstraint * ConeTwist
The internal constraint that this class encapsulates.
A light-weight handle for manipulating nodes in DOM tree.
uint32_t UInt32
An 32-bit unsigned integer.
ConstraintParam
Used by constraints for setting some parameters.
This is a proxy from which rigid body proxys are handled.
std::vector< ConstraintParam > ParamList
Used to Store lists of param for return types.
This is simply a place for storing all the Physics Related functions.
The bulk of the engine components go in this namspace.
This is used to store information about rotation in 3d space.
std::string String
A datatype used to a series of characters.