如何在二维空间中以指定的距离和角度将点(x,y)移动到新位置(p,q)?

问题描述 投票:0回答:1

我正在开发一个 2D 游戏,我需要将点大小的对象从当前位置

(x, y)
移动到新位置
(p, q)
。新位置应在由角度
d
(以度或弧度为单位)给出的指定方向上与
(x, y)
精确相距
a
个单位。

换句话说,我想计算新坐标

(p, q)
,使得
(x, y)
(p, q)
之间的距离为
d
单位,移动方向为
a
度/弧度。

如何以编程方式计算新坐标

(p, q)

以下是所有内容的简短摘要:

  • 起始点:
    (x, y)
  • 移动距离:
    d
  • 运动方向:
    a
    (以度或弧度表示的角度)
  • 新点:
    (p, q)
    (待找到)

我熟悉三角学,但我不确定如何在这种情况下应用它。任何帮助或代码示例将不胜感激!

math 2d coordinates trigonometry
1个回答
0
投票

假设 a 是从正 x 轴测量的:

p = x + d * cos(a)

q = y + d * sin(a)

© www.soinside.com 2019 - 2024. All rights reserved.