与box2d腹板的旋转关节,车轮不绕自己的轴转动

时间:2016-07-19 15:24:56

标签: javascript node.js box2d box2dweb box2d-joints

我正在尝试在node.js服务器中使用旋转关节,但是我的滚轮并没有围绕它自己的轴而是在身体周围。

这是我的代码:

var joint_def = new b2RevoluteJointDef();
       joint_def.Initialize(this.body , wheel, wheel.GetWorldCenter());

       //after enablemotor , setmotorspeed is used to make the joins rotate , remember!
       joint_def.enableMotor = true;
       joint_def.maxMotorTorque = 100000;

       //this will prevent spinning of wheels when hit by something strong
       joint_def.enableLimit = true;
       joint_def.lowerAngle =  -1 * max_steer_angle;
       joint_def.upperAngle =  max_steer_angle;
       this.joint = world.CreateJoint(joint_def);

然后当我按下按钮时,我设置了这样的电机速度:

this.joint.SetMotorSpeed(10000);

轮子开始围绕身体中心旋转,但我想围绕它自己的中心旋转。

这是车身和车轮的设置:

   'density' : 1.0 ,
    'friction' : 0.0 ,
    'restitution' : 0.2 ,
    'linearDamping' : 0.0 ,
    'angularDamping' : 0.0 ,
    'gravityScale' : 1.0 ,
    'type' : b2Body.b2_dynamicBody

我做错了什么?或许我应该使用不同的box2d实现。 我使用的是来自https://www.npmjs.com/package/box2dweb

的box2d

0 个答案:

没有答案