我正在iPad上开发一个小型应用程序,用户可以在其中将对象拖动到一起。当物体接触时,我将创建一个将物体粘在一起的距离关节。一切正常。
如果用户再次触摸该对象以将其拖动,则我希望能够单独移动该对象,而不是将关节中的所有对象一起移动。我已经编写了以下代码,但实际上并没有用:
for (b2JointEdge *jointEdge = theBody->GetJointList(); jointEdge; jointEdge=jointEdge->next) {
b2Joint *joint = jointEdge->joint;
_world->DestroyJoint(joint);
}
有什么建议么?
GA
最佳答案
迭代关节列表时不要移除关节。因为当删除关节时-列表将更改,并且您的迭代器将变得无效。将关节保存到阵列中,然后在遍历阵列时将其删除。
关于ios - 在box2d中制动对象中的所有关节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19287784/