已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2019年12月6日,第1页,第9章句柄图形,MATLABR2007基础教程清华大学出版社,教学目标教学重点教学内容,2019年12月6日,第2页,教学目标,了解MATLAB图形对象及属性掌握MATLAB图形对象属性的设置及查询掌握MATLAB图形对象句柄的访问及操作,2019年12月6日,第3页,教学重点,MATLAB图形对象及属性MATLAB图形对象句柄的访问及操作,2019年12月6日,第4页,教学内容,MATLAB图形对象及属性MATLAB图形对象属性的设置及查询MATLAB图形对象句柄的访问及操作,2019年12月6日,第5页,MATLAB的图形对象,图形对象是MATLAB显示数据的基本绘图元素,每个对象拥有一个唯一的标志,即句柄。通过句柄可以对已有的图形对象进行操作,控制其属性。MATLAB中这些对象的组织形式为层次结构,如图所示。,2019年12月6日,第6页,Root对象,Root对象即根对象。根对象位于MATLAB层次结构的最上层,因此在MATLAB中创建图形对象时,只能创建唯一的一个Root对象,而其他的所有对象都从属于该对象。根对象是由系统在启动MATLAB时自动创建的,用户可以对根对象的属性进行设置,从而改变图形的显示效果。,2019年12月6日,第7页,Figure对象,Figure是MATLAB显示图形的窗口,其中包含菜单栏、工具栏、用户接口对象、右键菜单、坐标系及坐标系的子对象等。MATLAB允许用户同时创建多个图形窗口。如果当前尚未创建图形对象(即Figure窗口),则调用任意一个绘图函数或图像显示函数(如plot函数和imshow函数等)均可以自动创建一个图形窗口。如果当前根对象已经包含了一个或多个图形窗口,则总有一个窗口为“当前”窗口,且该窗口为所有当前绘图函数的输出窗口。,2019年12月6日,第8页,Core对象,Core对象包括基本的绘图单元,包括线条、文本、多边形及一些特殊对象,如表面图,表面图中包括矩形方格、图像和光照对象,光照对象不可视,但是会影响一些对象的色彩方案。MATLAB中的核心对象(Core)如表所示。,2019年12月6日,第9页,Plot对象,MATLAB的一些高级绘图函数可以创建Plot对象。通过Plot对象的属性可以快速访问其包含的核心(Core)对象的重要属性。Plot对象的上级对象可以为坐标系(Axes)对象或者组(Group)对象。MATLAB中能够生成Plot对象的函数及其功能如表所示。,2019年12月6日,第10页,Annotation对象,Annotation对象是MATLAB中的注释内容,存在于因此的坐标系中,该坐标系的范围为整个图形窗口。用户可以通过规范化坐标将注释对象放置于图形窗口中的任何位置。规范化坐标的范围为从0到1,窗口左下角为0,0,右上角为1,1。,2019年12月6日,第11页,Group对象,Group对象允许用户将多个坐标系子对象作为一个整体进行操作。如,可以设置整个组为可视或者不可视,或者通过改变组对象的属性重新设置其中所有对象的位置等。MATLAB中有两种类型的组:hggroup:如果需要创建一组对象,并且通过对该组中的任何一个对象进行操作而控制整个组的可视性或选中该组,则使用hggroup。hggroup通过hggroup函数创建。hgtransform:当需要对一组对象进行变换时创建hgtransform,其中变换包括选中、平移、尺寸变化等。hggroup组和hgtransform组之间的差别在于hgtransform可以通过用变换矩阵对其中的所有子对象进行操作。,2019年12月6日,第12页,图形对象的属性,图形对象的属性控制图形的外观和显示特点。图形对象的属性包含公共属性和特有属性。,2019年12月6日,第13页,图形对象属性值的设置和查询,属性值的设置对象的默认属性值属性值的查询,2019年12月6日,第14页,属性值的设置,MATLAB中,set函数可以用于设置对象的各项属性:set(gca,YAxisLocation,right)通过set函数查看一个对象的所有可设置属性的所有可能的值set(axes)ActivePositionProperty:position|outerpositionALimALimMode:auto|manualAmbientLightColorBox:on|off,2019年12月6日,第15页,对象的默认属性值,默认属性值的搜索MATLAB对默认属性值的搜索从当前对象开始,沿着对象的从属关系图向更高的层次搜索,直到发现系统的默认值或用户自己定义的值。定义对象的默认值时,在对象从属关系图中,该对象越靠近Root(根)对象,其作用的范围就越广。如果用户在对象从属关系图的不同层次上定义同一个属性的默认值,则MATLAB将会自动选择最下层的属性值作为最终的属性值。需要注意的是,用户自定义的属性值只能影响到该属性设置后创建的对象,之前的对象都不受到影响。默认属性值的设指定MATLAB对象的默认值,需要首先创建一个以“Default”开头的字符串,该字符串的中间部分为对象类型,末尾部分为属性的名称。,2019年12月6日,第16页,属性值的查询,MATLAB中,利用get函数可以查询对象属性的当前值。,2019年12月6日,第17页,图形对象句柄的访问,图形对象句柄的取值当前图形句柄通过属性值查找对象图形对象的复制图形对象的删除,2019年12月6日,第18页,图形对象句柄的取值,每个图形对象句柄都有一个特定的值,但不同的对象,句柄的取值类型也略有不同。1Root根对象的句柄取值为0。2Figure对象的属性IntegerHandle控制该对象所获取的句柄的取值类型,IntegerHandle的默认值为on,此时句柄为整数,显示在窗口标题栏中;当该属性的值为off时其句柄为具有完全MATLAB内部精度的浮点数。3所有其他图形对象的句柄取值为浮点类型,在引用这些句柄时,必须保持其精度的完整。,2019年12月6日,第19页,当前图形句柄,在MATLAB中,句柄图形有一个重要概念为当前性(BeingCurrent)。当前的图形对象即为最后创建的图形对象,或最后被鼠标点中的图形对象。在通常情况下,MATLAB保存三个“当前句柄”,三个句柄为层次关系。这些属性能够使得用户方便的获取这些关键对象的句柄,其方法如下:get(0,CurrentFigure),获取当前图形窗口对象的句柄;get(gcf,CurrentAxes),获取当前图形窗口对象中当前坐标轴对象的句柄;get(gcf,CurrentObject),获取当前图形窗口对象中当前对象的句柄。,2019年12月6日,第20页,通过属性值查找对象,MATLAB的findobj函数可以用于快速遍历对象从属关系表并获取具有特定属性值的对象句柄的方法。如果用户没有指定起始对象,那么findobj函数从根对象开始查找。该函数的调用格式为:h=findobj,返回根对象及其所有的从属句柄,返回值为一个列向量。h=findobj(PropertyName,PropertyValue,.),返回满足PropertyName属性的值为PropertyValue的所有句柄,可以同时设置多个条件。h=indobj(PropertyName,PropertyValue,-logicaloperator,PropertyName,PropertyValue,.),返回所有满足指定表达式的句柄,其中的逻辑操作符可以是and、-or、-xor或not。,2019年12月6日,第21页,h=findobj(-regexp,PropertyName,regexp,.),以正则表达式的方式进行条件匹配,相当于将属性PropertyName的值传递给函数regexp,得到regexp(PropertyValue,regexp)。该语句返回满足匹配的句柄。h=findobj(-property,PropertyName),返回所有具有指定属性的句柄。h=findobj(objhandles,.),在objhandles指定的对象及其子对象中查找。h=findobj(objhandles,-depth,d,.),指定查找的深度。参数d控制查找的深度,如果将d设置为inf,则与默认效果相同,查找所有深度;如果设置d为0,则与使用参数flat的效果相同。h=findobj(objhandles,flat,PropertyName,PropertyValue,.),限制查找范围,仅查找objhandles指定的句柄,而不查找其子句柄。,2019年12月6日,第22页,图形对象的复制,通过copyobj函数可以实现将对象从一个父对象移动至另一个父对象中。新对象与原对象的唯一差别在于其Parent属性值不同,并且其句柄不同。在MATLAB中,可以向一个新的父对象中复制多个子对象,也可以将一个子对象复制到多个父对象中。复制对象需要注意的是,子对象和父对象之间的类型必须匹配。在复制对象时,如果被复制的对象包含子对象,MATLAB同时复制所有的子对象。,2019年12月6日,第23页,copyobj函数,copyobj函数的用法为:new_handle=copyobj(h,p)该语句复制h指定的图形对象至p指定的对象中,成为p的子对象。h和p的取值可以有下面三种情况:h和p均为向量。此时h和p长度必须相同,返回值new_handle为长度相同的向量。在这种情况下,new_handle(i)是h(i)的副本,其父对象为p(i);h为标量,p为向量,此时将h复制到p指定的所有对象中,返回结果new_ha
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025中诚国际海洋工程勘察设计有限公司招聘10人笔试历年参考题库附带答案详解
- 2025中国能建葛洲坝集团北方分公司招聘20人(湖北)笔试历年参考题库附带答案详解
- 2025中国南水北调集团新能源投资有限公司招聘第二批岗位拟聘人员笔试历年参考题库附带答案详解
- 2025上海上药医药科技有限公司招聘2人笔试历年参考题库附带答案详解
- 上海市崇明区九校(五四制)2025-2026学年八年级下学期期中数学试题(含答案)
- 2026 三年级下册《Unit3 情景教学课件》课件
- 河北石家庄市2026届高三二模语文试题及参考答
- 2025图书馆(借阅系统安装)合同
- 汽车机械基础课件 带传动的类型及应用
- 《直观的数据》教学课件-2025-2026学年沪教版(新教材)小学美术三年级下册
- 世界各地高中教育体系比较
- 原料不合格处置管理培训
- 四川省成都市成华区片区联考2025-2026学年八年级(上学期)期中英语试卷(含解析)
- 2025年顺丰快递员劳动合同模板
- 2026年中考语文专题复习:标点符号 讲义
- 常见病小儿推拿培训
- 政务颁奖礼仪培训
- 疝气手术护理宣教
- 行文格式规范培训
- 肝癌破裂出血的护理
- 持续时间模型的估计与检验
评论
0/150
提交评论