在没有任何物理引擎的情况下,我在计算一种轨迹时遇到了困难。
我想要实现的是将大炮移动到某个点。我有大炮的初始位置,大炮和接触点之间的角度+我想行进的距离。
这里的目标是根据起点、角度和距离计算出出口点。
方案: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))