版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、機(jī)械設(shè)計(jì)11.1AutoCAD 對(duì)象模型在對(duì)象程序編寫(xiě)中,首先您要了解并掌握對(duì)象的屬性、方法和事件,才能在程序的編寫(xiě)過(guò)程中靈活地運(yùn)用。11.1.1對(duì)象的屬性AutoCAD 對(duì)象模型中的對(duì)象均具有一個(gè)或多個(gè)屬性。以圓為例,圓可以用半徑、圓心來(lái)描述,所有的特征就稱(chēng)為“屬性”。對(duì)于一個(gè)圓來(lái)說(shuō),它就有:Center、Application、Area、Circumference、Color、Diameter、Handle、HasExtenDictionary、Hyperlinks、Layer、Linetype、LinetypeScale、Lineweight、Normal、ObjectID、OwnerI
2、D、PlotStyleName、 Radius、Thickness、Visible 這些屬性。在 ActiveX 函數(shù)中要獲得 AutoCAD 圖形對(duì)象的有關(guān)特征就要用到對(duì)應(yīng)的屬性名稱(chēng)。由于不同的對(duì)象就有不同的屬性,所以您可以在 AutoCAD的線(xiàn)上說(shuō)明文件中查到所有詳細(xì)的資料。11.1.2對(duì)象的方法對(duì)象還包含方法,方法是用來(lái)指定對(duì)象的執(zhí)行方式。ActiveX 對(duì)象也有對(duì)應(yīng)的方法,即可知道要對(duì) ActiveX 的對(duì)象做怎樣的操作。如圓的方法就有: ArrayPolar 、 ArrayRectangular 、Copy 、Delete 、GetBoundingBoxGetExten Dictio
3、nary 、GetXData 、Highlight ersectWith、Mirror、Mirror3D、Move、Offse、Tro e、Ro e3D、ScaleEntity、SetXDaransformBy 等。在 Visual LISP 中,ActiveX 方法的執(zhí)行是通過(guò)一系列新增的 Visual LISP 函數(shù)(即 vl開(kāi)頭的函數(shù)),也可從文件中悉數(shù)查詢(xún)到該類(lèi)函數(shù)的詳細(xì)語(yǔ)法信息。通常,在方法設(shè)定任務(wù)之前都會(huì)需要信息,而這些信息就是參數(shù)。例如,如果要將圓半徑改為 5,那么 5就是參數(shù)。11.1.3對(duì)象的事件事件就是程序執(zhí)行所需要的條件。一旦某個(gè)事件被激活,系統(tǒng)就會(huì)執(zhí)行對(duì)應(yīng)的程序代154
4、第 11 章 對(duì)象碼,這在以后的程序中可以經(jīng)常看到。AutoCAD ActiveX 中新增了事件驅(qū)動(dòng)。當(dāng) AutoCAD 的當(dāng)前狀態(tài)發(fā)生變化時(shí)或某些事件發(fā)生后,AutoCAD 就會(huì)激發(fā)對(duì)應(yīng)的事件與消息,用戶(hù)可以在事件處理中加入自定義的事件處理子程序。在 AutoCAD有三類(lèi) 40 個(gè)事件:如:響應(yīng)指令行指令,響應(yīng)系統(tǒng)變量的改變,單文字文件下、關(guān)閉、打印文件,響應(yīng)加載和卸載 LISP 與 ARX 程序。應(yīng)用程序?qū)哟问录憫?yīng)新建、打開(kāi)、如,mandEnded 事件。文字文件層次事件 如:響應(yīng)新建、刪除、修改物體,響應(yīng)快捷菜單、對(duì)象選擇、重新產(chǎn)生視圖,多文件下響應(yīng)加載與卸載 LISP 與 ARX 程
5、序。如, vlr-beginRightClick 事件。對(duì)象層次事件 當(dāng)實(shí)體物體被修改時(shí)就會(huì)激發(fā)此事件,如:vlr-modified,vlr-erased事件。11.1.4對(duì)象的集合值得一提的是,在 AutoCAD 的對(duì)象模型中,所有對(duì)象都是以集合來(lái)分組的,例如選集 selectionsets 就是圖形中所有選取圖形的集合,圖塊集合 blocks 就是 AutoCAD 圖形中所有圖塊的集合。因此,在存取選集或圖塊作請(qǐng)參考下一章。要從對(duì)象的集合中調(diào)出。有關(guān)選擇集的操11.1.5對(duì)象的使用對(duì)象操作的語(yǔ)法如下:(以 VBA 為例)設(shè)定對(duì)象屬性對(duì)象 A.屬性=某個(gè)輸入的數(shù)值 circle.radius
6、=5(設(shè)定圓的半徑為 5)。提取對(duì)象屬性變量=對(duì)象 A.屬性 radius=circle.radius(將圓的半徑存入 raidus 變量中)。如果這個(gè)對(duì)象具有這種方法 I,就執(zhí)行某個(gè)操作對(duì)象 A.方法 Icircle.delete(刪除圓)。11.1.6AutoCAD 的對(duì)象結(jié)構(gòu)如圖 11-1 所示,AutoCAD 中的對(duì)象是以層次式結(jié)構(gòu)來(lái)組織的,其根部是應(yīng)用程序?qū)?55機(jī)械設(shè)計(jì)象。對(duì)象的繼承階層結(jié)構(gòu)就稱(chēng)為“對(duì)象模型”,對(duì)象模型將顯示對(duì)象的階層關(guān)系,各級(jí)屬性的使用必須依照該對(duì)象模型中的繼承層次關(guān)系。156非數(shù)據(jù)庫(kù)駐數(shù)據(jù)庫(kù)駐對(duì)象(支持 I AcadObj ect )數(shù)據(jù)庫(kù)駐圖元(支持 I Ac
7、adEni t y 與 I AcadObj ect )第 11 章 對(duì)象圖 11-1 ActiveX 的對(duì)象模型結(jié)構(gòu)最對(duì)象是 AutoCAD Application,它被用來(lái)管理 AutoCAD 的應(yīng)用程序,它將包含以下幾個(gè)對(duì)象:Preferen集合對(duì)象(即 Preferen設(shè)定窗口)s 集合對(duì)象(用來(lái)處理當(dāng)前活動(dòng)的圖形,它包含多個(gè)子對(duì)象,其中有圖形文件所有的對(duì)象集合,輔助工具群等)Bar、Groups 集合對(duì)象(用來(lái)操作菜單與)在 Visual LISP 中使用 ActiveX 對(duì)象11.2Visual LISP 將提供一系列函數(shù)來(lái)處理 ActiveX 對(duì)象,這些函數(shù)名稱(chēng)都是以“vla-”為
8、前綴的。例如,vla-addLine、vla-get-Color、vla-polor 等。換句話(huà)說(shuō),前綴為“vla-”的函數(shù)都是 ActiveX 函數(shù),它們將對(duì) AutoCAD 數(shù)據(jù)對(duì)象調(diào)用對(duì)應(yīng)的方法來(lái)對(duì)其屬性進(jìn)行操作。11.2.1ActiveX 對(duì)象的分類(lèi)綜上所述,這些在 VBA 里的函數(shù)可依其使用對(duì)象的方法來(lái)進(jìn)一步分類(lèi):vla- 函數(shù)與每個(gè) ActiveX 方法相對(duì)應(yīng)可用這些函數(shù)來(lái)調(diào)用 ActiveX 方法(如,以 vla-addCircle 調(diào)用 AddCircle 方法)。設(shè)定對(duì)象的屬性 vla-put- 函數(shù)和每個(gè)特性相對(duì)應(yīng),可更新特性的值(如,以vla-polor 來(lái)更新對(duì)象的顏色
9、特性)。取得對(duì)象的屬性 vla-get- 函數(shù)和每個(gè)特性相對(duì)應(yīng),可提取 ActiveX 對(duì)象特性的值(如,以 vla-get-Color 來(lái)提取對(duì)象的顏色特性)。Visual LISP 還提供了一些和 ActiveX 有關(guān)的函數(shù),其前綴為 vlax-。這是一些更綜合的 ActiveX 函數(shù),它們可被應(yīng)用到許多方法、對(duì)象或特性。譬如說(shuō):在 ActiveX 的支持下,Visual LISP 就可以像 VBA 一樣存取Word、Excel 等應(yīng)用程序,以進(jìn)行不同程序之間的資料共享。利用 vlax-get-property 函數(shù),可提取任意 ActiveX 對(duì)象的任意特性。如果圖形包括自定義的 Act
10、iveX 物件,或需要從其他應(yīng)用程序中存取對(duì)象,也可使用如 vlax-invoke-method、vlax-get-property 和 vlax-put-property 這類(lèi)的函數(shù)來(lái)存取對(duì)象的方法和特性。157機(jī)械設(shè)計(jì)在 AutoCAD 提供的 ActiveX Automation文件中詳細(xì)介紹了所有“vla- 類(lèi)函數(shù)所涉及的對(duì)象屬性和方法,但是均以 VBA 的形式來(lái)說(shuō)明的,在下節(jié)中,在 Visual LISP 中使用 ActiveX 函數(shù)。說(shuō)明如何11.2.2如何調(diào)用 Visual LISP 所提供的 ActiveX 函數(shù)Visual LISP 中的 ActiveX 函數(shù)將提供運(yùn)用 Ac
11、tiveX 對(duì)象方法的途徑,下面以在圖形中加入一個(gè)圓為例,來(lái)說(shuō)明如何利用 ActiveX 對(duì)象的方法:(setq myCircle(vla-addCircle *mSpace* (vlax-3d-po(5.0 5.0 0) 3.0) #這兩條語(yǔ)法表示利用 vla-addCircle 函數(shù)繪制圓。其中 *mSpace* 是指向模型空間的VLA 變量。如果您不知道如何在 AutoCAD 圖形中利用 ActiveX 類(lèi)函數(shù)來(lái)畫(huà)圓,那么您可以參考ActiveX Automation文件,查詢(xún)利用 ActiveX 如何定義圓圖形對(duì)象。圖 11-2 所示就是查詢(xún)圓對(duì)象定義的操作。158第 11 章 對(duì)象圖
12、 11-2 查詢(xún)圓對(duì)象定義的操作在圖 11-2 所示的圖形對(duì)象的說(shuō)明中有很多文字說(shuō)明,列出了對(duì)象所擁有的方法、屬性和事件。如果找到了需要的方法,那么在方法名稱(chēng)前加上“vla-“前綴即為執(zhí)行該方法的Visual LISP 函數(shù)。在 Visual LISP 中,函數(shù)名稱(chēng)不區(qū)分大小寫(xiě),“ vla-addcircle” 與“ vla-AddCirle” 是同一個(gè)函數(shù)。找到與所需方法相對(duì)應(yīng)的 Visual LISP 函數(shù)后,要如何調(diào)用這些函數(shù)呢?目前在Visual LISP 語(yǔ)法中并沒(méi)有詳細(xì)闡述這類(lèi)函數(shù)的調(diào)用方法, 開(kāi)發(fā)必須在 ActiveXAutomation 說(shuō)明文件中查詢(xún)與該方法對(duì)應(yīng)的函數(shù)調(diào)用方法
13、。例如,在模型空間集合的對(duì)象說(shuō)明文件中可單擊的“AddCircle”項(xiàng)目來(lái)查看該方法的定義,如圖 11-3 所示。159機(jī)械設(shè)計(jì)圖 11-3 “AddCircle”方法的信息查詢(xún)160第 11 章 對(duì)象您也可以在 ActiveX Automation 和說(shuō)明窗口中單擊頂部的【Methods】鈕,在方法列表中選擇“AddCircle”方法來(lái)取得該方法的使用說(shuō)明,如圖 11-4 所示。圖 11-4 “AddCircle”方法的另一種查詢(xún)方式從圖 11-4 中可看出:在 Automation 說(shuō)明文件中,方法是用 VBA 來(lái)定義的。例如,對(duì)于 AddCircle 方法可定義如下:RetVal=obj
14、ect.AddCircle(Center,Radius)在一般的具體應(yīng)用中,如果要在模型空間中以 5,5 為圓心,3 為半徑畫(huà)圓,請(qǐng)輸入以下語(yǔ)法:Dim Center(0 to 2) As Double, Radius as Double Center(0)=5.0 : Center(1)=5.0 : Center(2)=0Radius=3.0Set myCircle=Thisdrawing.MSpace.AddCircle(Center,Radius)在 VBA 中,返回值是前置的,即 myCircle,返回值是在 Automation 說(shuō)明文件中所定義的圓對(duì)象。賦予值給對(duì)象變量時(shí)要用 Se
15、t。相應(yīng)地,在 Visual LISP 中是用下面的方式來(lái)調(diào)用方法161機(jī)械設(shè)計(jì)的:()(setq *acadObject* (vlax-get-acad-object)(setq *acad* (vla-get-Active*acadObject*)*)(setq *mSpace* (vla-get-MSpace *acad(setq center (vlax-make-safearray vlax-vbDouble (0 . 2) (vlax-safearray-fill center (5.0 5.0 0)(setq radius 3.0)(setq myCircle(vla-addCi
16、rcle *mSpace* center radius)在 Visual LISP 中,ActiveX 函數(shù)返回值 myCircle 是 AutoCAD 對(duì)象,亦即 VLA 對(duì)象數(shù)據(jù)類(lèi)型。在 vla 函數(shù)調(diào)用時(shí),方法名稱(chēng)(object.AddCirCle)前所的對(duì)象 object 通常是第一個(gè)參數(shù),該對(duì)象是當(dāng)前要修改或處理的對(duì)象。在此范例中就是模型空間 M在 Visual LISP 中寫(xiě)為:(vla-addCircle *mSpace*.)Space。因此,*mSpace* 指的是當(dāng)前的模型空間對(duì)象。對(duì)象具有階層關(guān)系,模型空間對(duì)象的階層性如圖 11-5 所示。圖 11-5 模型空間對(duì)象的階層性
17、根據(jù)對(duì)象的繼承性,可以逐個(gè)處理各層次的屬性。在上例中,已提出了處理當(dāng)前圖形中模型空間的方法。在 VBA 中,Thisdrawing 將代表當(dāng)前文檔(即),162圓 Circle模型空間集合文件AutoCAD應(yīng)用程序第 11 章 對(duì)象Thisdrawing.即取得模型空間集合對(duì)象。在 Visual LISP 中,先以(setq *acadObject*(vlax-get-acad-object)來(lái)取得 AutoCAD應(yīng)用程序?qū)ο?;以(setq *acad*(vla-get-Active*acadObject*)來(lái)取得*)來(lái)取得模型空間集當(dāng)前的文檔;以(setq *mSpace*(vla-get-
18、M合對(duì)象。Space*acad11.3Visual LISP 中的 ActiveX 變量本節(jié)將為您介紹有關(guān) Visual LISP 中所使用的各種 ActiveX 變量。11.3.1安全數(shù)組讓再仔細(xì)分析一下上例,以了解如何將 VBA 變量轉(zhuǎn)換成相應(yīng)的 Visual LISP 變量:Dim Center(0 to 2) As Double, Radius as Double Center(0)=5.0 : Center(1)=5.0 : Center(2)=0 Radius=3.0在 VBA 范例中,利用 ActiveX 方法向 AutoCAD 的圖形模型空間添加一個(gè)圓對(duì)象時(shí)了兩個(gè)變量 Cent
19、er 與 Radius。其中,Center 是一維數(shù)組,由三個(gè)雙精度數(shù)組組成,這將在 WCS 坐標(biāo)系統(tǒng)中定義了圓心坐標(biāo)。Radius 是非負(fù)值雙精度數(shù),用來(lái)定義圓的半徑。(setq center (vlax-make-safearray vlax-vbDouble (0 . 2) (vlax-safearray-fill center (5.0 5.0 0)(setq radius 3.0)在 Visual LISP 中,的數(shù)據(jù)類(lèi)型是 ActiveX使用了以 vla- 為前綴的函數(shù) vla-AddCircle,這類(lèi)函數(shù)操作數(shù)的數(shù)據(jù)類(lèi)型。在此范例中, center 的數(shù)據(jù)類(lèi)型是安全數(shù)組(safe
20、array)。如果要在控制臺(tái)窗口中查看 center,將得到:_$ center #(setq center (vlax-make-safearray vlax-vbDouble (0 . 2) 將建立一個(gè)一維的,由三個(gè)雙精度數(shù)組成的空安全數(shù)組,vlax-vbDouble 表示雙精度,其中點(diǎn)對(duì) (0 . 2)表示數(shù)組下標(biāo)從 0到 2。此句相當(dāng)于 VBA 中的:163機(jī)械設(shè)計(jì)Dim Center(0 to 2) As Double(vlax-safearray-fill center (5.0 5.0 0) 會(huì)向剛建立的空數(shù)組中填入數(shù)據(jù),相當(dāng)于 VBA中的:Center(0)=5.0 : Cen
21、ter(1)=5.0 : Center(2)=0安全數(shù)組是ActiveX 的數(shù)據(jù)類(lèi)型,可在 Visual LISP 中向 vla- 類(lèi)函數(shù)傳遞值。但是,radius 是 Visual LISP 中的實(shí)數(shù)(Real)類(lèi)型的數(shù)值,但它也可以向 vla- 類(lèi)函數(shù)傳遞值。在傳遞的過(guò)程中,radius 將自動(dòng)轉(zhuǎn)換為 ActiveX 所需的雙精度數(shù)(vlax-vbDouble)。11.3.2變量的轉(zhuǎn)換要在 Visual LISP 中順利運(yùn)用 ActiveX 函數(shù)須依 ActiveX 方法定義里的變量類(lèi)型來(lái)提供對(duì)應(yīng)的 LISP 變量類(lèi)型。如果發(fā)生錯(cuò)誤(例如,需要整數(shù)型變量時(shí)卻傳遞了實(shí)數(shù)型變量),將導(dǎo)致應(yīng)用程
22、序。例如,當(dāng)您利用d 與 entmake 函數(shù)來(lái)產(chǎn)生 AutoCAD 圖元時(shí),Visual LISP就可提供靈活的點(diǎn)坐標(biāo)表示方法(也就是說(shuō):點(diǎn)可以是二維點(diǎn)也可以是三維點(diǎn))。在利用ActiveX 函數(shù)時(shí),也必須保證參數(shù)傳遞的正確性,使用 vlax-3d-po函數(shù),就可以將表示二維點(diǎn)或三維點(diǎn)的表、坐標(biāo)值轉(zhuǎn)換成有效的三維點(diǎn)。該函數(shù)的語(yǔ)法如下:(vlax-3d-po) (vlax-3d-pox y z)例如:_$ (setq aPo(vlax-3D-po(list 5 5) (5.0 5.0 0.0)_$(setq aPo(vlax-3d-po5 5)(5.0 5.0 0.0)vlax-tmatrix
23、 函數(shù)可以將模型有效地轉(zhuǎn)換到通用轉(zhuǎn)換矩陣中,從而可以被 vla-TransformBy 函數(shù)所調(diào)用。該函數(shù)還可以將由四個(gè)表所定義的轉(zhuǎn)換矩陣中的每一元素轉(zhuǎn)換成實(shí)數(shù),如下所示:_$( vlax-tmatrix (list (list 1 1 1 0)(list 1 2 3 0)(list 2 3 4 5)(list 2 9 8 3)#164第 11 章對(duì)象表 11-1 列出ActiveX 函數(shù)針對(duì)要求的 ActiveX 數(shù)據(jù)類(lèi)型所能接受的 Visual LISP 數(shù)據(jù)類(lèi)型。表的每一行都代表 ActiveX 函數(shù)所用的一種數(shù)據(jù)類(lèi)型,每一列則代表一種 Visual LISP 的數(shù)據(jù)類(lèi)型。其中一些可以自
24、動(dòng)轉(zhuǎn)換, 如前述的實(shí)數(shù)型 Real 轉(zhuǎn)換為雙精度型 vlax-vbDouble。而有一些則需要函數(shù)轉(zhuǎn)換,例如,一次轉(zhuǎn)換:圖元名稱(chēng)到 VLA 對(duì)象的轉(zhuǎn)換要使用 vlax-ename-vla-object 函數(shù);二次轉(zhuǎn)換:圖元名稱(chēng)到變體要先將其轉(zhuǎn)換為 VLA 對(duì)象,再用 vlax-make-variant 函數(shù)轉(zhuǎn)換為變體變量。表 11-1 ActiveX 數(shù)據(jù)類(lèi)型所能接受的Visual LISP 數(shù)據(jù)類(lèi)型11.3.3變體(Variant)“變體”是一種數(shù)據(jù)類(lèi)型,它可以包含數(shù)值、字符串或日期資料。Variant數(shù)據(jù)類(lèi)型占用 16 字節(jié)的空間,可以包含的數(shù)據(jù)可達(dá) Decimal 的范圍,或 22 字節(jié)
25、(加上字符串長(zhǎng)度)的字符大小,同時(shí)可存放任何字符。VarType 函數(shù)定義了變體中的各種數(shù)據(jù)類(lèi)型。如果一變量沒(méi)有明確其數(shù)據(jù)類(lèi)型,那么均會(huì)變成“變體”數(shù)據(jù)類(lèi)型。有關(guān)前面的那個(gè)畫(huà)圓的 VBA 范例還可以這樣寫(xiě):Dim Center As Vara , Radius as Double Thisdrawing.Utility.CreateTypedArray Center, vbDouble, 5.0,5.0,0 Radius=3.0Set myCircle=Thisdrawing.MSpace.AddCircle(Center,Radius)在此,圓的中心點(diǎn)定義為一個(gè)變體(Variant)變量。變
26、體變量可以代表任何類(lèi)型的變量,因此它的使用也很靈活。在 AutoCAD 的開(kāi)發(fā)中經(jīng)常用來(lái)表示一個(gè)點(diǎn)或多個(gè)點(diǎn)。165非nil(非 0)整數(shù)實(shí)數(shù)元 素 名 稱(chēng)字 符 串表整數(shù)長(zhǎng) 整 數(shù)單精度浮點(diǎn)數(shù)雙精度浮點(diǎn)數(shù)字 符 串VLA 對(duì)象變體安 全 數(shù) 組vlax-true/ vlax-false機(jī)械設(shè)計(jì)CreateTypedArray 將賦予 Center 值,使之成為一個(gè)一維并具有三個(gè)雙精度數(shù)的數(shù)組。對(duì)應(yīng)且使用變體的 Visual LISP 程序應(yīng)為:(1)()(2)(setq *acadObject* (vlax-get-acad-object)(3)(setq *acad* (vla-get-Ac
27、tive*acadObject*)*)(4)(setq *mSpace* (vla-get-MSpace *acad(5)(setq sacenter (vlax-make-safearray vlax-vbDouble (0 . 2) (6)(vlax-safearray-fill sacenter (5.0 5.0 0)(7)(setq center (vlax-make-variant sacenter) (8)(setq radius 3.0)(9)(setq myCircle(vla-addCircle *mSpace* center radius)或者(1)()(2)(setq *
28、acadObject* (vlax-get-acad-object)(3)(setq *acad* (vla-get-Active*acadObject*)*)(4)(setq *mSpace* (vla-get-MSpace *acad(5)(setq center (vlax-3d-po(5.0 5.0 0)(6)(setq radius 3.0)(7)(setq myCircle(vla-addCircle *mSpace* center radius)上面前段的第(5)(7)行與后段的第(5)行程序代碼的作用是一樣的,都是為了得到一個(gè)安全數(shù)組的變體變量 center。通常會(huì)使用以下的個(gè)
29、 Visual LISP 函數(shù)來(lái)建立和使用變體:vlax-make-variant vlax-variant-type vlax-variant-valuevlax-variant-change-type建立變體返回變體的數(shù)據(jù)類(lèi)型返回變體變量的值改變變體變量的數(shù)據(jù)類(lèi)型vlax-make-variant 函數(shù)vlax-make-variant 函數(shù)將接受兩個(gè)參數(shù):值與類(lèi)型。值參數(shù)是要賦予該變體的值。類(lèi)166第 11 章對(duì)象型參數(shù)則是指定如表 11-2 所示。到該變體中的數(shù)據(jù)類(lèi)型??晒┲付ǖ念?lèi)型參數(shù)以及其所代表整數(shù)值將表 11-2 vlax-make-variant 函數(shù)所指定的類(lèi)型參數(shù)(續(xù)表)8
30、192+n 中的n 表示某種數(shù)據(jù)類(lèi)型的安全數(shù)組( vlax-vbArray )。如雙精度數(shù)組(vlax-vbDouble)為 8197(8192 + 5)。從上表中可以看出:這些類(lèi)型參數(shù)都對(duì)應(yīng)著一個(gè)整數(shù)值。它們的值在 AutoCAD 未來(lái)的版本可能會(huì)做修改,所以應(yīng)該盡量使用類(lèi)型參數(shù)名稱(chēng),而不要直接使用它所對(duì)應(yīng)的整數(shù)值。例如,下述函數(shù)將用來(lái)調(diào)用并建立一個(gè)整數(shù)變體,并將其值設(shè)為 6:_$ (setq var(vlax-make-variant 6 vlax-vbeger) # 返回值將表明變體的數(shù)據(jù)類(lèi)型( 2 表示 vbeger)和變體值( 5 )。如果調(diào)用vlax-make-variant 時(shí)不
31、指定數(shù)據(jù)類(lèi)型,那么函數(shù)將使用其預(yù)設(shè)類(lèi)型。例如,下述函數(shù)調(diào)用將用來(lái)建立一個(gè)變體,并將其值設(shè)為 6,但沒(méi)有指定數(shù)據(jù)類(lèi)型:_$ (setq var(vlax-make-variant 6) # 在預(yù)設(shè)的情況下,vlax-make-variant 會(huì)將指定的整數(shù)值賦予長(zhǎng)型整數(shù)類(lèi)型,而不是整167類(lèi) 型 參 數(shù)意義值vlax-vb eger整數(shù)2vlax-vbLong長(zhǎng)型整數(shù)3vlax-vbSingle單精度浮點(diǎn)數(shù)4vlax-vbDouble雙精度浮點(diǎn)數(shù)5vlax-vbString字符串8vlax-vbObject對(duì)象9vlax-vb類(lèi)型11vlax-vbArray數(shù)組8192+n類(lèi) 型 參 數(shù)意義值v
32、lax-vbEmpty未初始化(默認(rèn)值)vlax-vbNull不包括有效數(shù)據(jù)機(jī)械設(shè)計(jì)數(shù)類(lèi)型。當(dāng)您將一個(gè)數(shù)值賦予變體時(shí),就應(yīng)該明確地說(shuō)明想要的數(shù)據(jù)類(lèi)型。如果不指定值和數(shù)據(jù)類(lèi)型,vlax-make-variant 將建立一個(gè)未初始化的變體(vlax-vbEmpty)。vlax-variant-type 函數(shù)vlax-variant-type 將用來(lái)取得變體變量的類(lèi)型,其用法如下:(vlax-variant-type var)其中,參數(shù) var 變量為變體,返回值即為表 11-2 中類(lèi)型參數(shù)所代表的整數(shù)值。例如:以下程序?qū)⒆凅w設(shè)為整數(shù),并將變體明確定義為整數(shù)型:_$ (setq var(vlax-m
33、ake-variant 6 vlax-vbeger) # _$ (vlax-variant-type var )如果要將變體設(shè)為長(zhǎng)型整數(shù),然后再顯示變體的數(shù)據(jù)類(lèi)型,則程序如下:_$ (setq var(vlax-make-variant 6) # _$ (vlax-variant-type var )以下程序可將建立雙精度的安全數(shù)組,并將安全數(shù)組指定為變體,然后再顯示變體的數(shù)據(jù)類(lèi)型:_$ (setq 3dubs (vlax-make-safearray vlax-vbDouble (0 . 2) # _$ (setq center(vlax-make-variant 3dubs) # _$ (
34、vlax-variant-type center)8197vlax-variant-value 函數(shù)vlax-variant-value 將用來(lái)取得變體變量的值,其用法如下:(vlax-variant-value var)其中,參數(shù) var 變量為變體,返回值即為表 11-2 中類(lèi)型參數(shù)所代表的整數(shù)值。例如:下列程序可將變體設(shè)為整數(shù),并將變體明確定義為整數(shù)型,再取得變體的值:_$ (setq var(vlax-make-variant 6 vlax-vbeger) # _$ (vlax-variant-value var )168第 11 章 對(duì)象6如果欲將變體設(shè)為長(zhǎng)整數(shù),然后再顯示變體的數(shù)據(jù)
35、值,則程序?yàn)椋篲$ (setq var(vlax-make-variant 6) # _$ (vlax-variant-value var ) 6當(dāng)要建立雙精度的安全數(shù)組,并將安全數(shù)組指定為變體,然后再顯示變體的數(shù)據(jù)類(lèi)型時(shí),程序如下:_$ (setq 3dubs (vlax-make-safearray vlax-vbDouble (0 . 2) # _$ (setq center(vlax-make-variant 3dubs) # _$ (vlax-variant-value center)# 11.4提取及設(shè)定對(duì)象的屬性Visual LISP 將提供 vla-get- 函數(shù)來(lái)取得對(duì)象的屬
36、性,以及 vla-put- 函數(shù)來(lái)設(shè)定對(duì)象的屬性。為了說(shuō)明這些函數(shù)的應(yīng)用,請(qǐng)您先在 Visual LISP 的控制臺(tái)提示號(hào)下執(zhí)行下列語(yǔ)法:()(setq *acadObject* (vlax-get-acad-object)(setq *acad* (vla-get-Active*acadObject*)*)(setq *mSpace* (vla-get-MSpace *acad(setq myCircle(vla-addCircle *mSpace* (vlax-3d-poCircle:)3.0)(getpo nPick the Centofor a然后在 AutoCAD 的圖形窗口中,在畫(huà)
37、面上點(diǎn)取一點(diǎn),就可以看到以此點(diǎn)為圓心,半徑為 3.0 的圓。11.4.1提取對(duì)象的屬性用來(lái)查看對(duì)象屬性的函數(shù)名前綴為“vla-get-”,語(yǔ)法如下:169機(jī)械設(shè)計(jì)(vla-get-property object)例如,vla-get-center 將返回圓的圓心。您可以利用該函數(shù)來(lái)繪制一個(gè)與上例同心的圓:(vla-addCircle *mSpace*(vla-get-center myCircle)2.0) #如圖 11-6 所示就是在 AutoCAD 圖形窗口中出現(xiàn)的兩個(gè)圓。指責(zé)他人過(guò)錯(cuò)容易,但能大肚容人包涵才是善舉。170第 11 章 對(duì)象圖 11-6 利用 ActiveX 函數(shù)所產(chǎn)生的兩
38、個(gè)圓11.4.2設(shè)定對(duì)象屬性用于更改屬性的函數(shù)其函數(shù)名稱(chēng)前綴均為“vla-put-”,其語(yǔ)法為:(vla-put-property object new-value)例如,vla-penter 可改變圓的圓心,以下指令可將上例中圓(myCircle)的圓心X,然后再利用 vla-penter 函數(shù)來(lái)更新該圓:坐標(biāo)向左偏移個(gè)繪圖_$ (setq myCenter (vla-get-center myCircle)將返回 myCircle 的圓心坐標(biāo)。_$ (setq x (- (car myCenter) 1)_$ (setq newcenter (list x (cadr myCenter)
39、(caddr myCenter)將返回新的圓心坐標(biāo)。_$(vla-penter myCircle newcenter)返回 nil于 AutoCAD 的圖形窗口中將顯示如圖 11-7 所示的圓。圖 11-7 利用 ActiveX 函數(shù)更改圖形對(duì)象的屬性171機(jī)械設(shè)計(jì)圖形對(duì)象屬性被更改后,在 AutoCAD 的圖形窗口中,該圖形顯示并不會(huì)立即刷新,這是因?yàn)?AutoCAD 允許同時(shí)更改圖形對(duì)象的多個(gè)屬性。若要更新顯示,則需執(zhí)行以下函數(shù):(vla-update object)通常,您可以使用已預(yù)先定義的類(lèi)型參數(shù)來(lái)更改對(duì)象的屬性。例如,要將圓變?yōu)榧t色,您可以使用“ acRed” 來(lái)替代常用的顏色代碼
40、:$(vla-polor myCircle acRed)您可以在VBA 的編輯窗口中,選擇【視圖(V)】【瀏覽對(duì)象(O)】選項(xiàng),以在窗口中查詢(xún)以 ac 為前綴的類(lèi)型參數(shù)。11.4.3判斷對(duì)象是否可以存取在應(yīng)用程序中處理當(dāng)前的 AutoCAD 對(duì)象時(shí),如果該對(duì)象也同時(shí)被其他應(yīng)用程序所使用,那么該對(duì)象可能就不能在該應(yīng)用程序中被存取。例如,圖層被鎖定將導(dǎo)致改變對(duì)象屬性的動(dòng)作失敗,而使程序中斷。Visual LISP 將提供如下于使用某一對(duì)象前先判斷該對(duì)象能否被存取的函數(shù):vlax-read-enable-p vlax-write-enable-p vlax-erased-p據(jù)庫(kù)中判斷對(duì)象能否判斷對(duì)象
41、能否更改判斷對(duì)象是否已被刪除,被刪除的對(duì)象仍將在圖形數(shù)若檢測(cè)結(jié)果為 True,這些檢測(cè)函數(shù)的返回值將為 T,否則為 nil。下面的范例將用來(lái)說(shuō)明如何檢測(cè)圓直線(xiàn)對(duì)象(假設(shè) myCircle 圓對(duì)象已存在):$ (vlax-read-enable-p myCircle)$ (vlax-write-enable-p myCircle)$ (vlax-erased-p myCircle)返回 T返回 T返回 nil172第 11 章 對(duì)象如果刪除了 myCircle 圓對(duì)象,則:$ (vlax-read-enable-p myCircle)$ (vlax-erased-p myCircle)返回 ni
42、l返回 T11.4.4使用變量來(lái)ActiveX 函數(shù)的返回值在 Visual LISP 中調(diào)用 ActiveX 方法時(shí),有些 ActiveX 方法將要求提供變數(shù),以使它們能賦予變量一個(gè)值。GetBoundingBox 方法就是一例。如圖 11-8 所示即可充分地明了 ActiveX Automation說(shuō)明中對(duì)該函數(shù)的定義。圖 11-8 查詢(xún) GetBoundingBox 方法的操作在該方法定義中,MinPo及 MaxPo兩個(gè)參數(shù)將用來(lái)返回值,參數(shù)的數(shù)據(jù)類(lèi)型是由三個(gè)雙精實(shí)數(shù)組成的一維數(shù)組。從下面的范例就可以看出 Visual LISP 函數(shù)要如何來(lái)獲得圓的邊界點(diǎn),并將返回值儲(chǔ)存在對(duì)應(yīng)的變量中:
43、_$ (vla-getboundingbox myCircle minpomaxpo )173機(jī)械設(shè)計(jì)nil_$ minpo #_$ maxpo#可以使用 vlax-safearray- list在此,查看其值:174第 11 章對(duì)象_$ (vlax-safearray-list minpo ) (231.127 130.823 -1.0e-008)_$ (vlax-safearray-list maxpo )(237.127 136.823 1.0e-008)在上示函數(shù)中所套用的兩個(gè)符號(hào)參數(shù)將成為 Visual LISP 的變量,就如同用 setq 函數(shù)來(lái)賦予一值給一個(gè)變量一樣。正因如此,在
44、函數(shù)定義時(shí),您就應(yīng)該將它們成函數(shù)的局部變量,以免變?yōu)檎w變量。11.4.5列出對(duì)象的屬性及方法欲列出對(duì)象的屬性,如圖 11-9 所示,您可以在圖】【檢驗(yàn)】命令。Visual LISP 的主操作窗口中,選擇【視圖 11-9 檢查對(duì)象的屬性同樣地,您也可以利用 vlax-dump-object 函數(shù)來(lái)查看對(duì)象的屬性。在 Visual LISP 的控制臺(tái)與應(yīng)用程序中執(zhí)行該函數(shù),即可列出指定對(duì)象的屬性。以下的程序代碼將從模型空間中獲得對(duì)象,然后在利用 vlax-dump-object 函數(shù)來(lái)列出對(duì)象的屬性。其標(biāo)準(zhǔn)語(yǔ)法如下:(vlax-dump-object obj T)175在此輸入要檢查的程序機(jī)械設(shè)
45、計(jì)其中,obj 代表對(duì)象,T 選項(xiàng)可有可無(wú),不含 T 時(shí),就只列出對(duì)象的屬性;如果包含T則列出對(duì)象的屬性和方法。舉例如下(假設(shè)myCircle已存在):176第 11 章對(duì)象_$ (vlax-dump-object myCircle); IAcadCircle: AutoCAD Circle 接口;特性值:; Application (RO) = #; Area = 28.2743; Center = (234.127 133.823 0.0); Circumference = 18.8496; Color = 256; Diameter = 6.0;(RO) = #; Handle (RO)
46、 = 3F; HasExtenDictionary (RO) = 0; Hyperlinks (RO) = #; Layer = 0; Linetype = ByLayer; LinetypeScale = 1.0; Lineweight = -1; Normal = (0.0 0.0 1.0); ObjectID (RO) = 1074171384; ObjectName (RO) = AcDbCircle; OwnerID (RO) = 1074171128; PlotStyleName = ByLayer; Radius = 3.0; Thickness = 0.0; Visible =
47、 -1 T當(dāng)包含 T 選項(xiàng)時(shí):_$ (vlax-dump-object myCircle t); IAcadCircle: AutoCAD Circle 接口;特性值:;Application (RO) = #;Area = 28.2743;Center = (234.127 133.823 0.0)177機(jī)械設(shè)計(jì);Circumference = 18.8496;Color = 256;Diameter = 6.0;(RO) = #;Handle (RO) = 3F;HasExtenDictionary (RO) = 0;Hyperlinks (RO) = #;Layer = 0;Linety
48、pe = ByLayer;LinetypeScale = 1.0;Lineweight = -1;Normal = (0.0 0.0 1.0);ObjectID (RO) = 1074171384;ObjectName (RO) = AcDbCircle;OwnerID (RO) = 1074171128;PlotStyleName = ByLayer;Radius = 3.0;Thickness = 0.0;Visible = -1;支持的方法:;ArrayPolar (3);ArrayRectangular (6);Copy ();Delete ();GetBoundingBox (2);
49、GetExtenDictionary ();GetXData (3);Highlight (1);ersectWith (2);Mirror (2);Mirror3D (3);Move (2);Offset (1)178第 11 章對(duì)象;Ro e (2);Ro e3D (3);ScaleEntity (2);SetXData (2);TransformBy (1);Update () T11.4.6判斷對(duì)象的方法或?qū)傩允欠窨捎脤?duì)于指定的對(duì)象,不屬于該對(duì)象的方法與屬性將導(dǎo)致錯(cuò)誤。為此,當(dāng)不確定某個(gè)方法或?qū)傩阅芊袷褂脮r(shí),就可以使用 vlax-method-applicable-p 與 vlax-p
50、roperty-available-p這兩個(gè)函數(shù)來(lái)加以判斷。如果的方法或?qū)傩赃m用于該對(duì)象,則這兩個(gè)函數(shù)的返回值為T(mén),否則為 nil。判斷方法的函數(shù)語(yǔ)法如下:(vlax-method-available-p object method)其中,object 為對(duì)象,method 為要判斷的方法,例如(假設(shè) myCircle 已存在):_$ (vlax-method-applicable-p myCircle copy)_$ (vlax-method-applicable-p myCircle addbox)判斷屬性的函數(shù)語(yǔ)法如下:(vlax-property-available-p object
51、property T)返回 T返回 nil其中,object 為對(duì)象,property 為要判斷的屬性,如果在調(diào)用 vlax-property-available-p函數(shù)時(shí)使用了“T”參數(shù),那么將改變判斷方式。如果對(duì)象擁有該屬性并且該屬性可以被更改,則函數(shù)返回值為“T”;如果對(duì)象沒(méi)有該屬性或該屬性不可更改,函數(shù)返回值為“nil”。例如(假設(shè) myCircle 已存在):以下表示圓心和圖層均為 myCircle 的屬性:_$ (vlax-property-available-p myCircle center)_$ (vlax-property-available-p myCircle laye
52、r)返回 T返回 T以下表示 application 屬性屬于 myCircle,但不可修改:_$ (vlax-property-available-p myCircle application)_$ (vlax-property-available-p myCircle application T)返回 T返回 nil179機(jī)械設(shè)計(jì)11.4.7使用對(duì)象集合在 AutoCAD 對(duì)象模型中的所有對(duì)象都是用集合來(lái)分組的。例如,圖層集合就是由 AutoCAD 文字文件中的所有圖層所組成的。Visual LISP 提供了 vlax-map-collection 和 vlaxfor 函數(shù)來(lái)處理集合中的
53、AutoCAD 對(duì)象。vlax-map-collection 函數(shù)可以將另一個(gè)函數(shù)應(yīng)用到集合中的每一個(gè)對(duì)象。其語(yǔ)法為:(vlax-map-collection collection-object function)其中,collection-object 代表一個(gè)集合對(duì)象,function 為要應(yīng)用的函數(shù)或 lambda 表達(dá)式,函數(shù)返回值即為集合對(duì)象。例如,下列程序代碼將模型空間所有圖形顏色改為綠色(*mSpace* 表示模型空間對(duì)象):_$ (vlax-map-Collection *mSpace* (lambda (x) (vla-polor x acGreen)#如果要對(duì)集合中的每一個(gè)
54、對(duì)象使用一系列函數(shù)來(lái)求值,您可使用 vlax-for:(vlax-for symbol collection express.)與 foreach 函數(shù)用法類(lèi)似,vlax-for 將返回 for 循環(huán)中最后一個(gè)表達(dá)式求值的結(jié)果。以下的范例定義了一個(gè)函數(shù),它用 vlax-for 將模型空間中所有對(duì)象的顏色改為綠色(*mSpace* 表示模型空間對(duì)象):(vlax-for obj *mSpace* (vla-polor obj 3)如果在遍歷操作某集合時(shí)修改該集合(添加或刪除成員),可能會(huì)引起錯(cuò)誤。11.4.8取出對(duì)象集合中的對(duì)象對(duì)象集合由對(duì)象組成,有時(shí)需要對(duì)其中某個(gè)或一些對(duì)象進(jìn)行一些操作時(shí),就要
55、從對(duì)象集合中取出所需的對(duì)象。Item 方法可用來(lái)在對(duì)象中尋找相關(guān)的成員,而 Count 屬性可用于統(tǒng)計(jì)對(duì)象集合中對(duì)象的數(shù)目。利用 Item 方法及 Count 屬性,就可以對(duì)對(duì)象集合中的對(duì)象進(jìn)行單獨(dú)的操作。例如,可以尋找模型空間中所有的對(duì)象,并判斷這些對(duì)象的類(lèi)型是什么,然后對(duì)需要處理的對(duì)象進(jìn)行單獨(dú)的處理。以下的程序段將讓模型空間里所有圓對(duì)象顏色變?yōu)榫G色:(setq index 0)(repeat (vla-get-count *mSpace*)180第 11 章對(duì)象(if (= AcDbCircle(vla-get-objectname (vla-item *mSpace*index)(vla
56、-p)olor (vla-item *mSpace* index) acGreen)(setq index (+ index 1)Item 方法和 Count 屬性對(duì)群組與選集也同樣適用。11.4.9將對(duì)象從內(nèi)存中AutoCAD 中可以將多個(gè)變量指向同一個(gè) AutoCAD 圖元,也可以將多個(gè)VLA 物件指向同一個(gè)圖形對(duì)象。一般只要用 equal 函數(shù)就可以比較兩個(gè) VLA 對(duì)象,如果兩個(gè)對(duì)象要指向同一個(gè)圖形對(duì)象,equal 函數(shù)將返回 T。只要 VLA 對(duì)象還指向圖形對(duì)象,AutoCAD 就會(huì)保留該對(duì)象所需的內(nèi)存。如果不再需要該對(duì)象,就可使用函數(shù) vlax-release-object 來(lái)通知
57、 AutoCAD:(vlax-release-object object)其中,object 為某個(gè)要取消的 VLA 對(duì)象。例如(*mSpace* 為模型空間 VLA 對(duì)象):_$ (vlax-release-object *mSpace*)返回 3與關(guān)閉文件類(lèi)似,刪除某對(duì)象后,就不能再使用該 VLA 對(duì)象指針了,但是調(diào)用vlax-release-object 函數(shù)時(shí)并不會(huì)內(nèi)存。不過(guò),如果了對(duì)象的所有,AutoCAD在必要時(shí)就會(huì)相關(guān)內(nèi)存。如果要測(cè)試是否了某對(duì)象,就可以使用函數(shù)vlax-object-released-p:(vlax-object-released-p object)例如,下列程
58、序代碼將用來(lái)測(cè)試了執(zhí)行 vlax-release-object 前后的 *mSpace*對(duì)象(*mSpace* 為模型空間 VLA 對(duì)象):181機(jī)械設(shè)計(jì)_$ (vlax-object-released-p *mSpace*)_$ (vlax-release-object *mSpace*)_$ (vlax-object-released-p *mSpace*)返回返回返回nil 3T了該對(duì)象,函數(shù)將返回 T,否則返回 nil。11.4.10對(duì)象數(shù)據(jù)轉(zhuǎn)換Visual LISP 還提供了許多AutoCAD 圖形對(duì)象的方法,包括:由 ActiveX 函數(shù)返回的 VLA 對(duì)象。由 entget 和
59、entsel 返回的圖元名稱(chēng)(ename)。此圖元名稱(chēng)將指向某開(kāi)啟圖形中的對(duì)象。由 handent 返回的句柄。句柄的圖元在不同 AutoCAD 任務(wù)期間將保持不變。對(duì)象 ID 碼。ARX 將用它來(lái)標(biāo)識(shí)對(duì)象。為了靈活地使用這些對(duì)象,Visual LISP 提供了將一種對(duì)象標(biāo)志符號(hào)轉(zhuǎn)換為另一種標(biāo)志符號(hào)的函數(shù)。就以下述小節(jié)來(lái)分述之。在圖元名稱(chēng)和 VLA 對(duì)象之間做轉(zhuǎn)換要將 entget 等函數(shù)提取到的圖元名稱(chēng)轉(zhuǎn)換成對(duì)象的函數(shù),您可以使用 ActiveX 函數(shù),以及將 VLA 對(duì)象轉(zhuǎn)換成圖元名稱(chēng)的函數(shù)。欲將圖元名稱(chēng)轉(zhuǎn)換成 VLA 對(duì)象,就要用到 vlax-ename-vla-object 函數(shù),例如:_$ (setq ename-circle (car (entsel nPick a Circle:)_$ (setq vlaobj-circle(vlax-ename-vla-obj
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 冀教版四年級(jí)下冊(cè)數(shù)學(xué)教案
- 農(nóng)村環(huán)境整治與生態(tài)建設(shè)
- 焊接作業(yè)工藝流程標(biāo)準(zhǔn)化與優(yōu)化方案
- 生產(chǎn)的火災(zāi)危險(xiǎn)性分類(lèi)標(biāo)準(zhǔn)
- 高一化學(xué)教案:專(zhuān)題第二單元第二課時(shí)乙酸酯
- 2024屆遼寧省大連海灣某中學(xué)高考仿真卷化學(xué)試卷含解析
- 2024高中物理章末質(zhì)量評(píng)估四含解析新人教版選修1-1
- 2024高中語(yǔ)文略讀課文第8課楊振寧:合璧中西科學(xué)文化的驕子課堂練習(xí)含解析新人教版選修中外傳記蚜
- 2024高中語(yǔ)文第五單元散而不亂氣脈中貫自主賞析祭十二郎文學(xué)案新人教版選修中國(guó)古代詩(shī)歌散文欣賞
- 2024高中語(yǔ)文精讀課文二第5課1達(dá)爾文:興趣與恒心是科學(xué)發(fā)現(xiàn)的動(dòng)力一作業(yè)含解析新人教版選修中外傳記蚜
- 第2課 各種各樣的運(yùn)動(dòng)(說(shuō)課稿)-2023-2024學(xué)年三年級(jí)下冊(cè)科學(xué)教科版
- 代理記賬有限公司簡(jiǎn)介(5個(gè)范本)
- 高中英語(yǔ)新課程標(biāo)準(zhǔn)解讀課件
- 快速了解陌生行業(yè)的方法論及示例PPT課件
- 南京郵電大學(xué)通達(dá)學(xué)院學(xué)生成績(jī)復(fù)核申請(qǐng)表
- 職工履歷表-格式(共3頁(yè))
- GIS設(shè)備帶電補(bǔ)氣作業(yè)指導(dǎo)書(shū)QXL2015
- 造船廠(chǎng)全套作業(yè)指導(dǎo)書(shū)
- 石灰窯建設(shè)項(xiàng)目可行性研究報(bào)告寫(xiě)作范文
- 一種X-Ka雙頻雙極化共口徑連續(xù)波雷達(dá)天線(xiàn)設(shè)計(jì)
- 論女性在婚姻家庭中的權(quán)益保障
評(píng)論
0/150
提交評(píng)論