MATLAB三维图形的精细化处理_第1页
MATLAB三维图形的精细化处理_第2页
MATLAB三维图形的精细化处理_第3页
MATLAB三维图形的精细化处理_第4页
MATLAB三维图形的精细化处理_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MATLAB语言课程论文MATLAB三维图形的精细化处理姓名: 学号: 专业:通信工程 班级: 指导老师: 学院:物理电气信息学院 完成日期:2010年12月23日 MATLAB三维图形的精细化处理()摘要利用MATLAB绘图十分方便,它既可以绘制各种图形,还可以对图形进行修饰和控制,以增强图形的表现效果。MATLAB通过低层绘图和基于低层绘图的高层绘图操作可以对三维图形进行视点、色彩及图形的剪裁处理,以达到图形的精细化要求。关键词 MATLAB 图形绘制 精细化处理 一、问题的提出在如今的科学研究和工程应用中,我们会遇到各种各样的问题,其中包括关于图形绘制和图形表现效果的问题,而MATLAB

2、中强大的绘图功能和用于精细化处理各个函数,将使这些问题可以得到更好的解决,下面我们就分别对MATLAB在此方面的应用进行分析:二、三维绘图中的视点、色彩及剪裁处理问题1、视点的处理 为了增强三维图形的表现效果,需要从不同的绘制三维图,MATLAB中通过函数view(az,el)进行视点的处理。问题1:旋转观察多峰函数曲面,程序如下,结果如图1.1所示mesh(peaks); %绘制多峰函数el=30; %设置仰角为30度。for az=0:1:360 %让方位角从0变到360,绕z轴一周 view(az,el); drawnow;endaz= 0; %设置方位角为0for el=0:1:360

3、 %仰角从0变到360 view(az,el); drawnow;end az= 0; %设置方位角为0for el=0:1:360 %仰角从0变到360 view(az,el);drawnow;end 图1.1旋转多峰函数曲面2.色彩处理 用含有三个元素的向量表示颜色。问题2.绘制红绿蓝三色色图,演示色图和色图矩阵。色图如图2.1所示。例子2. cm=1 0 0;0 1 0;0 0 1; %建立红绿蓝色图矩阵m=size(cm,1); %色图维数确定y=1:m+1;1:m+1' %色图变化pcolor(y),colormap(cm) %图形窗口色图设置和改变图2.1红蓝绿三色图问题3

4、.随机色图的绘制。程序如下,色图如图2.2所示。rand('seed',2); %产生随机矩阵cm=rand(16,3); %建立随机色图矩阵m=size(cm,1); %色图维数确定y=1:m+1;1:m+1' %色图变化pcolor(y),colormap(cm) %图形窗口色图设置和改变图2.2随机色图问题4.为了增强图形的表现效果需要对绘制的曲面图形进行插值着色处理,程序如下,处理结果如图2.3s=linspace(0,0.5*pi,10); %在(0,0.5pi)取十个点t=linspace(0,1.5*pi,30); %在(0,1.5pi)取十个点 S,T=

5、meshgrid(s,t); %建立网格坐标x=cos(S).*cos(T); %参数方程y=cos(S).*cos(T);z=sin(S);colormap(prism); %对图形进行着色处理figure(1) ; %建立图形窗口对象surf(x); %绘制三维曲面图figure(2); %建立图形窗口对象surf(y);shading flat; %每个网格片用一个颜色着色figure(3); %建立图形窗口对象surf(z);shading interp ; %在网格片内采用颜色插值处理 图2.3插值及着色处理图从绘制好的经插值着色处理后的图形显示效果可以看出用shading flat

6、语句可以将每一个网格片进行单一着色, 用shading interp语句在网格片内采用颜色插值处理得到颜色带状相间的光滑曲面图。 3.对图形的剪裁处理绘图过程中需要对图形进行剪裁处理以实现三维图形的可视性,有助于表现其立体效果。问题5.matlab利用不定数NaN的特点,可以对网图进行裁剪处理。P=peaks(30);subplot(2,1,1); %图形窗口的分割mesh(P); %生成网格坐标title('裁剪前的网图') %添加图形名称标注subplot(2,1,2);%图形窗口的分割P(20:23,9:15)=NaN*ones(4,7); %剪孔meshz(P) %垂帘

7、网线图title('裁剪后的网图') %添加图形名称标注colormap(0 0 1) %蓝色网线图3.1图形剪裁处理对比图三.总结及体会通过以上分析我们可以看到,MATLAB的功能是非常强大的,在三维图形的精细化处理中应用广泛而灵活,我们可以通过view(az,el)函数对三维图形进行不同视点的展示,制作动态图形从各个视角观察三维图形的立体效果。运用colormap函数实现图形窗口色图的设置,shading flat和shading interp命令对图形进行着色和插值处理。此外,NaN常数可用来表示那些不可使用的数据,从而完成图形的剪裁处理,充分体现图形的立体性,增强图形的表现效果。经过对MATLAB语言这门课程的学习,我了解并体会到了MATLAB语言相对于其它程序语言的强大功能和优越性,它更加的方便和简洁易懂。总体来说通过对上述内容的分析讨论,使我对MATLAB中的某些函数的应用更加的熟练,相信对我在以后的学习中会有很大的帮助。最后,向老师的辛勤指导及教学表示深

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论