首页 > 解决方案 > 检测具有半径的 3D 点是否通过两个 3D 点的线?(C#)

问题描述

我有三个 3D 点,就说 p1、p2 和 p3。我能够制作一条连接 p1 和 p2 的线。然后,p3 将在 p1 和 p2 之间但不共线。我想知道p3是否靠近这条线。如何检查? 在此处输入图像描述

标签: c#

解决方案


二维

你只是在找到一个三角形的高度。幸运的是,您可以立即搜索公式:

https://en.wikipedia.org/wiki/Distance_from_a_point_to_a_line

在此处输入图像描述

3D

同样,该公式广泛可用

https://mathworld.wolfram.com/Point-LineDistance3-Dimensional.html

在此处输入图像描述

一般来说 ..

这是所有游戏程序员必须牢记的圣经!

http://amazon.com/Mathematics-Programming-Computer-Graphics-Third/dp/1435458869

在此处输入图像描述


推荐阅读