0

在没有任何物理引擎的情况下,我在计算一种轨迹时遇到了困难。

我想要实现的是将大炮移动到某个点。我有大炮的初始位置,大炮和接触点之间的角度+我想行进的距离。

这里的目标是根据起点、角度和距离计算出出口点。

方案:http ://dl.dropbox.com/u/39096612/testcase.png

这就是我在移动手指的同时旋转大炮的方式(在它后面,而不是在前面):

CGPoint location = [touch locationInView:[touch view]];
CGFloat angle    = CC_RADIANS_TO_DEGREES(ccpToAngle(ccpSub(cannon.position, location)));
angle += 90;

cannonRotation = angle;

通常它已经完成了,但它对我不起作用(可能是我做错了......),真的需要你的帮助。

ccp(x + distance * cos(a), y + distance * sin(a))
4

1 回答 1

0

exitPoint = ccpAdd(cannon.position , ccp(cannon.position.x - touch.x , cannon.position.y - touch.y));

于 2012-07-04T08:37:58.193 回答