我有点 A (pointA = (x1, y1)
),我需要选择一个随机点 B ( pointB = (x2, y2)
),使得 A 和 B 之间的距离等于 K。
最佳答案
让我们以极坐标形式求解。
我们需要这些 double 值距离
、x1
和y1
。
首先,我们想要以弧度为单位的角度:
double angle = Math.random()*2*Math.PI;
然后我们想要获取距我们点的 x 和 y 偏移量:
double xOff = Math.cos(angle)*distance;
double yOff = Math.sin(angle)*distance;
然后我们将这些添加到我们的第一点:
double x2 = x1 + xOff;
double y2 = y1 + yOff;
这将使您得到一个与第一个点相距一定距离
的点。
关于java - 如何选择距引用点一定距离的随机点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29720611/