我在 C# WPF 中有两个 Line 对象,我正在尝试构建一种方法来计算线相交的坐标(如果有的话)。在让自己头疼地提醒自己高中数学要这样做之后,我无法弄清楚如何将其映射到编程格式 - 有谁知道如何做到这一点?
非常感谢,贝基
我想你的线对象是由两点组成的。你应该做的是得到两条线的方程。
那么你应该解决以下方程:
方程线 1 = 方程线 2
计算直线的斜率:
float _slope = 1e+10;
if ((p2.x - p1.x) != 0)
_slope = (p2.y - p1.y) / (p2.x - p1.x);
Run Code Online (Sandbox Code Playgroud)
p1 = 线路的第 1 点 p2 = 线路的第 2 点
直线方程:
y = ax + b
a = 你计算的斜率 b = 相交
求解方程:
a1 = p1.y - b1 * p1.x;
a2 = q1.y - b2 * q1.x;
x = (a1 - a2) / (b2 - b1);
y = a2 + b2 * x;
Run Code Online (Sandbox Code Playgroud)
变量:
所以,x 和 y 是两条线相交点的坐标