交点 - 两直线交点 - 直线点斜式
直线的点斜公式
y=kx+t, k为直线斜率, t为直线在y轴上的交点;
直线与y轴平行时, k不存在, 方程为x=a, a为常量值;
//两直线交点 - 直线点斜式 public static bool IsTwoLineIntersect2(float k1, float t1, float k2, float t2, out Vector2 point) { point = Vector2.zero; if (Mathf.Approximately(k1, k2)) //直线平行则不相交 return false; //直线点斜式: y=k*x+t; 直线与y轴平行时k不存在 //x任意取值, 求出y, 就能得到直线上的点 var A = new Vector2(1, k1 + t1); var B = new Vector2(2, k1 * 2 + t1); var C = new Vector2(3, k2 * 3 + t2); var D = new Vector2(4, k2 * 4 + t2); var result = IsTwoLineIntersect(A, B, C, D, out point); return result; }
引用的函数看这边