+ -
当前位置:首页 → 问答吧 → 怎样判断两条线段是否有相交?

怎样判断两条线段是否有相交?

时间:2011-12-14

来源:互联网

CPoint[100]
0-1(线段1), 1-2(线段2), 2-3(线段3)... ...
怎样判断该线段组中有没有相交的线段?
网上找过,实际上不行的,有判断出错的。

作者: xinqiao2008   发布时间: 2011-12-14

基本方法:扫描线法(sweeping),垂直扫描线,只是可以判断是否相交,而不能打印交点。扫描线自左向右,x轴看作是时间,两个假设:(1)没有垂直的线段(2)没有三条线段交与一点。

可以参考 算法导论

作者: zhujian888   发布时间: 2011-12-14

交点不需要知道,
线段端点与线段端点重叠不算相交。

作者: xinqiao2008   发布时间: 2011-12-14

数学上怎么判楼主就怎么写,在编程出来就行

作者: quwei197874   发布时间: 2011-12-14

引用 1 楼 zhujian888 的回复:

基本方法:扫描线法(sweeping),垂直扫描线,只是可以判断是否相交,而不能打印交点。扫描线自左向右,x轴看作是时间,两个假设:(1)没有垂直的线段(2)没有三条线段交与一点。

可以参考 算法导论


扫描的算法,存在一定的误差。

作者: pathuang68   发布时间: 2011-12-14