Math 如何找到具有相同直线长度的最近新点?

Math 如何找到具有相同直线长度的最近新点?,math,Math,所以我有一条有起点和终点的路径。我想通过用户触摸事件移动端点,以便用户可以将线端点拖动到不同的点,但我想保持线的长度不变?最有效的方法是什么?如果起点保持静止,则所有可能的终点都在一个圆上 实现这一点的常用方法是计算用户触摸产生的角度、圆心(或本例中的起点)和“x轴” 计算角度后,使用三角法找出端点的位置: x = rcos(theta) y = rsin(theta) where theta is the angle made by the user's touch, the end poi

所以我有一条有起点和终点的路径。我想通过用户触摸事件移动端点,以便用户可以将线端点拖动到不同的点,但我想保持线的长度不变?最有效的方法是什么?

如果起点保持静止,则所有可能的终点都在一个圆上

实现这一点的常用方法是计算用户触摸产生的角度、圆心(或本例中的起点)和“x轴”

计算角度后,使用三角法找出端点的位置:

x = rcos(theta)
y = rsin(theta)

where theta is the angle made by the user's touch, the end point, and the start point
and where r is the fixed distance between the starting and ending points.
下面是一个实际应用的例子:


要与固定点的长度相同,您需要指定一个圆。请参见此处的示例: