Java教程第8章數(shù)據(jù)庫與容器對象_第1頁
Java教程第8章數(shù)據(jù)庫與容器對象_第2頁
Java教程第8章數(shù)據(jù)庫與容器對象_第3頁
Java教程第8章數(shù)據(jù)庫與容器對象_第4頁
Java教程第8章數(shù)據(jù)庫與容器對象_第5頁
已閱讀5頁,還剩30頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫與容器對象,主講人:李恒凱 聯(lián)系電話電子郵件: QQ:20297327,本次課內(nèi)容,1 AutoCAD 數(shù)據(jù)庫 2 操作數(shù)據(jù)庫 3 組 4 為實體添加擴展數(shù)據(jù) 5 為實體添加擴展記錄,1 AutoCAD 數(shù)據(jù)庫,對于任何一個圖形文件,AutoCAD都會創(chuàng)建下列容器對象:九個固定的符號表和有名對象字典。 符號表與有名對象字典的功能相同。 符號表是不能被創(chuàng)建和刪除的,但可以添加、改變或刪除符號表中的條目,即符號表記錄。,AutoCAD數(shù)據(jù)庫,有名對象字典提供了與符號表相類似的機制來進行對象的保存與讀取。 有名對象字典可以看作是圖形中非實體對象的總表,它包含九個字典:

2、Group字典、MLine樣式字典、布局字典、打印樣式名字典、顏色字典、材質(zhì)字典、打印設(shè)置字典、顏色字典、材質(zhì)字典、打印設(shè)置字典、表樣式字典和系統(tǒng)變量字典。,AutoCAD數(shù)據(jù)庫,字典由DatabaseServices命名空間的DBDictionary類表示,它可以包含任何類型的DBObject,也包括其它字典。 字典對象不會執(zhí)行內(nèi)容檢查,但每個字典對象中只能包含對應(yīng)類型的對象,如MLine樣式字典中應(yīng)該包含MLineStyle類的實例,而Group字典中只包含Group類的實例。,AutoCAD數(shù)據(jù)庫,AutoCAD數(shù)據(jù)庫,要新建一個字典, 先要創(chuàng)建一個DBDictionary類的實例, 把

3、它加入到數(shù)據(jù)庫中, 然后再把它加入到所要包含的對象中(可以是有名對象字典也可以是其他字典), 最后將對象添加到字典和數(shù)據(jù)庫中。將字典加入到包含對象和將對象添加到字典和數(shù)據(jù)庫都要使用DBDictionary類的SetAt函數(shù)。,2 操作數(shù)據(jù)庫,說明 思路 步驟 效果 小結(jié),說明,介紹基本的AutoCAD數(shù)據(jù)庫操作,包括創(chuàng)建數(shù)據(jù)庫、讀入Dwg文件到數(shù)據(jù)庫、打開Dwg文件到當(dāng)前數(shù)據(jù)庫及保存數(shù)據(jù)庫等,同時還會介紹Wblock函數(shù)與Insert函數(shù)來進行數(shù)據(jù)庫之間的復(fù)制操作。,思路,數(shù)據(jù)庫的初始狀態(tài) 數(shù)據(jù)庫的創(chuàng)建與生成 數(shù)據(jù)庫保存 讀取外部文件 Wblock操作 插入數(shù)據(jù)庫 數(shù)據(jù)庫的當(dāng)前值,數(shù)據(jù)庫的初始

4、狀態(tài),當(dāng)一個AutoCAD數(shù)據(jù)庫被新建時,它包含了下面的基本數(shù)據(jù): 1)九個符號表,其中一些符號表會擁有初始記錄 2)有名對象字典, 它會包含Group字典和MLine樣式字典兩個字典, 而在Mline樣式字典中總會有Standard樣式存在。 3)其他的非數(shù)據(jù)庫對象。,初始的符號表記錄,數(shù)據(jù)庫的創(chuàng)建與生成,DatabaseServices命名空間中的Database類表示數(shù)據(jù)庫,其構(gòu)造函數(shù)原型如下: public Database(bool buildDefaultDrawing, bool noDocument) public Database() 參數(shù)buildDefaultDrawin

5、g表示是否要創(chuàng)建一個空的數(shù)據(jù)庫對象,為True時, 生成數(shù)據(jù)庫最基本的數(shù)據(jù)。為False時, 新創(chuàng)建的數(shù)據(jù)庫對象完全為空。 參數(shù)noDocument, 為True時表示新創(chuàng)建的數(shù)據(jù)庫對象不會關(guān)聯(lián)到當(dāng)前文檔, 為False時則會關(guān)聯(lián)到當(dāng)前文檔。,數(shù)據(jù)庫的保存,要保存一個數(shù)據(jù)庫,可以使用Database類的SaveAs函數(shù)。,讀取外部文件,Database類的ReadDwgFile函數(shù)可以將外部Dwg文件讀入到新創(chuàng)建的數(shù)據(jù)庫對象中。,Wblock,在AutoCAD中,Wblock命令用于將對象保存到文件或?qū)K轉(zhuǎn)換為文件。 Database類提供了Wblock函數(shù)來實現(xiàn)Wblock命令的功能, 該函

6、數(shù)可以用來從一個已存在的數(shù)據(jù)庫創(chuàng)建一個新的數(shù)據(jù)庫, 或者把一個數(shù)據(jù)庫中指定的實體復(fù)制到另一個數(shù)據(jù)庫中。,插入數(shù)據(jù)庫,Database類的Insert函數(shù)可以把一個數(shù)據(jù)庫(源數(shù)據(jù)庫)復(fù)制到另一個數(shù)據(jù)庫(目標(biāo)數(shù)據(jù)庫), 但源數(shù)據(jù)庫中有名對象字典的應(yīng)用程序定義的對象不會被復(fù)制。 如果源數(shù)據(jù)庫中的對象與目標(biāo)數(shù)據(jù)庫中的對象有沖突, 如擁有相同的線型, 則AutoCAD保持目標(biāo)數(shù)據(jù)庫中的對象不變。,數(shù)據(jù)庫的當(dāng)前值,如果一個實體的屬性值沒有被指定, 那么它會使用數(shù)據(jù)庫對象的當(dāng)前值。,步驟,新建一個類庫項目,注冊CreateAndSaveDwg命令,用于新建并保存Dwg文件。 在DatabaseOperati

7、on類中注冊ReadDwg命令,用于讀取Dwg文件到數(shù)據(jù)庫。 注冊0penDwg命令,用于讀取Dwg文件并設(shè)置為當(dāng)前活動文檔。 注冊CopyFromOtherDwg命令,用于讀取Dwg文件并把它作為塊對象加入到當(dāng)前數(shù)據(jù)庫的塊表中。 注冊CopyEntities函數(shù),用于將當(dāng)前數(shù)據(jù)庫中選定的實體復(fù)制到另一個數(shù)據(jù)庫中。,效果,小結(jié),AutoCAD數(shù)據(jù)庫的基本構(gòu)成 AutoCAD數(shù)據(jù)庫的新建、打開與保存 利用Database.Insert函數(shù)在一個數(shù)據(jù)庫中插入另一個數(shù)據(jù)庫 Database.Wblock函數(shù)的使用 數(shù)據(jù)庫當(dāng)前值的使用 利用ReadDwgFile函數(shù)讀入Dwg文件到AutoCAD 數(shù)據(jù)

8、庫,3 組,說明 思路 步驟 效果 小結(jié),說明,介紹組的相關(guān)操作,包括將實體加入到組和改變組中的對象。,思路,組是由DatabaseServices命名空間的Group類來表示,它屬于字典對象。 組是一個包含實體對象的集合對象,與塊不同的是,可以單獨控制組中的實體。,實體加入組的步驟,通過Group的構(gòu)造函數(shù)新建一個組對象 將組對象加入到數(shù)據(jù)庫的組字典中 在組中加入實體,組中實體的編輯,步驟,添加createGroup函數(shù), 用于創(chuàng)建一個組 添加removeAllButLines函數(shù),用于把所有不是直線的對象從組中移除并設(shè)置組中直線的顏色為紅色 注冊一個命令MakeGroup,用于調(diào)用crea

9、teGroup函數(shù)創(chuàng)建組MyGroup 注冊一個命令RemoveButLines, 用于調(diào)用removeAllButLines函數(shù)來把組MyGroup中的所有非直線的對象移除。,效果,小結(jié),Group類的定義 在組中加入、移除實體,4 為實體添加擴展數(shù)據(jù),說明 思路 步驟 效果 小結(jié),說明,擴展數(shù)據(jù)由ObjectARX或AutoLisp程序生成,并且可以被加入到任何對象中。本節(jié)介紹如何為實體添加擴展數(shù)據(jù)并顯示它們。,思路,新建一個注冊應(yīng)用程序表記錄對象。注冊應(yīng)用程序表記錄由RegAppTableRecord類表示,可以調(diào)用它的無參數(shù)構(gòu)造函數(shù)來創(chuàng)建一個注冊應(yīng)用程序表記錄對象。 調(diào)用RegAppTable類的Add函數(shù)把新建的注冊應(yīng)用程序表記錄對象添加到數(shù)據(jù)庫的注冊應(yīng)用程序表中。 調(diào)用實體對象的XData屬性為實體添加擴展數(shù)據(jù)。XData屬性

溫馨提示

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

評論

0/150

提交評論