Pārlūkot izejas kodu

Added get/set_param

enn0x 13 gadi atpakaļ
vecāks
revīzija
907872267a

+ 22 - 0
panda/src/bullet/bulletConstraint.cxx

@@ -83,3 +83,25 @@ get_rigid_body_b() {
   return (BulletRigidBodyNode *)ptr()->getRigidBodyB().getUserPointer();
 }
 
+////////////////////////////////////////////////////////////////////
+//     Function: BulletConstraint::set_param
+//       Access: Published
+//  Description:
+////////////////////////////////////////////////////////////////////
+void BulletConstraint::
+set_param(ConstraintParam num, PN_stdfloat value, int axis) {
+
+  ptr()->setParam((btConstraintParams)num, (btScalar)value, axis);
+}
+
+////////////////////////////////////////////////////////////////////
+//     Function: BulletConstraint::get_param
+//       Access: Published
+//  Description:
+////////////////////////////////////////////////////////////////////
+PN_stdfloat BulletConstraint::
+get_param(ConstraintParam num, int axis) {
+
+  return (PN_stdfloat)ptr()->getParam((btConstraintParams)num, axis);
+}
+

+ 10 - 0
panda/src/bullet/bulletConstraint.h

@@ -41,6 +41,16 @@ PUBLISHED:
   PN_stdfloat get_applied_impulse() const;
   PN_stdfloat get_debug_draw_size();
 
+  enum ConstraintParam {
+    CP_erp = 1,
+    CP_stop_erp,
+    CP_cfm,
+    CP_stop_cfm
+  };
+
+  void set_param(ConstraintParam num, PN_stdfloat value, int axis=-1);
+  PN_stdfloat get_param(ConstraintParam num, int axis=-1);
+
 public:
   virtual btTypedConstraint *ptr() const = 0;