gle*_*rey 5 math objective-c box2d cocos2d-iphone ios
我正在对box2d对象施加一个冲动,如下所示:
b2Vec2 impulse = b2Vec2(4.0f, 15.0f);
body->ApplyLinearImpulse(impulse, body->GetWorldCenter());
Run Code Online (Sandbox Code Playgroud)
我知道这可能是高中数学,我保证我已经努力为自己发现这个; 请原谅我的无知.
如果我有对象a,b和c - 并且对象a位于b和c的中点,我如何创建Box2D脉冲以使对象b和c远离速度v?

尝试使用这个:
b2Vec2 impulseB = bodyB->GetPosition() - bodyA->GetPosition();
impulseB /= impulseB.Length();
impulseB *= predefinedScaleValue; // predefinedScaleValue is your velocity
b2Vec2 impulseC = -impulseB;
bodyB->ApplyLinearImpulse(impulseB, bodyB->GetWorldCenter());
bodyC->ApplyLinearImpulse(impulseC, bodyC->GetWorldCenter());
Run Code Online (Sandbox Code Playgroud)
我希望大家清楚这里发生了什么。如果没有,请询问:)
| 归档时间: |
|
| 查看次数: |
286 次 |
| 最近记录: |