很简单的算法,这里是把每对线段都进行比较了。
还有一种似乎先通过x和y排序再进行交点判断的,不过那种方法我还没看太明白。
这里的方法如下:
1.根据线段的端点求两条直线的交点。
2.判断直线的交点是否在两条线段上。
结果如下:
matlab代码如下:
clear all;close all;clc; n=20; p=rand(n,4); %(x1,y1,x2,y2)线段两端点 for i=1:n pbar=p(i,:); pbar=reshape(pbar,[2,2
很简单的算法,这里是把每对线段都进行比较了。
还有一种似乎先通过x和y排序再进行交点判断的,不过那种方法我还没看太明白。
这里的方法如下:
1.根据线段的端点求两条直线的交点。
2.判断直线的交点是否在两条线段上。
结果如下:
matlab代码如下:
clear all;close all;clc; n=20; p=rand(n,4); %(x1,y1,x2,y2)线段两端点 for i=1:n pbar=p(i,:); pbar=reshape(pbar,[2,2