搜索
您的当前位置:首页正文

点到线段的最短距离算法

来源:榕意旅游网
计算点到线段的距离共有三种方法:经典算法、面积算法和矢量算法。考虑到算法的实用性和效率,故本次编程采用矢量算法。

用此方法考虑,我们只需要找到向量

方向上的投影,具体如下:

上面的

方向上的单位向量,其意义是给所求向量确定方向。

是两个

向量的内积,且是向量长度。

,其中θ为向量AP与AB之间的夹角。

那么 即为上图中线段AC的长度值,不带有方向性。

此数值与上述表征方向的整体构成有大小、有方向的新向量

向上的投影向量,C为投影点。

,即为 在 方

根据得到的 ,由向量的方向性可知:如果情况是上图(a)所示,那么0特殊情况如点在线段上、点在端点、点在线段延长线上等等的情况全部适用于此公式,只是作为特殊情况出现,无需另作讨论。这也是矢量算法思想的优势所在。 故根据r值的不同,最短距离𝑑可以计算为:

因篇幅问题不能全部显示,请点此查看更多更全内容

Top