public abstract void RemoveConstraintRef(BulletBody obj, BulletConstraint constrain);
Example #2
0
     public override bool SliderMotor(BulletConstraint pConstraint, int forceVel, int linAng, float val)
     {
         SliderConstraint constraint = (pConstraint as BulletConstraintXNA).constrain as SliderConstraint;
 		switch (forceVel)
 		{
 			case SLIDER_MOTOR_VELOCITY:
 				switch (linAng)
 				{
 					case SLIDER_LINEAR:
 						constraint.SetTargetLinMotorVelocity(val);
 						break;
 					case SLIDER_ANGULAR:
 						constraint.SetTargetAngMotorVelocity(val);
 						break;
 				}
 				break;
 			case SLIDER_MAX_MOTOR_FORCE:
 				switch (linAng)
 				{
 					case SLIDER_LINEAR:
 						constraint.SetMaxLinMotorForce(val);
 						break;
 					case SLIDER_ANGULAR:
 						constraint.SetMaxAngMotorForce(val);
 						break;
 				}
 				break;
 		}
         return true;
     }
 public abstract bool SetConstraintParam(BulletConstraint constrain, ConstraintParams paramIndex, float value,
     ConstraintParamAxis axis);
 // =====================================================================================
 // btCollisionObject entries
 public abstract Vector3 GetAnisotripicFriction(BulletConstraint constrain);
 public abstract bool SpringSetEquilibriumPoint(BulletConstraint constrain, int index, float equilibriumPoint);
 public abstract bool SliderSet(BulletConstraint constrain, int softRestDamp, int dirLimOrtho, int linAng, float val);
 public abstract bool HingeSetLimits(BulletConstraint constrain, float low, float high, float softness, float bias, float relaxation);
 public abstract bool TranslationalLimitMotor(BulletConstraint constrain, float enable, float targetVel,
     float maxMotorForce);
 public abstract bool TranslationalLimitMotor(BulletConstraint constrain, float enable, float targetVel,
                                              float maxMotorForce);
 public abstract bool SetBreakingImpulseThreshold(BulletConstraint constrain, float threshold);
 public abstract bool UseFrameOffset(BulletConstraint constrain, float enable);
 public abstract bool SetAngularLimits(BulletConstraint constrain, Vector3 low, Vector3 hi);
 public abstract bool SetFrames(BulletConstraint constrain,
                                Vector3 frameA, Quaternion frameArot, Vector3 frameB, Quaternion frameBrot);
 public abstract void SetConstraintNumSolverIterations(BulletConstraint constrain, float iterations);
 public abstract bool SpringEnable(BulletConstraint constrain, int index, float numericTrueFalse);
 public abstract bool SetAngularLimits(BulletConstraint constrain, Vector3 low, Vector3 hi);
 public abstract bool SpringSetEquilibriumPoint(BulletConstraint constrain, int index, float equilibriumPoint);
 public abstract bool HingeSetLimits(BulletConstraint constrain, float low, float high, float softness, float bias, float relaxation);
 public abstract bool SpringSetStiffness(BulletConstraint constrain, int index, float stiffnesss);
 public abstract bool SpringSetDamping(BulletConstraint constrain, int index, float damping);
 public abstract bool SpringSetDamping(BulletConstraint constrain, int index, float damping);
 public abstract bool SliderMotor(BulletConstraint constrain, int forceVel, int linAng, float val);
 public abstract bool SliderSetLimits(BulletConstraint constrain, int lowerUpper, int linAng, float val);
 public abstract bool AddConstraintToWorld(BulletWorld world, BulletConstraint constrain,
     bool disableCollisionsBetweenLinkedObjects);
 public abstract bool SliderSet(BulletConstraint constrain, int softRestDamp, int dirLimOrtho, int linAng, float val);
 public abstract bool HasAnisotripicFriction(BulletConstraint constrain);
 public abstract bool SliderMotorEnable(BulletConstraint constrain, int linAng, float numericTrueFalse);
 public abstract void SetConstraintNumSolverIterations(BulletConstraint constrain, float iterations);
 public abstract bool SliderMotor(BulletConstraint constrain, int forceVel, int linAng, float val);
 public abstract void SetConstraintEnable(BulletConstraint constrain, float numericTrueFalse);
 public abstract bool CalculateTransforms(BulletConstraint constrain);
 public abstract bool SetFrames(BulletConstraint constrain,
     Vector3 frameA, Quaternion frameArot, Vector3 frameB, Quaternion frameBrot);
 public abstract bool SetConstraintParam(BulletConstraint constrain, ConstraintParams paramIndex, float value,
                                         ConstraintParamAxis axis);
 public abstract bool UseFrameOffset(BulletConstraint constrain, float enable);
 public abstract bool DestroyConstraint(BulletWorld world, BulletConstraint constrain);
 public abstract bool SetBreakingImpulseThreshold(BulletConstraint constrain, float threshold);
 public abstract bool AddConstraintToWorld(BulletWorld world, BulletConstraint constrain,
                                           bool disableCollisionsBetweenLinkedObjects);
 public abstract bool SpringEnable(BulletConstraint constrain, int index, float numericTrueFalse);
 public abstract bool RemoveConstraintFromWorld(BulletWorld world, BulletConstraint constrain);
 public abstract bool SpringSetStiffness(BulletConstraint constrain, int index, float stiffnesss);
 // =====================================================================================
 // btCollisionObject entries
 public abstract Vector3 GetAnisotripicFriction(BulletConstraint constrain);
 public abstract bool SliderSetLimits(BulletConstraint constrain, int lowerUpper, int linAng, float val);
 public abstract Vector3 SetAnisotripicFriction(BulletConstraint constrain, Vector3 frict);
 public abstract bool SliderMotorEnable(BulletConstraint constrain, int linAng, float numericTrueFalse);
 public abstract bool HasAnisotripicFriction(BulletConstraint constrain);
 public abstract bool CalculateTransforms(BulletConstraint constrain);
 public abstract void AddConstraintRef(BulletBody obj, BulletConstraint constrain);
 public abstract bool DestroyConstraint(BulletWorld world, BulletConstraint constrain);
 public abstract void RemoveConstraintRef(BulletBody obj, BulletConstraint constrain);
 public abstract bool RemoveConstraintFromWorld(BulletWorld world, BulletConstraint constrain);
 public virtual void DumpConstraint(BulletWorld sim, BulletConstraint constrain)
 {
 }
 public abstract Vector3 SetAnisotripicFriction(BulletConstraint constrain, Vector3 frict);
Example #53
0
     public override bool SliderSet(BulletConstraint pConstraint, int softRestDamp, int dirLimOrtho, int linAng, float val)
     {
         SliderConstraint constraint = (pConstraint as BulletConstraintXNA).constrain as SliderConstraint;
 		switch (softRestDamp)
 		{
 			case SLIDER_SET_SOFTNESS:
 				switch (dirLimOrtho)
 				{
 					case SLIDER_SET_DIRECTION:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetSoftnessDirLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetSoftnessDirAng(val); break;
 						}
 						break;
 					case SLIDER_SET_LIMIT:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetSoftnessLimLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetSoftnessLimAng(val); break;
 						}
 						break;
 					case SLIDER_SET_ORTHO:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetSoftnessOrthoLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetSoftnessOrthoAng(val); break;
 						}
 						break;
 				}
 				break;
 			case SLIDER_SET_RESTITUTION:
 				switch (dirLimOrtho)
 				{
 					case SLIDER_SET_DIRECTION:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetRestitutionDirLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetRestitutionDirAng(val); break;
 						}
 						break;
 					case SLIDER_SET_LIMIT:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetRestitutionLimLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetRestitutionLimAng(val); break;
 						}
 						break;
 					case SLIDER_SET_ORTHO:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetRestitutionOrthoLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetRestitutionOrthoAng(val); break;
 						}
 						break;
 				}
 				break;
 			case SLIDER_SET_DAMPING:
 				switch (dirLimOrtho)
 				{
 					case SLIDER_SET_DIRECTION:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetDampingDirLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetDampingDirAng(val); break;
 						}
 						break;
 					case SLIDER_SET_LIMIT:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetDampingLimLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetDampingLimAng(val); break;
 						}
 						break;
 					case SLIDER_SET_ORTHO:
 						switch (linAng)
 						{
 							case SLIDER_LINEAR: constraint.SetDampingOrthoLin(val); break;
 							case SLIDER_ANGULAR: constraint.SetDampingOrthoAng(val); break;
 						}
 						break;
 				}
 				break;
 		}
         return true;
     }
 public abstract void AddConstraintRef(BulletBody obj, BulletConstraint constrain);
Example #55
0
     public override bool SliderMotorEnable(BulletConstraint pConstraint, int linAng, float numericTrueFalse)
     {
         SliderConstraint constraint = (pConstraint as BulletConstraintXNA).constrain as SliderConstraint;
 		switch (linAng)
 		{
 			case SLIDER_LINEAR:
 				constraint.SetPoweredLinMotor(numericTrueFalse == 0.0 ? false : true);
 				break;
 			case SLIDER_ANGULAR:
 				constraint.SetPoweredAngMotor(numericTrueFalse == 0.0 ? false : true);
 				break;
 		}
         return true;
     }
 public virtual void DumpConstraint(BulletWorld sim, BulletConstraint constrain)
 {
 }
 public abstract void SetConstraintEnable(BulletConstraint constrain, float numericTrueFalse);