空间中点到直线的距离的MATLAB计算实现
建模过程见参考资料,这里给出代码和例子。
数学模型
d
=
∣
(
pt
−
x1
)
×
(
pt
−
x2
)
∣
∣
(
x2
−
x1
)
∣
d=\frac {|(\textbf{pt}-\textbf{x1})\times(\textbf{pt}-\textbf{x2})|}{|(\textbf{x2}-\textbf{x1})|}
d=∣(x2−x1)∣∣(pt−x1)×(pt−x2)∣
式中,
x1
=
(
x
1
,
y
1
,
z
1
)
\textbf{x1}=(x1,y1,z1)
x1=(x1,y1,z1),
x2
=
(
x
2
,
y
2
,
z
2
)
\textbf{x2}=(x2,y2,z2)
x2=(x2,y2,z2),
pt
=
(
x
0
,
y
0
,
z
0
)
\textbf{pt}=(x0,y0,z0)
pt=(x0,y0,z0)
完整代码
x1 = [1,3,4];
x2 = [2,-1,6];
pt = [4,5,6];
d = norm(cross((pt-x1),(pt-x2)))/norm(x2-x1)