如何在java中找到一个点?

时间:2016-06-03 18:57:38

标签: java android math geometry

我正在尝试用路径做一些实验。我有两个点(x0,y0)和(x2,y2)。现在我必须找到一个距离最终点(x2,y2)一定距离的点(x1,y1)。

例如
起点(0,0)终点(0,5)
我想找的点是(0,2)

enter image description here

2 个答案:

答案 0 :(得分:2)

对于

之间的一行

enter image description here

距离第一个点的距离d第二个点方向的点(正)的点由下式给出:

enter image description here

其中L是定义该行的两个点之间的距离:

enter image description here

(对于您的情况,只需采用L - d代替d

答案 1 :(得分:0)

想象一下,这两个点定义了两个矩形三角形。较大的三角形的边长为x1,y1。较小的边有尺寸xt,yt。

1)现在应用Pythagoras' Theorem两个计算更大的斜边h,使用等式h ^ 2 = x1 ^ 2 + y1 ^ 2; (其中h ^ 2表示2的h幂)

2)差异(h - 距离)是较小三角形的斜边。我们称之为ht。

3)计算xt和yt与hypot large / hypot更小的正比例。 x1 / xt = h / ht y1 / yt = h / ht