空间内直线于平面交点

空间内直线于平面交点

空间内直线于平面交点在编程中使用向量的方式计算要相对简单很多。理论部分可参考https://blog.csdn.net/smallflyingpig/article/details/51234711?locationNum=8&fps=1
但是存在部分不当之处,下面matlab程序中已经做出修改

function point=getpoint(normal,P1,P2)
%平面方程为Ax+By+Cz+D=0;normal=[A,B,C,D]
%P1=[x1;y1;z1],P2=[x2;y2;z2]空间内两点
%返回交点坐标为point,无交点则返回-1
if (normal(1)*P1(1)+normal(2)*P1(2)+normal(3)*P1(3)+normal(4))==0
    temp=P1;
    P1=P2;
    P2=temp;
end
P12=P2-P1;
if normal(1:3)*P12==0
    point=-1;
%直线与平面无交点
else
    n=-(normal(1)*(P2(1)-P1(1))+normal(2)*(P2(2)-P1(2))+normal(3)*(P2(3)-P1(3)))/(normal(1)*P1(1)+normal(2)*P1(2)+normal(3)*P1(3)+normal(4));
    point=P1+P12/n;
end
end
  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值