空间点到平面的垂足坐标的计算方法以及matlab实现
问题描述:已知空间点坐标(x,y,z),并且知道三个点的坐标(不要共线!),求解空间点到平面投影坐标。参考百度文库的这篇文章空间点到平面的垂足坐标的计算方法下面是matlab的代码:%% 变量定义% 空间坐标点 x/y/z坐标分别为x4 y4 z4Data_Origin=[x4,y4,z4];% 取平面上的三个点 (不要共线!)% PlanePointX:平面上三个点的x坐标,分别是x1 x2 x
·
问题描述:
已知空间点坐标(x,y,z),并且知道三个点的坐标(不要共线!),求解空间点到平面投影坐标。
参考百度文库的这篇文章
空间点到平面的垂足坐标的计算方法
下面是matlab的代码:
%% 变量定义
% 空间坐标点 x/y/z坐标分别为x4 y4 z4(需要手动修改!!)
Data_Origin=[x4,y4,z4];
% 取平面上的三个点 (不要共线!)
% PlanePointX:平面上三个点的x坐标,分别是x1 x2 x3(需要手动修改!!)
PlanePointX=[x1,x2,x3];
% PlanePointY:平面上三个点的y坐标,分别是y1 y2 y3(需要手动修改!!)
PlanePointY=[y1,y2,y3];
% PlanePointZ:平面上三个点的z坐标,分别是z1 z2 z3(需要手动修改!!)
PlanePointZ=[z1,z2,z3];
PlanePoint=[PlanePointX',PlanePointY',PlanePointZ'];
%% 求解平面方程Ax+By+Cz+1=0的A、B、C三个参数为paraA paraB paraC
para=-PlanePoint\ones(3,1);
paraA=para(1);
paraB=para(2);
paraC=para(3);
%% 投影坐标计算最终坐标为Data_projection,一个列向量
Matrix_head=([PlanePoint(2,:)-PlanePoint(1,:);...
PlanePoint(3,:)-PlanePoint(1,:);...
paraA, paraB, paraC]);
Data_projection=Matrix_head\...
[dot(Data_Origin,(PlanePoint(2,:)-PlanePoint(1,:)));...
dot(Data_Origin,(PlanePoint(3,:)-PlanePoint(1,:)));...
-1];
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)