已知两线段 $AB$ 和 $CD$ 四个端点的坐标,判断其是否相交。
其中$A(x_a,y_a)$、$B(x_b,y_b)$、$C(x_c,y_c)$、$D(x_d,y_d)$
根据$AB$计算直线表达式
$k_{AB}x+b_{AB}=y$
$k_{CD}x+b_{CD}=y$
求解两方程 若平行则判断是否有重合部分
不平行则判断交点$I(x,y)$是否都在$AB$和$CD$上
假设$AB$和$CD$不是平行或者端点相交
那么$A$和$B$必须分别处于$CD$的两边,同理$C$和$D$也必须处于$AB$两边
则$\overrightarrow{AC} \times \overrightarrow{AB}$和$\overrightarrow{AB} \times \overrightarrow{AD}$同向,同理$\overrightarrow{CA} \times \overrightarrow{CD}$和$\overrightarrow{CD} \times \overrightarrow{CB}$同向。
假如$AB$和$CD$平行,先判断$ABCD$四点是否有重合。若无重合点,则计算 $\overrightarrow{AB} \times \overrightarrow{AC}$是否为$0$。
为$0$说明共线,才有相交的可能性。
共线完了后再判断$C$或$D$是否在$AB$上