MATLAB 三维图形分析和总结.docx

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第十八章三维图形

为了显示三维图形,MATLAB提供了各种各样的函数。有一些函数可在三维空间中画线,而另一些可以画曲面与线格框架。另外,颜色可以用来代表第四维。当颜色以这种方式使用时,由于它不再象照片中那样显示信息的自然属性----色彩,而且也不是基本数据的内在属性,所以它称作伪彩色。为了简化对三维图形的讨论,对颜色的介绍推迟到下一章。在这一章,主要讨论绘制三维图形的基本概念。

函数plot3

plot3命令将绘制二维图形的函数plot的特性扩展到三维空间。函数格式除了包括第三维的信息(比如Z方向之外,与二维函数plot相同。plot3一般语法调用格式是plot3(x1,y1,z1,S1,x2,y2,z2,S2,…,这里xn,yn和zn是向量或矩阵,Sn是可选的字符串,用来指定颜色、标记符号和/或线形。

总的来说,plot3可用来画一个单变量的三维函数。如下为一个三维螺旋线例

子:

?t=0:pi/50:10*pi;

?plot3(sin(t,cos(t,t

?title(‘Helix‘,xlabel(‘sint(t‘,ylabel(‘cos(t‘,zlabel(‘t‘

?text(0,0,0,‘Origin‘

?grid

?v=axisv=

-11-11040

输出见图18.1.

图18.1螺旋线图

从上例可明显看出,二维图形的所有基本特性在三维中仍都存在。axis命令扩展到三维

只是返回Z轴界限(0和40,在数轴向量中增加两个元素。函数zlabel用来指定z轴的数据名称,函数grid在图底绘制三维网格。函数test(x,y,z,‘st在ri由ng三‘维坐标x,y,z所指定的位置放一个字符串。另外,子图和多图形窗口可以直接应用到三维图形中。

在最后一章可以看到,通过指定plot命令的多个参量或使用hold命令,可以把多条直线或曲线重叠画出。plot3以及其它的三维图形函数都可以提供相同的能力。例如,增加维数的plot3命令可以使多个二维图形沿一个轴排列起来,而不是直接将二维图形叠到另一个的上面。

?x=linspace(0,3*pi;%x-axisdata

?z1=sin(x;%plotinx-zplane

?z2=sin(2*x;

?z3=sin(3*x;

?y1=zeros(size(x;%spreadoutalongy-axis

?y3=zeros(size(x;%bygivingeachdiffenty-axisvalues

?y2=y3/2;

?plot3(x,y1,z1,x,y2,z2,x,y3,z3;

?grid,xlabel(‘x-axis‘,ylabel(‘y-axis‘,abel(‘z-axis‘?title(‘sin(x,sin(2x,sin(3x‘

输出见图18.2.

图18.2正弦曲线图

上述图形也可以沿另外方向堆列。

?plot3(x,z1,y1,x,z2,y2,x,z3,y3

?grid,xlabel(‘x-axis‘,ylabel(‘y-axis‘,zlabel(‘z-axis‘?title(‘sin(x,sin(2x,sin(3x‘

输出见图18.3.

图18.3正弦曲线图

改变视角

注意两个图形,一个是以30度视角向下看z=0平面,一个是以37.5度视角向上看x=0平面。这是对所有三维图形的缺省视角。与z=0平面所成的方向角叫仰角,与x=0平面的夹角叫做方位角。这样,缺省的三维视角方向仰角为30度,方位角为

-37.5度。而缺省的二维视角仰角为90度,方位角为0度。仰角和方位角的概念在图18.4中形象地画出。

图18.4仰角和方位角示意图

图18.5视角举例图

在MATLAB中,函数view改变所有类型的二维和三维图形的图形视角。view(az,el和view([az,el]将视角改变到所指定的方位角az和仰角el。考虑下面脚本M文件形式的例子。

%viewpointexampleusingsubplots

x=linspace(0,3*pi.’;

Z=[sin(xsin(2*xsin(2*x];%createYandZaxesasmatricesY=[zeros(size(xones(size(x/2ones(size(

文档评论(0)

mph + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体上海谭台科技有限公司
IP属地上海
统一社会信用代码/组织机构代码
91310115MA7CY11Y3K

1亿VIP精品文档

相关文档