设一条线段为L0 = P1P2,另一条线段或直线为L1 = Q1Q2;
第一步:判断L0和L1是否相交,如果没有相交就没有交点,否则L0,L1一定有交点;
第二步:若P1和P2的横坐标相同,即L0平行于y轴:
1. 若L1也平行于y轴,则L0L1共线或平行。(P1和Q1横坐标相同共线,不相同平行)
2. 交点横坐标为P1或P2横坐标,带入L1方程求出纵坐标。
第三步:若P1P2横坐标不同,但是Q1Q2的横坐标相同,即L1平行于y轴,则交点横坐标为Q的横坐标,带入到L0的直线方程中即可计算交点纵坐标。
第四步:如果P1P2纵坐标相同,即L0平行于x轴:
1. 若L1也平行于x轴,则L0L1平行或共线。
2. 交点纵坐标P1或P2的纵坐标,带入L1方程式求出交点横坐标。
第五步:如P1P2的纵坐标不同,但是Q1Q2的纵坐标相同,即L1平行于x,则交点纵坐标为Q1的纵坐标,带入L0直线方程计算交点横坐标。
第六步:剩下步骤为L0L1斜率均不为0的情况。
1.计算L0斜率K0,L1斜率K1。
2. 若K0=K1, 若Q1在L0上,则L0L1共线,如果不在L0上则平行。
3. 联立两直线的方程组可以解出交点。