彭 勝
(中鋁國際工程股份有限公司,北京100093)
?
基于AutoCAD ObjectARX的二次開發(fā)在企業(yè)電子圖檔管理系統(tǒng)中的應(yīng)用
彭 勝
(中鋁國際工程股份有限公司,北京100093)
文章介紹了CAD二次開發(fā)的關(guān)鍵技術(shù)和CAD圖形數(shù)據(jù)庫的結(jié)構(gòu)原理,提出用帶屬性定義的塊來標(biāo)準(zhǔn)化圖框及標(biāo)題欄數(shù)據(jù)的解決方案,對CAD圖框塊屬性定義及文件上傳有關(guān)數(shù)據(jù)定義進(jìn)行了分析;并通過圖檔系統(tǒng)的使用,對設(shè)計(jì)過程標(biāo)準(zhǔn)化和電子文件的有效性提供了技術(shù)支持。
AutoCAD二次開發(fā);ObjectARX; 圖檔管理系統(tǒng);設(shè)計(jì)標(biāo)準(zhǔn)化;信息提取
為了解決設(shè)計(jì)院圖紙歸檔標(biāo)準(zhǔn)化和電子圖紙有效性等問題,提高設(shè)計(jì)過程的便捷性和效率,圖檔管理系統(tǒng)在CAD集成方面做了大量的二次開發(fā),客戶端采用AutoCAD二次開發(fā)ObjectARX技術(shù),直接嵌入到指定的AutoCAD版本中,只要用戶啟動AutoCAD均會自動加載該圖檔系統(tǒng)插件,使用戶使用時(shí)無任何負(fù)擔(dān),無需改變?nèi)魏瘟?xí)慣。本系統(tǒng)為用戶提供細(xì)致的圖檔收集功能、圖簽信息提取功能、CAD電子文件智能拆分功能、文件格式自動轉(zhuǎn)換功能和高效的在線瀏覽查詢功能等管理功能,具有很強(qiáng)的實(shí)用性和易用性。
通常在AutoCAD圖紙中,圖框一般是由多個圖元對象組成的,如多義線和文字,這些對象只是在視覺上呈現(xiàn)為圖框形式,但對象本身沒有內(nèi)在關(guān)聯(lián),且其空間位置不能相對固定,在利用計(jì)算機(jī)識別這種圖框時(shí),很難精準(zhǔn)定位。因此在制作圖框?qū)ο髸r(shí),必須完善圖框中所有子圖元的聯(lián)系,使之形成一個可以識別的整體,便于系統(tǒng)自動處理。
AutoCAD環(huán)境中的塊參照是由多個不同子圖元對象組成,子圖元之間相對位置固定,具有固定的塊名,便于查詢定位。另外塊參照可以附帶屬性圖元,通過塊屬性,操作者可以方便的修改塊參照的顯示特征。因此,采用帶屬性的塊參照來處理圖框,能很好地對圖框進(jìn)行識別、定位,并能夠通過塊屬性進(jìn)行工程名稱、子項(xiàng)名稱、圖紙名稱、圖號、版次等信息的提取工作。
ObjectARX(AutoCAD Runtime Extend)以面向?qū)ο蟮腃++語言為主要開發(fā)語言,是基于Microsoft Visual C++的一個功能強(qiáng)大的二次開發(fā)工具。ARX應(yīng)用程序以DLL形式同AutoCAD共享內(nèi)存的地址空間,可以直接訪問AutoCAD的各種內(nèi)存對象,可以監(jiān)控和處理AutoCAD的各種消息事件。所以ARX在AutoCAD的眾多二次開發(fā)工具中功能更強(qiáng)大,代碼執(zhí)行效率和運(yùn)行速度更高。CAD的二次開發(fā)人員能夠通過ARX利用AutoCAD的開發(fā)框架,直接訪問AutoCAD的圖形系統(tǒng)與數(shù)據(jù)庫,在二次開發(fā)的程序運(yùn)行時(shí)擴(kuò)展AutoCAD的功能。
AutoCAD圖形數(shù)據(jù)庫是一個對象管理器,其管理的是圖形及其屬性數(shù)據(jù)的信息。為了方便查找,AutoCAD圖形數(shù)據(jù)庫將放在該數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行分類、歸檔,并引入各種索引表,這些表就是9個符號表和1個命名對象字典,各表中分別存放了不同類型的數(shù)據(jù)。任何一個對象都從屬于某一個上一級的圖形數(shù)據(jù)庫對象(容器對象),AutoCAD所有圖形對象和非圖形對象間的從屬關(guān)系形成了圖形數(shù)據(jù)庫的樹狀結(jié)構(gòu)。
如圖1所示,ModelSpace(模型空間)是一條名為*Model_Space的特殊塊表記錄,保存在其中的可視化圖形對象,可以在繪圖區(qū)域中的模型空間中顯示。塊表記錄(AcDbBlockTableRecord)儲存到塊表中叫“塊定義”。 “塊定義”以塊參照(AcDbBlockReference)的形式在模型空間中顯示,顯示出來的圖形就是AutoCAD中的圖塊。塊定義中可以通過屬性定義(AcDbAttributeDefinition)給塊定義添加屬性,定義在塊中的屬性定義(AcDbAttributeDefinition)需要通過屬性參照(AcDbAttributeReference)添加到塊參照中隨塊參照一起顯示。
圖1 塊定義和塊參照關(guān)系示意圖Fig.1 Relationship diagram of block definition and block reference
程序功能主要是在設(shè)計(jì)過程中,完成圖框和標(biāo)題欄的標(biāo)準(zhǔn)化設(shè)置,使用二次開發(fā)的接口界面統(tǒng)一設(shè)置標(biāo)題欄圖戳中的內(nèi)容,在線電子歸檔過程中可以自動提取此類信息,自動根據(jù)圖框設(shè)置情況打印PLT文件,無需要人工導(dǎo)出PLT文件。使用圖檔系統(tǒng)后的設(shè)計(jì)歸檔出版流程如圖2所示。
圖2 設(shè)計(jì)歸檔出版流程Fig.2 Flow chart of design, archiving and publication
整個設(shè)計(jì)歸檔過程的實(shí)現(xiàn)可分為以下步驟:
(1)圖紙?jiān)O(shè)計(jì)
使用插入圖框、編輯圖框、編輯標(biāo)題欄等功能輔助完成在AutoCAD 2004下的設(shè)計(jì)任務(wù);
(2)拆分圖框
圖檔系統(tǒng)要求電子歸檔時(shí)每個dwg文件有且只有一個標(biāo)準(zhǔn)化圖框,使用拆分圖框完成自動拆分為多個dwg文件并以圖號命名的功能;
(3)電子簽章
將拆分后的dwg文件根據(jù)審核、審定及實(shí)際需要,分別進(jìn)行電子簽章;
(4)提交歸檔上傳
填寫電子歸檔單,選擇需要?dú)w檔的電子文件,設(shè)置好本地打印樣式表,自動根據(jù)圖紙信息生成PLT文件和DWF文件并統(tǒng)一上傳到服務(wù)器,實(shí)現(xiàn)電子歸檔;
(5)B/S流程
總師接收到設(shè)計(jì)者的歸檔流程后,在B/S系統(tǒng)中可以補(bǔ)充修改歸檔份數(shù)和打印份數(shù)等信息,確認(rèn)無誤后通過,由檔案室接收。在B/S系統(tǒng)網(wǎng)頁中,可以提交高階段電子文件歸檔流程或其他文件歸檔流程。設(shè)計(jì)者所有啟動的流程信息包括CAD中啟動的和網(wǎng)頁上啟動的均可在B/S系統(tǒng)中查看;
(6)文印出版
檔案室確認(rèn)接受后,文印室即可看到打印任務(wù),按照接受順序完成出版工作,無需設(shè)計(jì)者再和文印室接觸。
CAD二次開發(fā)主要功能點(diǎn)有以下幾個方面。
3.1 插入圖框功能
通過統(tǒng)一的界面輸入,設(shè)計(jì)人員根據(jù)管理端定義的標(biāo)準(zhǔn)圖幅,選擇圖幅參數(shù)(幅面大小、圖框類型、圖幅加長系數(shù)等),自動在AutoCAD軟件環(huán)境中生成標(biāo)準(zhǔn)格式圖幅,并可自動插入圖號、圖名、工程名稱等圖簽信息。
系統(tǒng)需要以對話框?yàn)槿藱C(jī)交互界面,可以選擇輸入圖形的圖幅、比例,放置方向和標(biāo)題欄樣式等信息,系統(tǒng)將自動生成符合要求的圖框和標(biāo)題欄。
目前的圖框類型有,圖紙標(biāo)準(zhǔn)圖戳、卷首頁-封面、材料表(中、英文)、設(shè)備表(中、英文)、設(shè)備及主要材料表(中、英文)、設(shè)計(jì)變更通知書(中、英文)、設(shè)計(jì)說明書(中、英文)和圖紙目錄(中、英文)。
3.2 編輯圖框功能
對dwg文件里已經(jīng)添加的圖框,提供編輯修改功能,調(diào)整原有圖框設(shè)置,讀取原有設(shè)置信息,通過對話框可以重新設(shè)置當(dāng)前圖框的圖幅信息、比例信息、是否顯示會簽區(qū)等信息。
3.3 編輯標(biāo)題欄功能
在AutoCAD環(huán)境中,通過統(tǒng)一的界面輸入,完成標(biāo)題欄圖戳信息設(shè)置。自動識別讀取圖簽信息,如圖號、圖名、階段等信息。
通過編輯標(biāo)題欄對話框,可以選擇輸入當(dāng)前圖形的工程信息、圖紙信息、版次和比例等信息,而圖紙規(guī)格、比例等信息將由用戶通過系統(tǒng)生成圖框時(shí)選擇生成,系統(tǒng)將自動填寫標(biāo)題欄信息。
根據(jù)實(shí)際業(yè)務(wù)需求,圖紙名稱和工程名稱可根據(jù)長度情況選擇是否分行,但最多兩行??蓪⑻顚懲暾臉?biāo)題欄信息,通過勾選“保存為模板”再單擊“確定”保存在系統(tǒng)中,下次對別的標(biāo)題欄進(jìn)行編輯操作時(shí),單擊“讀模板”可以將之前保存的輸入重新復(fù)制過來,供修改后參考使用。
不同標(biāo)題欄樣式生成的標(biāo)題欄在編輯時(shí)也會調(diào)用不同的編輯窗口。以上模板保存載入功能在所有編輯標(biāo)題欄功能里通用。
3.4 拆分圖框功能
將一個dwg文件中的多個圖框拆分為多個dwg文件(每個文件只有一個圖框),并自動根據(jù)圖號命名。若一個dwg格式文件包含多幅設(shè)計(jì)圖紙,系統(tǒng)可自動將其拆分成多個dwg格式文件,每個dwg格式文件包含一幅設(shè)計(jì)圖紙。以工程圖號自動命名拆分后的文件名,同時(shí)配以版本號,文件名須具有唯一性。
3.5 歸檔上傳功能
填寫電子歸檔單,選擇需要?dú)w檔的電子文件,設(shè)置好本地打印樣式表,自動根據(jù)圖紙信息生成PLT文件和DWF文件并統(tǒng)一上傳到服務(wù)器,實(shí)現(xiàn)電子歸檔。
系統(tǒng)支持將dwg文件格式自動批量轉(zhuǎn)換為PLT/DWF等格式文件。文件名以工程圖號自動命名拆分后的文件名,并配以版本號,文件名須具有唯一性。
打印時(shí),程序從需要打印的圖紙中捕捉圖框塊參照,并根據(jù)圖框塊參照的界限范圍和圖紙比例確定圖紙尺寸。系統(tǒng)在AutoCAD繪圖環(huán)境中設(shè)定好對應(yīng)的各種頁面設(shè)置,實(shí)現(xiàn)程序自動打開文件,撲捉圖框,配置打印設(shè)置,并發(fā)送至所需的打印機(jī)進(jìn)行出圖。
規(guī)范圖框的繪制標(biāo)準(zhǔn)后,充分利用CAD的二次開發(fā)技術(shù),利用軟件能夠有效提高工作效率,降低設(shè)計(jì)人員的重復(fù)勞動,將用戶從人工管理和查尋圖紙的繁重、低效勞動中徹底解脫出來。不僅保證了歸檔文件的高質(zhì)量和歸檔的及時(shí)性,而且通過對圖紙進(jìn)行有效信息提取大大減輕了歸檔時(shí)大量圖紙信息的輸入工作。
通過圖檔管理系統(tǒng)的實(shí)施,確保CAD電子文件完整、及時(shí)、準(zhǔn)確地歸檔,實(shí)現(xiàn)工程設(shè)計(jì)電子檔案全生命周期管理,幫助設(shè)計(jì)院實(shí)現(xiàn)標(biāo)準(zhǔn)化收檔、自動化歸檔、規(guī)范化管檔、網(wǎng)絡(luò)化用檔,達(dá)到了技術(shù)先進(jìn)、安全穩(wěn)定、信息共享、便捷高效的技術(shù)要求和使用要求。
[1] 劉二洋.基于DWGdirect技術(shù)的公路工程圖紙文件轉(zhuǎn)換[J]. 中國交通信息化,2013,(3):
[2] 劉中合,李邦明,王瑞雪,劉賢喜. 一種基于Web的電子圖檔管理系統(tǒng)的設(shè)計(jì)[J].機(jī)械工程與自動化,2006,(1):
Application of Secondary Development Based on AutoCAD ObjectARX in Enterprise Electronic Document Management System
PENG Sheng
(China Aluminum International Engineering Co., Ltd., Beijing 100093, China)
The paper presented critical technologies and structure principle respectively for CAD secondary development and CAD graphics database; it proposed solutions to standardize frame and title block data using blocks with attribute definitions, it analyzed attribute definition of CAD blocks and definition of related data for file uploads; it pointed out that document management system can also provide technical support for implementing design process standardization and effective electronic archiving. Keywords: AutoCAD secondary development; ObjectARX; document management system; design standardization; information extraction
2015-08-06
TP311.52
A
1671-6795(2015)05-0060-03