matlab画二次曲面.docx
- 文档编号:6912536
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:15
- 大小:284.52KB
matlab画二次曲面.docx
《matlab画二次曲面.docx》由会员分享,可在线阅读,更多相关《matlab画二次曲面.docx(15页珍藏版)》请在冰豆网上搜索。
matlab画二次曲面
一、螺旋线
1.静态螺旋线
a=0:
:
20*pi;
h=plot3(a.*cos(a),a.*sin(a),2.*a,'b','linewidth',2);
axis([-50,50,-50,50,0,150]);
gridon
set(h,'erasemode','none','markersize',22);
xlabel('x轴');ylabel('y轴');zlabel('z轴');
title('静态螺旋线');
2.动态螺旋线
t=0:
:
10*pi;
i=1;
h=plot3(sin(t(i)),cos(t(i)),t(i),'*','erasemode','none');
gridon
axis([-22-22035])
fori=2:
length(t)
set(h,'xdata',sin(t(i)),'ydata',cos(t(i)),'zdata',t(i));
drawnow
pause
end
title('动态螺旋线');
(图略)
3.圆柱螺旋线
t=0:
:
10*pi;
x=r.*cos(t);
y=r.*sin(t);
z=t;
plot3(x,y,z,'h','linewidth',2);
gridon
axis('square')
xlabel('x轴');ylabel('y轴');zlabel('z轴');
title('圆柱螺旋线')
二、旋转抛物面
b=0:
:
2*pi;
[X,Y]=meshgrid(-6:
:
6);
Z=(X.^2+Y.^2)./4;
meshc(X,Y,Z);
axis('square')
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('旋转抛物面')
或直接用:
ezsurfc('(X.^2+Y.^2)./4')
三、椭圆柱面
loadclown
ezsurf('(2*cos(u))','4*sin(u)','v',[0,2*pi,0,2*pi])
view(-105,40)%视角处理
shadinginterp%灯光处理
colormap(map)%颜色处理
gridon%添加网格线
axisequal%使x,y轴比例一致
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('椭圆柱面')%添加标题
四、椭圆抛物面
b=0:
:
2*pi;
[X,Y]=meshgrid(-6:
:
6);
Z=X.^2./9+Y.^2./4;
meshc(X,Y,Z);
axis('square')
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('椭圆抛物面')
或直接用:
ezsurfc('X.^2./9+Y.^2./4')
五、'双叶双曲面
ezsurf('8*tan(u)*cos(v)','8.*tan(u)*sin(v)','2.*sec(u)',[-pi./2,3*pi./2,0,2*pi])
axisequal
gridon
axissquare
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('双叶双曲面')
六、双曲柱面
loadclown
ezsurf('2*sec(u)','2*tan(u)','v',[-pi/2,pi/2,-3*pi,3*pi])
holdon%在原来的图上继续作图
ezsurf('2*sec(u)','2*tan(u)','v',[pi/2,3*pi/2,-3*pi,3*pi])
colormap(map)
shadinginterp
view(-15,30)
axisequal
gridon
axisequal
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('双曲柱面')
七、双曲抛物面(马鞍面)
[X,Y]=meshgrid(-7:
:
7);
Z=X.^2./8-Y.^2./6;
meshc(X,Y,Z);
view(85,20)
axis('square')
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('双曲抛物面')
或直接用:
ezsurfc('X.^2./8-Y.^2./6')
八、抛物柱面
[X,Y]=meshgrid(-7:
:
7);
Z=Y.^2./8;
h=mesh(Z);
rotate(h,[101],180)%旋转处理
%axis([-8,8,-8,8,-2,6]);
axis('square')
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('抛物柱面')
或直接用:
ezsurfc('Y.^2./8')
九、环面
ezmesh('(5+2*cos(u))*cos(v)','(5+2*cos(u))*sin(v)','2*sin(u)',[0,2*pi,0,2*pi])
axisequal
gridon
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('环面')
十、椭球
ezsurfc('(5*cos(u))*sin(v)','(3*sin(u))*sin(v)','4*cos(v)',[0,2*pi,0,2*pi])
axisequal
gridon
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('椭球')
十一、单叶双曲面
ezsurf('4*sec(u)*cos(v)','2.*sec(u)*sin(v)','3.*tan(u)',[-pi./2,pi./2,0,2*pi])
axisequal
gridon
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('单叶双曲面')
十二、旋转单叶双曲面
loadclown
ezsurf('8*sec(u)*cos(v)','8.*sec(u)*sin(v)','2.*tan(u)',[-pi./2,pi./2,0,2*pi])
colormap(map)
view(-175,30)
%alpha(.2)%透明处理
axisequal
gridon
axissquare
xlabel('x轴');ylabel('y轴');zlabel('z轴');
shadingflat;
title('旋转单叶双曲面')
十三、圆柱面
subplot(1,2,1)
ezsurf('(2*cos(u))','2*sin(u)','v',[0,2*pi,0,2*pi])
gridon
shadinginterp
axisequal
xlabel('x轴');ylabel('y轴');zlabel('z轴');
title('圆柱面')
subplot(1,2,2)
cylinder(30)
shadinginterp
axissquare
title('调用cylinder函数所得圆柱面')
十四、二次锥面
clc,clear;
P=[1,0,0;
0,cos(45*pi/180),sin(45*pi/180);
0,-sin(45*pi/180),cos(45*pi/180)];
fork2=1:
31
fork1=1:
31
x(k1,k2)=(k2-1)*cos((k1-1)*12*pi/180);
y(k1,k2)=(k2-1)*sin((k1-1)*12*pi/180);
z(k1,k2)=sqrt(x(k1,k2)^2+y(k1,k2)^2);
Vxyz=P*[x(k1,k2),y(k1,k2),z(k1,k2)]';
x1(k1,k2)=Vxyz
(1);
y1(k1,k2)=Vxyz
(2);
z1(k1,k2)=Vxyz(3);
end
end
surf(x,y,z)
holdon;
surf(x1,y1,z1);
shadingflat;精心搜集整理,只为你的需要
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 二次曲面