Geometry 在任意多边形中,如何检测任意边与另一侧相交的自由度?

Geometry 在任意多边形中,如何检测任意边与另一侧相交的自由度?,geometry,pathgeometry,Geometry,Pathgeometry,我正在为旅行商问题绘制一个多边形,并想测试任何路径的不相交性,以此作为自适应停止遗传搜索的一种方法。我试着简单地检查线段或交点,但有时会得到错误的结果,即使有一个或多个交点仍然存在,也会终止搜索。这个问题本质上相当于检测任意一组线段中的交点 例如,可以使用。当然,只要找到一个十字路口,您就可以终止 简单的检查只会检查每一条边相对于每一条其他边(在多边形中不是相邻的,因为这些边不能相交),但由于您只需要找到一个相交点,因此输出敏感算法(如bentley ottmann)可以大大加快检查速度。这个问

我正在为旅行商问题绘制一个多边形,并想测试任何路径的不相交性,以此作为自适应停止遗传搜索的一种方法。我试着简单地检查线段或交点,但有时会得到错误的结果,即使有一个或多个交点仍然存在,也会终止搜索。

这个问题本质上相当于检测任意一组线段中的交点

例如,可以使用。当然,只要找到一个十字路口,您就可以终止


简单的检查只会检查每一条边相对于每一条其他边(在多边形中不是相邻的,因为这些边不能相交),但由于您只需要找到一个相交点,因此输出敏感算法(如bentley ottmann)可以大大加快检查速度。

这个问题本质上相当于检测任意一组线段中的交点

例如,可以使用。当然,只要找到一个十字路口,您就可以终止

简单的检查只会检查每一条边,而不是每一条其他边(在多边形中不是相邻的,因为它们不能相交),但由于您只需要找到一个相交点,因此输出敏感算法(如bentley ottmann)可以大大加快检查速度