你好
我想知道是否有任何有效的方法来计算点的坐标(从原始位置移动了距离 d)。
假设我有一个点 P(0.3,0.5),我需要将该点随机方向移动距离 d。
到目前为止,我通过随机选取新的 x 和 y 坐标来完成此操作,并且检查新旧点之间的距离是否等于 d。我确实意识到这并不是太有效的方法。
你会怎么做?
给定一个点(x1, y1)
,我们想要找到一个“随机”点(x2, y2)
在远处d
从中。
选择一个随机角度theta
. Then:
x2 = x1 + d * cos(theta)
y2 = y1 + d * sin(theta)
这将是半径圆上的随机点d
以(x1, y1)
Proof:
Distance between (x1, y1) and (x2, y2)
= sqrt ( (x2 - x1) ^ 2 + (y2 - y1) ^ 2)
= sqrt ( d^2 * (sin^2 (theta) + cos^2 (theta) ) )
= d
您可能想看看:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)