【发布时间】:2016-06-25 23:34:27
【问题描述】:
我已经给出了角度、线长和起点,我想计算目标点以在此处移动我的对象。我正在关注这篇文章和其他一些帖子:
cocos2d calculate destination point given start point, angle and distance
问题:对于第一象限和第四象限,它给了我正确的角度。但是对于第二象限和第三象限,它的方向完全相反。我无法弄清楚问题。这张图片可能会很清楚:
绿色箭头表示我的预期方向,红色箭头表示实际去向。
到目前为止我的代码:
float m = (targetPosition.y - initialPosition.y) / (targetPosition.x - initialPosition.x);
angle = atan (m) * 180 / PI;
int lineLength = 200;
float radiansAngle = CC_DEGREES_TO_RADIANS(angle);
Vec2 endPoint;
endPoint.y = sinf(radiansAngle) * lineLength + initialPosition.y;
endPoint.x = cosf(radiansAngle) * lineLength + initialPosition.x;
【问题讨论】:
标签: c++ geometry cocos2d-x swipe angle