如何从python中的给定点找到nearst点

时间:2017-02-21 10:09:21

标签: python algorithm python-3.x linear nearest-neighbor

我有这个问题,我有2个给定点,一个在盒子里面,第二个在外面(我们外面还有多个点)我需要找到它穿过盒子的两点之间交点的最近点(见图)。 然后找到内点和交点之间的距离。

我不知道从哪里开始以及如何在python中解决问题。我可以使用现有的库吗?

Illustration of the point i need to find

1 个答案:

答案 0 :(得分:0)

WLOG B是原点,而立方体有2面。

来自原点的光线是(X,Y,Z)= t。(x,y,z)。

与面相交,设X = 1,即t = 1 / x,即(1,y / x,z / x)。

到原点的距离是√(x²+y²+z²)/ x。

尝试使用六张脸,并保持最近的。

实际上,三面是足够的,因为我们被限制为t> 0.所以你将取t = 1 / x或t = -1 / x,具体取决于x的符号。