设计教室
设计欣赏|图形图像|媒体动画|机械电子|CI设计|设计文献|PhotoShop|Corel3Dmax|Flash|AutoCad|设计视频
首页 > 设计教室 > 机械电子 > MATLAB > 正文

Matlab 图形对象的操作


10 句柄图形
    与第7章的高层指令相比,本章的内容更深入MATLAB教程:可视化功能的内核。编写本章的目的有两个:一,使读者更深入地理解高层绘图指令,从而可绘制出更精细更生动更个性的图形;二,使读者能利用低层图形指令和图形对象属性开发专用绘图函数。
    本章在内容安排上有如下考虑:
1、 保证概念、结构和方法的完整性 :本章的前 6 节内容按由表及里、由浅入深的原则系统阐述句柄图形体系、图形对象、属性和操作方法。

2、突出要点、新点和难点 :句柄图形体系有 11 个基本图形对象,每个对象的属性少则 20 几个,多则近百个。对此, MATLAB教程: 自带资料有详尽的文字说明。因此,本章只对最常用的、不可或缺的、 MATLAB教程: 老版本中所没有的、以及较难掌握的内容进行说明。

3、强调“可操作性”体现“范例引导概念”的本书宗旨 :针对 MATLAB教程: 自带资料缺少完整、可操作应用实例的 弱点,本章设计了 17 个算例,其中 9 个精心设计的完整应用范例就占本章一半以上篇幅。读者通过阅读或操作这些范例,可掌握各指令、属性之间的有机配合,从而更具体更真切地理解句柄图形。
     在本章内容正式展开之前,先把 MATLAB教程: 随带资料中涉及各对象属性的文件及查阅方法罗列如下。读者应重视这些最原始、最权威、最细节、任何其它书籍不能代替的资料。

4、使用 Adobe Acrobat Reader 阅读(或打印)以下 PDF 文件
help/pdf_doc/matlab/graphg.pdf ;
help/pdf_doc/matlab/ref/refbook2.pdf ;

5、使用 Netscape Navigator 或 Microsoft Internet Explorer 打开以下引导文件
help/techdoc/infotool/hgprop/doc_frame.htm
6、使用指令 help 或 help window 图形用户界面查看有关对象的资料。如 help figure 可直接得到有关图对象的属性描述。

7、利用 get , set 指令在 MATLAB教程: 指令窗中,直接查询对象属性。


10.2 图形对象的操作
10.2.2 对象句柄的获取方法

10.2.2.2 句柄获取示例
【 * 例 10.2.2 .2-1 】画网线图,并得相应句柄;追溯法找所在图形窗句柄; gcf 和 gca 演示。
clf reset;H_mesh=mesh(peaks(20))
H_grand_parent=get(get(H_mesh,'Parent'),'Parent')
disp(' 图柄 轴柄 '),disp([gcf gca]) % 显示当前图形窗和轴的句柄
H_mesh =
73.0135
H_grand_parent =
1
图柄 轴柄
1.0000 72.0051


图 10.2.2 .2_1

【 * 例 10.2.2 .2-2 】低层指令绘图,获得句柄;获取同轴上字对象的句柄和相应对象类型。
clf reset,t=(0:100)/100*2*pi;H_line=line('Xdata',t,'Ydata',sin(t))
text(pi,0.8,'/fontsize{14}sin(t)')
H_c=get(get(H_line,'parent'),'children') % 轴之所有“子”的句柄
T=get(H_c,'Type') % 轴之所有“子”对象名称
H_line =
72.0052
H_c =
74.0116
72.0052
T =
'text'
'line'


图 10.2.2 .2_2

【 * 例 10.2.2 .2-3 】 findobj 指令的使用。
clf reset,t=(0:pi/100:2*pi)';tt=t*[1 1];yy=sin(tt)*diag([0.5 1]);
plot(tt,yy),Hb=findobj(gca,'Color','b') % 在当前轴上寻找蓝线的句柄
Hb =
72.0050


图 10.2.2 .2_3

 

上一篇: MATLAB教程: 奇异值分解
下一篇:Matlab 面向对象编程

评论  点击查看
 
设计频道推荐
设计热点文章