MATLAB 计算点到直线的距离
利用matlab计算点到直线的距离
·
二维空间
给定两点 p1,p2\ p1, p2 p1,p2可以生成一直线p1p2⃗=p1⃗−p2⃗\vec{p_1p_2} =\vec{p_1} -\vec{p_2}p1p2=p1−p2
现有在直线外一点p0{p_0}p0
上述三点以到坐标原点的向量表示为p⃗=[px,py]T\vec{ p} =[p_x,p_y] ^Tp=[px,py]T
因此,点到直线的距离公式可以表示为:
(注意,三点的坐标均用列向量进行表示)
p0 = [p0x ; p0y];
p1 = [p1x ; p1y];
p2 = [p2x ; p2y];
d = abs(det([p2-p1,p0-p1]))/norm(p2-p1);
若点的坐标为行向量
d = abs(det([p2-p1;p0-p1]))/norm(p2-p1);
三维空间
点为列向量时:
d = norm(cross(p2-p1,p0-p1))/norm(p2-p1);
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)