matlab三维阴影曲面绘图函数surfsurfcfurflmatlab图行绘制六

Posted 张叔zhangshu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab三维阴影曲面绘图函数surfsurfcfurflmatlab图行绘制六相关的知识,希望对你有一定的参考价值。

三维阴影曲面的绘制
前一节我们绘制的三维曲面中,各个小的曲面片都是由四边形组成的,这个四边形的4条边绘制有某一种颜色,但其内部却无颜色(即为绘图窗口的底色)。
本节将介绍另外一种三维曲面的表示方法——三维阴影曲面。这种曲面也是由很多个较小的四边形构成的,但是各个4条边是无色的(即为绘图窗口的底色),其内部却分布着不同的颜色,也可认为是各个四边形带有阴影效果。MATLAB提供了3条用于绘制这种3类阴影曲面的命令:surf、surfc、furfl。
1.阴影曲面绘制命令
下面首先介绍基本的三维阴影曲面的绘制。这种绘制方式采用surf函数,调用这种函数的格式如下。

surf(X,Y,Z,C)
surf(X,Y,Z)
surf(x,y,Z,C)
surf(x,y,Z)
surf(Z,C)
surf(Z)

使用此种函数时,需要注意以下几种说明。
(1)这6个surf命令与3.4.4节所介绍的6个mesh命令的使用方法及参数含义相同。
(2)surf命令与mesh命令的区别是者绘制的是三维阴影曲面,而者绘制的是三维网格曲面
(3)在surf命令中,各个四边形表面的颜色分布方式可由shading命令来指令。
shading faceted:表示截面式颜色分布方式。
shading interp:表示插补式颜色分布方式。
shading flat:表示平面式颜色分布方式。
采用shading faceted 函数来设置函数的三维阴影曲面效果。

x=-7:0.5:7;
y=x;
[X,Y]=meshgrid(x,y);
R=sqrt(X.^2+Y.^2)+eps;
Z=2*sin(R)./R;
surf(X,Y,Z)
grid on
axis([-10 10 -10 10 -0.5 1.5])
shading faceted


同样,也可以利用shading flat 来设置,以起到相应的效果。

x=-7:0.5:7;
y=x;
[X,Y]=meshgrid(x,y);
R=sqrt(X.^2+Y.^2)+eps;
Z=2*sin(R)./R;
surf(X,Y,Z)
grid on
axis([-10 10 -10 10 -0.5 1.5])
shading flat

以上是关于matlab三维阴影曲面绘图函数surfsurfcfurflmatlab图行绘制六的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB三维曲面绘图你不得不知道的...

MATLAB 绘图函数总结

MATLAB 绘图函数总结

MATLAB 绘图函数总结

MATLAB绘图—三维曲面绘图(surf)

matlab三维网格绘图函数meshmeshcmeshzmeshgridsurfmatlab图行绘制五