MATLAB R2007基礎(chǔ)教程PPT教學(xué)課件-第9章 句柄圖形.ppt_第1頁(yè)
MATLAB R2007基礎(chǔ)教程PPT教學(xué)課件-第9章 句柄圖形.ppt_第2頁(yè)
MATLAB R2007基礎(chǔ)教程PPT教學(xué)課件-第9章 句柄圖形.ppt_第3頁(yè)
MATLAB R2007基礎(chǔ)教程PPT教學(xué)課件-第9章 句柄圖形.ppt_第4頁(yè)
MATLAB R2007基礎(chǔ)教程PPT教學(xué)課件-第9章 句柄圖形.ppt_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2019年12月6日,第1頁(yè),第9章句柄圖形,MATLABR2007基礎(chǔ)教程清華大學(xué)出版社,教學(xué)目標(biāo)教學(xué)重點(diǎn)教學(xué)內(nèi)容,2019年12月6日,第2頁(yè),教學(xué)目標(biāo),了解MATLAB圖形對(duì)象及屬性掌握MATLAB圖形對(duì)象屬性的設(shè)置及查詢掌握MATLAB圖形對(duì)象句柄的訪問(wèn)及操作,2019年12月6日,第3頁(yè),教學(xué)重點(diǎn),MATLAB圖形對(duì)象及屬性MATLAB圖形對(duì)象句柄的訪問(wèn)及操作,2019年12月6日,第4頁(yè),教學(xué)內(nèi)容,MATLAB圖形對(duì)象及屬性MATLAB圖形對(duì)象屬性的設(shè)置及查詢MATLAB圖形對(duì)象句柄的訪問(wèn)及操作,2019年12月6日,第5頁(yè),MATLAB的圖形對(duì)象,圖形對(duì)象是MATLAB顯示數(shù)據(jù)的基本繪圖元素,每個(gè)對(duì)象擁有一個(gè)唯一的標(biāo)志,即句柄。通過(guò)句柄可以對(duì)已有的圖形對(duì)象進(jìn)行操作,控制其屬性。MATLAB中這些對(duì)象的組織形式為層次結(jié)構(gòu),如圖所示。,2019年12月6日,第6頁(yè),Root對(duì)象,Root對(duì)象即根對(duì)象。根對(duì)象位于MATLAB層次結(jié)構(gòu)的最上層,因此在MATLAB中創(chuàng)建圖形對(duì)象時(shí),只能創(chuàng)建唯一的一個(gè)Root對(duì)象,而其他的所有對(duì)象都從屬于該對(duì)象。根對(duì)象是由系統(tǒng)在啟動(dòng)MATLAB時(shí)自動(dòng)創(chuàng)建的,用戶可以對(duì)根對(duì)象的屬性進(jìn)行設(shè)置,從而改變圖形的顯示效果。,2019年12月6日,第7頁(yè),Figure對(duì)象,Figure是MATLAB顯示圖形的窗口,其中包含菜單欄、工具欄、用戶接口對(duì)象、右鍵菜單、坐標(biāo)系及坐標(biāo)系的子對(duì)象等。MATLAB允許用戶同時(shí)創(chuàng)建多個(gè)圖形窗口。如果當(dāng)前尚未創(chuàng)建圖形對(duì)象(即Figure窗口),則調(diào)用任意一個(gè)繪圖函數(shù)或圖像顯示函數(shù)(如plot函數(shù)和imshow函數(shù)等)均可以自動(dòng)創(chuàng)建一個(gè)圖形窗口。如果當(dāng)前根對(duì)象已經(jīng)包含了一個(gè)或多個(gè)圖形窗口,則總有一個(gè)窗口為“當(dāng)前”窗口,且該窗口為所有當(dāng)前繪圖函數(shù)的輸出窗口。,2019年12月6日,第8頁(yè),Core對(duì)象,Core對(duì)象包括基本的繪圖單元,包括線條、文本、多邊形及一些特殊對(duì)象,如表面圖,表面圖中包括矩形方格、圖像和光照對(duì)象,光照對(duì)象不可視,但是會(huì)影響一些對(duì)象的色彩方案。MATLAB中的核心對(duì)象(Core)如表所示。,2019年12月6日,第9頁(yè),Plot對(duì)象,MATLAB的一些高級(jí)繪圖函數(shù)可以創(chuàng)建Plot對(duì)象。通過(guò)Plot對(duì)象的屬性可以快速訪問(wèn)其包含的核心(Core)對(duì)象的重要屬性。Plot對(duì)象的上級(jí)對(duì)象可以為坐標(biāo)系(Axes)對(duì)象或者組(Group)對(duì)象。MATLAB中能夠生成Plot對(duì)象的函數(shù)及其功能如表所示。,2019年12月6日,第10頁(yè),Annotation對(duì)象,Annotation對(duì)象是MATLAB中的注釋內(nèi)容,存在于因此的坐標(biāo)系中,該坐標(biāo)系的范圍為整個(gè)圖形窗口。用戶可以通過(guò)規(guī)范化坐標(biāo)將注釋對(duì)象放置于圖形窗口中的任何位置。規(guī)范化坐標(biāo)的范圍為從0到1,窗口左下角為0,0,右上角為1,1。,2019年12月6日,第11頁(yè),Group對(duì)象,Group對(duì)象允許用戶將多個(gè)坐標(biāo)系子對(duì)象作為一個(gè)整體進(jìn)行操作。如,可以設(shè)置整個(gè)組為可視或者不可視,或者通過(guò)改變組對(duì)象的屬性重新設(shè)置其中所有對(duì)象的位置等。MATLAB中有兩種類型的組:hggroup:如果需要?jiǎng)?chuàng)建一組對(duì)象,并且通過(guò)對(duì)該組中的任何一個(gè)對(duì)象進(jìn)行操作而控制整個(gè)組的可視性或選中該組,則使用hggroup。hggroup通過(guò)hggroup函數(shù)創(chuàng)建。hgtransform:當(dāng)需要對(duì)一組對(duì)象進(jìn)行變換時(shí)創(chuàng)建hgtransform,其中變換包括選中、平移、尺寸變化等。hggroup組和hgtransform組之間的差別在于hgtransform可以通過(guò)用變換矩陣對(duì)其中的所有子對(duì)象進(jìn)行操作。,2019年12月6日,第12頁(yè),圖形對(duì)象的屬性,圖形對(duì)象的屬性控制圖形的外觀和顯示特點(diǎn)。圖形對(duì)象的屬性包含公共屬性和特有屬性。,2019年12月6日,第13頁(yè),圖形對(duì)象屬性值的設(shè)置和查詢,屬性值的設(shè)置對(duì)象的默認(rèn)屬性值屬性值的查詢,2019年12月6日,第14頁(yè),屬性值的設(shè)置,MATLAB中,set函數(shù)可以用于設(shè)置對(duì)象的各項(xiàng)屬性:set(gca,YAxisLocation,right)通過(guò)set函數(shù)查看一個(gè)對(duì)象的所有可設(shè)置屬性的所有可能的值set(axes)ActivePositionProperty:position|outerpositionALimALimMode:auto|manualAmbientLightColorBox:on|off,2019年12月6日,第15頁(yè),對(duì)象的默認(rèn)屬性值,默認(rèn)屬性值的搜索MATLAB對(duì)默認(rèn)屬性值的搜索從當(dāng)前對(duì)象開(kāi)始,沿著對(duì)象的從屬關(guān)系圖向更高的層次搜索,直到發(fā)現(xiàn)系統(tǒng)的默認(rèn)值或用戶自己定義的值。定義對(duì)象的默認(rèn)值時(shí),在對(duì)象從屬關(guān)系圖中,該對(duì)象越靠近Root(根)對(duì)象,其作用的范圍就越廣。如果用戶在對(duì)象從屬關(guān)系圖的不同層次上定義同一個(gè)屬性的默認(rèn)值,則MATLAB將會(huì)自動(dòng)選擇最下層的屬性值作為最終的屬性值。需要注意的是,用戶自定義的屬性值只能影響到該屬性設(shè)置后創(chuàng)建的對(duì)象,之前的對(duì)象都不受到影響。默認(rèn)屬性值的設(shè)指定MATLAB對(duì)象的默認(rèn)值,需要首先創(chuàng)建一個(gè)以“Default”開(kāi)頭的字符串,該字符串的中間部分為對(duì)象類型,末尾部分為屬性的名稱。,2019年12月6日,第16頁(yè),屬性值的查詢,MATLAB中,利用get函數(shù)可以查詢對(duì)象屬性的當(dāng)前值。,2019年12月6日,第17頁(yè),圖形對(duì)象句柄的訪問(wèn),圖形對(duì)象句柄的取值當(dāng)前圖形句柄通過(guò)屬性值查找對(duì)象圖形對(duì)象的復(fù)制圖形對(duì)象的刪除,2019年12月6日,第18頁(yè),圖形對(duì)象句柄的取值,每個(gè)圖形對(duì)象句柄都有一個(gè)特定的值,但不同的對(duì)象,句柄的取值類型也略有不同。1Root根對(duì)象的句柄取值為0。2Figure對(duì)象的屬性IntegerHandle控制該對(duì)象所獲取的句柄的取值類型,IntegerHandle的默認(rèn)值為on,此時(shí)句柄為整數(shù),顯示在窗口標(biāo)題欄中;當(dāng)該屬性的值為off時(shí)其句柄為具有完全MATLAB內(nèi)部精度的浮點(diǎn)數(shù)。3所有其他圖形對(duì)象的句柄取值為浮點(diǎn)類型,在引用這些句柄時(shí),必須保持其精度的完整。,2019年12月6日,第19頁(yè),當(dāng)前圖形句柄,在MATLAB中,句柄圖形有一個(gè)重要概念為當(dāng)前性(BeingCurrent)。當(dāng)前的圖形對(duì)象即為最后創(chuàng)建的圖形對(duì)象,或最后被鼠標(biāo)點(diǎn)中的圖形對(duì)象。在通常情況下,MATLAB保存三個(gè)“當(dāng)前句柄”,三個(gè)句柄為層次關(guān)系。這些屬性能夠使得用戶方便的獲取這些關(guān)鍵對(duì)象的句柄,其方法如下:get(0,CurrentFigure),獲取當(dāng)前圖形窗口對(duì)象的句柄;get(gcf,CurrentAxes),獲取當(dāng)前圖形窗口對(duì)象中當(dāng)前坐標(biāo)軸對(duì)象的句柄;get(gcf,CurrentObject),獲取當(dāng)前圖形窗口對(duì)象中當(dāng)前對(duì)象的句柄。,2019年12月6日,第20頁(yè),通過(guò)屬性值查找對(duì)象,MATLAB的findobj函數(shù)可以用于快速遍歷對(duì)象從屬關(guān)系表并獲取具有特定屬性值的對(duì)象句柄的方法。如果用戶沒(méi)有指定起始對(duì)象,那么findobj函數(shù)從根對(duì)象開(kāi)始查找。該函數(shù)的調(diào)用格式為:h=findobj,返回根對(duì)象及其所有的從屬句柄,返回值為一個(gè)列向量。h=findobj(PropertyName,PropertyValue,.),返回滿足PropertyName屬性的值為PropertyValue的所有句柄,可以同時(shí)設(shè)置多個(gè)條件。h=indobj(PropertyName,PropertyValue,-logicaloperator,PropertyName,PropertyValue,.),返回所有滿足指定表達(dá)式的句柄,其中的邏輯操作符可以是and、-or、-xor或not。,2019年12月6日,第21頁(yè),h=findobj(-regexp,PropertyName,regexp,.),以正則表達(dá)式的方式進(jìn)行條件匹配,相當(dāng)于將屬性PropertyName的值傳遞給函數(shù)regexp,得到regexp(PropertyValue,regexp)。該語(yǔ)句返回滿足匹配的句柄。h=findobj(-property,PropertyName),返回所有具有指定屬性的句柄。h=findobj(objhandles,.),在objhandles指定的對(duì)象及其子對(duì)象中查找。h=findobj(objhandles,-depth,d,.),指定查找的深度。參數(shù)d控制查找的深度,如果將d設(shè)置為inf,則與默認(rèn)效果相同,查找所有深度;如果設(shè)置d為0,則與使用參數(shù)flat的效果相同。h=findobj(objhandles,flat,PropertyName,PropertyValue,.),限制查找范圍,僅查找objhandles指定的句柄,而不查找其子句柄。,2019年12月6日,第22頁(yè),圖形對(duì)象的復(fù)制,通過(guò)copyobj函數(shù)可以實(shí)現(xiàn)將對(duì)象從一個(gè)父對(duì)象移動(dòng)至另一個(gè)父對(duì)象中。新對(duì)象與原對(duì)象的唯一差別在于其Parent屬性值不同,并且其句柄不同。在MATLAB中,可以向一個(gè)新的父對(duì)象中復(fù)制多個(gè)子對(duì)象,也可以將一個(gè)子對(duì)象復(fù)制到多個(gè)父對(duì)象中。復(fù)制對(duì)象需要注意的是,子對(duì)象和父對(duì)象之間的類型必須匹配。在復(fù)制對(duì)象時(shí),如果被復(fù)制的對(duì)象包含子對(duì)象,MATLAB同時(shí)復(fù)制所有的子對(duì)象。,2019年12月6日,第23頁(yè),copyobj函數(shù),copyobj函數(shù)的用法為:new_handle=copyobj(h,p)該語(yǔ)句復(fù)制h指定的圖形對(duì)象至p指定的對(duì)象中,成為p的子對(duì)象。h和p的取值可以有下面三種情況:h和p均為向量。此時(shí)h和p長(zhǎng)度必須相同,返回值new_handle為長(zhǎng)度相同的向量。在這種情況下,new_handle(i)是h(i)的副本,其父對(duì)象為p(i);h為標(biāo)量,p為向量,此時(shí)將h復(fù)制到p指定的所有對(duì)象中,返回結(jié)果new_ha

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論