围绕另一个点旋转一个点 (2D)
要确定定义碰撞检测形状的点,需要旋转围绕枢轴点的点。在这种情况下,枢轴点是形状的中心。
要将点 p 围绕另一个点 (cx, cy) 旋转一定角度(以弧度表示),请按照以下步骤操作:
通过减去 (cx, cy):
p.x -= cx; p.y -= cy;
逆时针旋转点:
float xnew = p.x * cos(angle) - p.y * sin(angle); float ynew = p.x * sin(angle) + p.y * cos(angle);
通过添加 (cx, cy):
p.x = xnew + cx; p.y = ynew + cy;
使用此方法,您可以围绕任何其他点旋转任何点并确定对象的形状以进行碰撞检测。
以上是如何围绕另一个点旋转 2D 点?的详细内容。更多信息请关注PHP中文网其他相关文章!