似乎
there is no way to compute line line intersection using
boost::geometry
,但我想知道在C中最常用的方法是什么?
我需要2D中两条无限线的交集算法,如果它更快,它可以是两个不同的函数,如:
bool line_intersection(line,line); point line_intersetion(line,line);
附:我真的试图避免轮子发明,所以倾向于使用一些库.
解决方法
我找到的找到线条交叉点的最佳算法是:
Real Time Collision Detection by Christer Ericson,该书的副本可以在
here找到.
第146页的第5章介绍了如何找到最接近3D线的点,这也是2D线的交叉点……示例代码用C表示.
注意:注意平行线,它们可能导致除以零错误.