matble课程论文(MATLAB在三维作图中的应用).docx
《matble课程论文(MATLAB在三维作图中的应用).docx》由会员分享,可在线阅读,更多相关《matble课程论文(MATLAB在三维作图中的应用).docx(21页珍藏版)》请在咨信网上搜索。
1、MATLAB课程论文MATLAB在三维作图中的应用姓名:学号:专业:班级:指导老师:学院:完成日期:MATLAB在三维作图中的应用摘要MATLAB提供了一系列的绘图函数,用户不仅不许考虑绘图细节,只需给出一些基本的参数就能得到所需要的图形,这一类函数称为高层绘图函数。除此之外,MATLAB还提供了直接对句柄进行操作的一系列的低层的绘图操作。这类操作将图形的每个元素看做是一个独立的对象,系统给每个对象独立的分配一个句柄,以后可以通过该句柄对改图元素进行操作,而不影响图形的其他部分。高层绘图操作简单明了,方便高效,使用户最常使用的绘图方法,而低层绘图操作控制和表现图形的能力更强,为用户自主绘图创造
2、了条件。其实MATLAB的高层绘图函数都是利用低层绘图函数建立起来的。所以MATLAB的计算准确、效率高、使用快捷等优点常被广泛应用于科学和工程领域.关键字MATLAB语言 三维图形 图像处理 绘制一, 问题的提出MATLAB语言是当前国际学科界应用很广泛的一种软件,强大的绘图功能是MATLAB的特点之一。MATLAB提供了一系列的绘图函数,利用它强大的图像处理来绘制三维图形既简单而且也很方便。在绘制三维图形的过程中也用到了MATLAB语言的其他功能,绘制三维图形时用到了它提供的一些函数,利用这些函数可以方便的生成一些特殊矩阵,因此可生成一个坐标平面。MATLAB语言强大的功能也在二维三维绘图
3、中的得到了很广泛的应用,利用它所提供的精细的图像处理功能,如MATLAB还提供了直接对句柄进行操作的一系列的低层的绘图操作。这类操作将图形的每个元素看做是一个独立的对象,系统给每个对象独立的分配一个句柄,以后可以通过该句柄对改图元素进行操作,而不影响图形的其他部分。高层绘图操作简单明了,使用户最常使用的绘图方法,而低层绘图操作控制和表现图形的能力更强,为用户自主绘图创造了条件,还可以对所绘制的三维图形作一个修饰的处理。MATLAB语言具有强大的以图形化显示矩阵和数组的能力,同时它给这些图形增加注释并且可以对图形进行标注和打印。MATLAB的图形技术包括三维的可视化、图形处理、动画等高层次的专业
4、图形的高级绘图,例如图形的光照处理、色度处理以及四维数据的表现等。那么,如何把它强大的功能应用于实际应用中,下面我们将用实例说明MATBLE在三维作图中的应用。二,MATLAB的主要功能及特点MATLAB近几年广泛用于图像处理和识别, 使用MATLAB设计模式识别应用软件将使设计者获得更大的自由, 可以任意执行特殊的算法和实现复杂的操作,MATLAB之所以成为世界顶级的科学计算与数学应用软件, 是因为它随着版本的升级与不断完善而具有愈来愈强大的功能。(1)数值计算功能。(2)符号计算功能。(3)数据分析功能。(4)动态仿真功能。(5)图形文字统一处理功能。MATLAB 有三大特点:一是功能强大
5、。主要包括数值计算和符号计算、计算结果和编程可视化、数学和文字统一处理、离线和在线计算。二是界面友好,编程效率高。MATLAB 是一种以矩阵为基本单元的可视化程序设计语言, 语法结构简单, 数据类型单一,指令表达与标准教科书的数学表达式相近。三是开放性强。MATLAB 有很好的可扩充性, 可以把它当成一种更高级的语言去使用。使用它很容易编写各种通用或专用应用程序。四是matble拥有丰富的库函数。三, MATBLE在三维制图中的问题例1、两个同直径圆管相交程序m=30; %定义变量theta=(0:m)/m*2*pi; %取角度z=1.2*(-m:2:m)/m; %设置竖直圆管的高度r=one
6、s(size(z); %生成同z大小的全一矩阵z1=z*ones(1,m+1); %生成第一个圆管的坐标矩阵x1=r*cos(theta); %生成第一个圆管的坐标矩阵y1=r*sin(theta); %生成第一个圆管的坐标矩阵surf(x1,y1,z1); %绘制竖立的圆管x=(-m:2:m)/m; %产生行矩阵x2=x*ones(1,m+1); %生成第一个圆管的坐标矩阵y2=r*cos(theta); %生成第一个圆管的坐标矩阵z2=r*sin(theta); %生成第一个圆管的坐标矩阵surf(x2,y2,z2); %绘制平放的圆管surf(x1,y1,z1);hold on; %竖立
7、的圆管上添加平放的圆管surf(x2,y2,z2); %绘制平放的圆管axis equal,axis off %去掉坐标轴title(两个同直径圆管的相交); %添加标题hold off %关闭图形保持运行结果如图1所示。图1 两个同直径圆管的相交图形两个同直径圆管相交的前视图的程序x1=-1,-1,1,1,-1; %在x轴上取点y1=1.2,-1.2,-1.2,1.2,1.2; %在y轴上取点x2=-1,1; %在x轴上取点y2=1,-1; %在y轴上取点x3=1,-1; %在x轴上取点y3=1,-1; %在y轴上取点plot(x1,y1); %把各点连起来设置外围线hold on %设置图
8、形保持状态plot(x2,y2); %绘制两条相交直线中的一条hold on %设置图形保持状态plot(x3,y3); %绘制两条相交直线中的另一条ax1=0,1,1; %在x轴上取点ay1=0,-1,1; %在y轴上取点ax2=0,-1,-1; %在y轴上取点fill(ax1,ay1,g); %填充颜色hold on %设置图形保持状态fill(ax2,ay2,g) %添充颜色axis equal,axis off; %去掉坐标轴title( 两个同直径圆管相交的前视图); %给绘制的图形添加标题运行结果如图2所示。图2 两个同直径圆管相交的前视图图形两个同直径圆管相交的侧视图程序r1=1
9、; %定义变量t=0:pi/90:2*pi; %取角度xc=r1*cos(t); %水平圆柱zc=r1*sin(t); %水平圆柱fill(xc,zc,y); %给水平圆柱填充颜色hold on %设置图形保持状态tx1=1,1,-1,-1; %在x轴上取点ty1=0,1,1,0; %在y轴上取点plot(tx1,ty1); %绘制竖立的圆管hold on %设置图形保持状态tx2=1,1,-1,-1; %在x轴上取点ty2=0,-1,-1,0; %在y轴上取点plot(tx2,ty2); %绘制图形axis equal,axis off; %去掉坐标轴title( 两个同直径圆管相交的侧视图
10、); %添加标题运行结果如图3所示。图3 两个同直径圆管相交的侧视图图形例2,mesh和plot是三度空间立体绘图的基本命令,mesh可画出立体网状图,plot则可画出立体曲面图,两者产生的图形都会依高度而有不同颜色。下列命令可画出由函数形成的立体网状图: x=linspace(-2, 2, 25); % 在x轴上取25点 y=linspace(-2, 2, 25); % 在y轴上取25点 xx,yy=meshgrid(x, y); % xx和yy都是25x25的矩阵 zz=xx.*exp(-xx.2-yy.2); % 计算函数值,zz也是21x21的矩阵 mesh(xx, yy, zz);
11、% 画出立体网状图 立体曲面图:x=linspace(-2, 2, 25); % 在x轴上取25点 y=linspace(-2, 2, 25); % 在y轴上取25点 xx,yy=meshgrid(x, y); % xx和yy都是25x25的矩阵 zz=xx.*exp(-xx.2-yy.2); % 计算函数值,zz也是25x25的矩阵 surf(xx, yy, zz); % 画出立体曲面图 peaks为了方便测试立体绘图,MATLAB提供了一个peaks函数,可产生一个凹凸有致的曲面,包含了三个局部极大点及三个局部极小点,其方程式为: 要画出此函数的最快方法即是直接键入peaks: peaks
12、 z = 3*(1-x).2.*exp(-(x.2) - (y+1).2) - 10*(x/5 - x.3 - y.5).*exp(-x.2-y.2) - 1/3*exp(-(x+1).2 - y.2) 我们亦可对peaks函数取点,再以各种不同方法进行绘图。meshz可将曲面加上围裙: x,y,z=peaks; meshz(x,y,z); waterfall可在x方向或y方向产生水流效果: x,y,z=peaks; waterfall(x,y,z); 下列命令产生在y方向的水流效果: x,y,z=peaks; waterfall(x,y,z); meshc同时画出网状图与等高线: x,y,z
13、=peaks; meshc(x,y,z); surfc同时画出曲面图与等高线: x,y,z=peaks; surfc(x,y,z); contour3画出曲面在三度空间中的等高线: contour3(peaks, 20); contour画出曲面等高线在XY平面的投影: contour(peaks, 20); 例三,螺旋线1,静态螺旋线a=0:0.1:20*pi;h=plot3(a.*cos(a),a.*sin(a),2.*a,b,linewidth,2);axis(-50,50,-50,50,0,150);grid onset(h,erasemode,none,markersize,22);
14、xlabel(x轴);ylabel(y轴);zlabel(z轴);title(静态螺旋线); 2,圆柱螺旋线t=0:0.1:10*pi;x=r.*cos(t);y=r.*sin(t);z=t;plot3(x,y,z,h,linewidth,2);grid onaxis(square)xlabel(x轴);ylabel(y轴);zlabel(z轴);title(圆柱螺旋线)例三,旋转抛物面b=0:0.2:2*pi;X,Y=meshgrid(-6:0.1:6);Z=(X.2+Y.2)./4;meshc(X,Y,Z);axis(square)xlabel(x轴);ylabel(y轴);zlabel(
15、z轴);title(旋转抛物面)或直接用:ezsurfc(X.2+Y.2)./4)例四,椭圆柱面load clownezsurf(2*cos(u),4*sin(u),v,0,2*pi,0,2*pi)view(-105,40) %视角处理shading interp%灯光处理colormap(map) %颜色处理grid on %添加网格线axis equal %使x,y轴比例一致xlabel(x轴);ylabel(y轴);zlabel(z轴); %添加坐标轴说明title(椭圆柱面) %添加标题例五,椭圆抛物面b=0:0.2:2*pi;X,Y=meshgrid(-6:0.1:6);Z=X.2.
16、/9+Y.2./4;meshc(X,Y,Z);axis(square)xlabel(x轴);ylabel(y轴);zlabel(z轴);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)axis equalgrid onaxis squarexlabel(x轴);ylabel(y轴);zlabel(z轴);title(双叶双曲面)例七、双曲柱面load clownezsurf(2*sec(u),2*tan(u
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matble 课程 论文 MATLAB 三维 作图 中的 应用
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。