关于2.x中box2d的一些问题

有没有做过这方面的朋友啊,请教一些问题,就一些在做游戏时卡死的点,网页上找的方法解决不了。首先是距离关节,我是这样写的:

b2Vec2 onCheese(cheese->getPositionX()/PTM_RATIO,cheese->getPositionY()/PTM_RATIO);
b2Vec2 onPad(pad->getPositionX()/PTM_RATIO,pad->getPositionY()/PTM_RATIO);

b2DistanceJointDef jointDef;
jointDef.Initialize(cheeseBody,padBody,onCheese,onPad);
jointDef.collideConnected = true;
b2DistanceJoint *dj1 = (b2DistanceJoint*)world->CreateJoint(&jointDef); 

运行时报错,提示转到这段源码:

inline b2Vec2 b2MulT(const b2Transform& T, const b2Vec2& v)
{
float32 px = v.x - T.p.x;
float32 py = v.y - T.p.y;
float32 x = (T.q.c * px + T.q.s * py);
float32 y = (-T.q.s * px + T.q.c * py);

return b2Vec2(x, y);

}