diff options
Diffstat (limited to 'servers/physics/joints/hinge_joint_sw.h')
-rw-r--r-- | servers/physics/joints/hinge_joint_sw.h | 46 |
1 files changed, 20 insertions, 26 deletions
diff --git a/servers/physics/joints/hinge_joint_sw.h b/servers/physics/joints/hinge_joint_sw.h index 8469fd1ca0..013d9afdbf 100644 --- a/servers/physics/joints/hinge_joint_sw.h +++ b/servers/physics/joints/hinge_joint_sw.h @@ -34,9 +34,8 @@ Adapted to Godot from the Bullet library. #ifndef HINGE_JOINT_SW_H #define HINGE_JOINT_SW_H -#include "servers/physics/joints_sw.h" #include "servers/physics/joints/jacobian_entry_sw.h" - +#include "servers/physics/joints_sw.h" /* Bullet Continuous Collision Detection and Physics Library @@ -53,8 +52,6 @@ subject to the following restrictions: 3. This notice may not be removed or altered from any source distribution. */ - - class HingeJointSW : public JointSW { union { @@ -66,41 +63,39 @@ class HingeJointSW : public JointSW { BodySW *_arr[2]; }; - JacobianEntrySW m_jac[3]; //3 orthogonal linear constraints - JacobianEntrySW m_jacAng[3]; //2 orthogonal angular constraints+ 1 for limit/motor + JacobianEntrySW m_jac[3]; //3 orthogonal linear constraints + JacobianEntrySW m_jacAng[3]; //2 orthogonal angular constraints+ 1 for limit/motor Transform m_rbAFrame; // constraint axii. Assumes z is hinge axis. Transform m_rbBFrame; - real_t m_motorTargetVelocity; - real_t m_maxMotorImpulse; + real_t m_motorTargetVelocity; + real_t m_maxMotorImpulse; - real_t m_limitSoftness; - real_t m_biasFactor; - real_t m_relaxationFactor; + real_t m_limitSoftness; + real_t m_biasFactor; + real_t m_relaxationFactor; - real_t m_lowerLimit; - real_t m_upperLimit; + real_t m_lowerLimit; + real_t m_upperLimit; - real_t m_kHinge; + real_t m_kHinge; - real_t m_limitSign; - real_t m_correction; + real_t m_limitSign; + real_t m_correction; - real_t m_accLimitImpulse; + real_t m_accLimitImpulse; real_t tau; - bool m_useLimit; - bool m_angularOnly; - bool m_enableAngularMotor; - bool m_solveLimit; + bool m_useLimit; + bool m_angularOnly; + bool m_enableAngularMotor; + bool m_solveLimit; real_t m_appliedImpulse; - public: - virtual PhysicsServer::JointType get_type() const { return PhysicsServer::JOINT_HINGE; } virtual bool setup(real_t p_step); @@ -114,9 +109,8 @@ public: void set_flag(PhysicsServer::HingeJointFlag p_flag, bool p_value); bool get_flag(PhysicsServer::HingeJointFlag p_flag) const; - HingeJointSW(BodySW* rbA,BodySW* rbB, const Transform& frameA, const Transform& frameB); - HingeJointSW(BodySW* rbA,BodySW* rbB, const Vector3& pivotInA,const Vector3& pivotInB, const Vector3& axisInA,const Vector3& axisInB); - + HingeJointSW(BodySW *rbA, BodySW *rbB, const Transform &frameA, const Transform &frameB); + HingeJointSW(BodySW *rbA, BodySW *rbB, const Vector3 &pivotInA, const Vector3 &pivotInB, const Vector3 &axisInA, const Vector3 &axisInB); }; #endif // HINGE_JOINT_SW_H |