matlab 三维相交面,MATLAB画三维图时如何画相交部分

总结:1直接求出相交点:(1)两直线相交(2)直线与多条直线相交

2利用两种图形的已知点的距离是否接近0判断是否相交,从而画出图:(3)直线与曲线相交

(4)曲线与曲线相交(5)直线与曲面相交(6)平面与曲面相交

画某范围内的三维区域,可以同样利用判断解决。

转自《工程计算可视化与MATLAB实现》尚涛等编著武汉大学出版社

(1)两直线相交

function [X,Y]=pll(X1,Y1,X2,Y2)

%直线相交求交点

A1=Y1(1)-Y1(2); B1=X1(2)-X1(1);

C1=Y1(2)*X1(1)-Y1(1)*X1(2); A2=Y2(1)-Y2(2);

B2=X2(2)-X2(1);

C2=Y2(2)*X2(1)-Y2(1)*X2(2); D=det([A1,B1;A2,B2]); X=det([-C1 B1;-C2 B2])/D; Y=det([A1 -C1;A2,-C2])/D;

调用格式:

x1=[1 5];y1=[1 5];x2=[1 5];y2=[5,1]; [x,y]=pll(x1,y1,x2,y2); plot(x1,y1,\'r\'); hold on

plot(x2,y2,\'b\'); plot(x,y,\'ko\');

(2)直线与多条直线相交

xi=[1 2 3 4 5];yi=[2 6 3 6 1]; plot(xi,yi);hold on

x1=[1 5];y1=[4 5];line(x1,y1); x=zeros(size(xi)); y=x; for i

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值