三维空间平面方程

已知空间中三点,求平面方程:
三点坐标:(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)
待求平面方程:Ax+By+Cz+D=0
求解公式:
三维空间平面方程_第1张图片
平面法向量为(A,B,C)
空间坐标原点到平面的距离为D

Matlab代码:
%%%求解平面方程detd%%%
% syms x y z
% A=[4.635700000249112,44.509499999951906,-47.6];%A,B,C为平面上的三点
% B=[4.689699999741158,44.537599999956880,-47.6];
% C=[4.665599999961136,44.519899999953780,-1474.1];
% D=[ones(4,1),[[x,y,z];A;B;C]];%由空间解析几何的内容知道D的行列式等于零就是平面方程。
% detd=det(D);%detd是平面方程式
% disp(strcat(‘平面方程为:’,char(detd),’=0’))%以字符串的形式展示平面方程一般式
% z=solve(detd,z);%等式右边为z的平面方程表达式
% hold on
% xlim=[4.64 4.7];
% ylim=[44.5 44.54];
% zlim=[-1500 0];
% fmesh(z);%绘制三维网格图,z为函数

%%%已知平面外一点,求过该点的垂线与平面的交点%%%
%P=[4.671,44.518,-1000];%平面外P点坐标
%p=(px,py,pz);%待求点坐标
% x1=4.635700000249112;y1=44.509499999951906;z1=-47.6;%平面上三点坐标
% x2=4.689699999741158;y2=44.537599999956880;z2=-47.6;
% x3=4.665599999961136;y3=44.519899999953780;z3=-1474.1;
% a=y1*(z2-z3)+y2*(z3-z1)+y3*(z1-z2);%平面方程一般表达式中的a,b,c,d系数
% b=z1*(x2-x3)+z2*(x3-x1)+z3*(x1-x2);
% c=x1*(y2-y3)+x2*(y3-y1)+x3*(y1-y2);
% d=-x1*(y2z3-y3z2)-x2*(y3z1-y1z3)-x3*(y1z2-y2z1);
% syms t
% eqs=a*(P(1)-at)+b(P(2)-bt)+c(P(3)-ct)+d==0;
% S=solve(eqs,t);
% px=double(P(1)-a
S);py=double(P(2)-bS);pz=double(P(3)-cS);

你可能感兴趣的:(三维空间平面方程)