于蕭榕 江蘇科技大學計算機科學與工程學院,江蘇 鎮(zhèn)江 212003
對應刻度標牌參數化繪制研究
于蕭榕 江蘇科技大學計算機科學與工程學院,江蘇 鎮(zhèn)江 212003
為了提高標牌行業(yè)的繪制標牌的工作效率,操作流程的標準化,研究標牌參數化繪制方法及技術,結合Ob j e c t ARX2008與C#進行了A u t o C A D 的二次開發(fā),詳細闡述了標牌參數化繪圖系統(tǒng)的結構、設計流程以及應用設計結果進行參數化繪圖的過程,使標牌企業(yè)繪制人員在繪制的過程中,只需輸入必要參數就可以由計算機自動生成具有對應算法的刻度,從而大大提高了工作效率并擴展了CAD二次開發(fā)的范圍。
ObjectARX;AutoC二AD次開發(fā);對應刻度;參數化
ObjectARX; AutoCAD secondary development;corresponding scale;parameterized
ObjectARX[1]程序本質上是Windows動態(tài)鏈接庫(DLL)程序,這些庫與AutoCAD在同一地址空間運行,并能直接利用AutoCAD核心數據結構和代碼,使得二次開發(fā)者可充分利用AutoCAD的開發(fā)結構,直接訪問AutoCAD數據庫結構、圖形系統(tǒng)以及CAD幾何造型核心,能夠在運行期間實時擴展AutoCAD的功能,同時它也是一個可擴展的編程框架,可以擴展AutoCAD的對象和協(xié)議。AutoCAD 自身的許多模塊均是用ObjectARX開發(fā)的,ObjectARX是AuotCAD最強大的定制開發(fā)工具。目前Objectarx的開發(fā)語言以C++為主,而C#也可以進行AutoCAD二次開發(fā)[2]。C#的現代化設計能夠消除很多常見的C++編程錯誤。例如:(1)資源回收減輕了程序員內存管理的負擔。(2)C# 中變量由環(huán)境自動初始化。(3)變量的類型是安全的。而且開發(fā)出的界面與AutoCAD系統(tǒng)界面保持了良好的一致性[3]。
進行AutoCAD二次項目開發(fā)不是在CAD中建個命令就可以,需要建立菜單,對話框[4],動態(tài)鏈接庫的自動調用[5],對象參數的輸入與讀取等。開發(fā)流程如圖1。
隨著計算機在工廠的普及,越來越多的企業(yè)使用AutoCAD軟件進行繪圖[6],在標牌廠的標牌制作工藝流程中,一般先用CAD繪圖軟件將需要制作的標牌圖形在計算機中繪制好并保存,然后將標牌圖形文件轉換成和激光照排機兼容的文件格式輸出到照排機,照排機打印出膠片后進行生產。目前已對標牌繪制方法做了一些改進,基于AutoCAD繪圖軟件,以輸入標牌圓弧、刻度線、刻度值的各項參數的方法繪制標牌,提高了工作效率[7]。但對某些特殊標牌,例如溫度表、冷媒表的標牌,主體部分都有兩條弧,兩個弧有某一對應算法,即存在單位換算關系,標牌企業(yè)工作人員在繪制的時候一般只有其中一個標準弧的參數,比如溫度表里的攝氏度弧線參數,而華氏度弧線的參數并沒有,這時工作人員必須根據一定的對應關系算法先一個一個算出攝氏度對應的華氏度參數并輸入到參數表中,才能繪制出完整的標牌圖形,類似的情況還有很多,所以目前繪制這類標牌的時候繪圖員工作量很大,工作效率不高。
如圖2所示,實現標牌刻度與對應刻度計算機繪圖方法,包括以下步驟:
(1)輸入圓弧參數;
(2)繪制主圓??;
(3)選擇刻度線類型;
(4)詢問弧刻度是否均分;
(5)若步驟(4)的詢問結果為均分,則輸入均分刻度線參數并轉到步驟(7);
(6)若步驟(4)的詢問結果為不均分,則進行刻度旋轉方式的詢問,按詢問結果輸入按角度旋轉的刻度線參數或者輸入按相對固定值偏移倍數旋轉的刻度線參數;
圖1 二次開發(fā)流程框架
圖2
(7)詢問是否根據刻度線與刻度值的關系同時繪制刻度值;
(8) 若步驟(7)的詢問結果為是,則輸入刻度值參數,按步驟(5)和步驟(6)所選擇的均分、按角度旋轉、按相對固定值偏移倍數旋轉三種方式中的一種繪制刻度線和刻度值,完成后轉到步驟(15);
(9) 若步驟(7)的詢問結果為否,則詢問是否單獨繪制刻度值;
(10)若步驟(9)詢問結果為不單獨繪制刻度值則轉入步驟(15);
(11)若步驟(9)詢問結果為單獨繪制刻度值則詢問刻度值是否均分;
(12)若刻度值均分則輸入均分刻度值參數并轉到步驟(14);
(13)若刻度值不均分則輸入不均分刻度值參數;
(14)單獨繪制刻度值;
(15)詢問是否繪制刻度有對應算法的從?。?/p>
(16)若詢問結果為否,則轉到步驟(20);
(17)若詢問結果為是,則輸入對應算法;
(18)輸入從弧的弧參數、刻度參數、刻度值參數;
(19)繪制從弧、從弧刻度、從弧刻度值;
(20)繪制完成。
4.1 系統(tǒng)實施實例
標牌制作系統(tǒng)一般由繪圖用計算機和激光照排機組成,計算機與照排機互聯進行通訊,計算機將繪制好的標牌圖形文件轉換成和激光照排機兼容的文件格式輸出到照排機,照排機打印出膠片后進行生產。本文利用ObjectARX2008針對AutoCAD2008進行二次開發(fā),通過參數化的方法,解決現有繪制方法不能自動設定算法,自動算出刻度對應關系的問題,開發(fā)一套可以設定刻度對應關系算法的標牌繪制的計算機繪制系統(tǒng),減少了繪制時間,提高了工作效率,保證了標牌制作質量。
首先用戶根據要繪制的主刻度標牌的弧的參數,先輸入到繪制主刻度弧的窗口中,再根據標牌中弧的刻度均分與否,進入相應的繪制窗口。如果是均分刻度,進入“繪制均分主刻度”窗口,選擇刻度方向,輸入刻度的旋轉參數,均分格數,將均分刻度添加到AutoCAD窗口中。如果是不均分的刻度,由于繪制標牌的企業(yè)收到的刻度參數表有兩種情況,直接根據角度旋轉的刻度作為參數,還有根據某一固定的、均分的弧的刻度的偏移倍數作為參數,用戶分別進入相應的窗口進行操作,區(qū)別在于需要用戶依次的將不同角度或偏移值的主弧線刻度加入下方的列表框中,可以一次性加好,也可以分次操作,加好后添加到AutoCAD窗口中;為了方便用戶的操作,加快繪制速度,在增加不均分刻度的同時還可以輸入刻度值的參數,將刻度與刻度值一起繪制出來。主刻度繪制完成后,進入繪制刻度值的窗口,已在前面生成刻度值的可以跳過這一步,選擇或輸入刻度值的參數,刻度值也分為按角度均分旋轉和不規(guī)則角度兩種,兩者的區(qū)別在于均分刻度值的參數一次性生成在列表框中,不規(guī)則角度的刻度值依次輸入到列表框中,輸入好后生成主刻度標牌的刻度值。至此主刻度弧的所有內容繪制完成,下面繪制對應弧,首先在“對應算法”框中對主刻度與對應弧刻度的對應關系進行組合,生成對應的算法,組合完成后可以根據主刻度弧的起始角度,起始刻度值,對應弧的起始刻度值,終止值,步長值,計算出對應弧的任何一個整數刻度值的對應旋轉角度,從而一次性繪制出對應弧,對應弧刻度,對應弧刻度值。圖3是主刻度繪制界面,圖4是根據算法繪制對應弧的界面。圖5是刻度具有對應算法的標牌示例,其主弧為攝氏度弧線,從弧為華氏度弧線。
圖3 繪制主刻度界面
利用ObjectARX2008與VS2008中的C# 的結合針對標牌行業(yè)進行具有對應算法的標牌刻度的AutoCAD二次開發(fā),拓寬了AutoCAD二次開發(fā)的范圍,解決現有繪制方法不能設定從弧的對應算法,不能自動算出刻度對應關系并自動繪制從弧的技術問題,減少了繪制時間,提高了工作效率,保證了標牌制作質量。
[1]王大鵬,張立文,張國梁,等.ObjectARX中結合MFC開發(fā)AutoCAD ARX應用程序[J].計算機輔助工程.2001,10(4):55-58
[2]童時中,李平.二次開發(fā)是CAD取得實效的關鍵環(huán)節(jié)[J].電子機械工程.1999(4):64-68
[3]趙雪.中文AutoCAD 2006標準教程[M].西安:西北工業(yè)大學音像電子出版社.2005.3-10
[4]杜立,趙韓,董玉德,等. 基于ObjectARX齒輪設計系統(tǒng)的開發(fā)與研究.機械設計與制造.2008(12):75-77
[5]孫江宏,丁立偉,米潔.AutoCAD ObjectARX開發(fā)工具及應用[z].北京:清華大學出版社.1999
[6]薛長健,黃靖.AutoCAD 2OO0高級使用及開發(fā)[M].北京:人民郵電出版社.2000:413-496
[7]于蕭榕.基于ObjectARX 的標牌印刷分色拼版的研究[J].科學技術與工程.2011(2):383-387
Research of corresponding Scale Parameterized Drawing Method for Plate
YU Xiaorong (Jiangsu University of Science and Technology,ZhenJiang Jiangsu 212003,china)
In order to improve the efficiency of the drawplate in Signs Industry and standardize of operational process, this paper proposed a parameterized drawing way and technology. The method combined ObjectARX2008 and C# to proceed customized AutoCAD. Elaborated in detail the structure of the design and parameterization cartography system,the design as well as the process of the parameterization cartography using the design result.In the process of drawing, the computer will automatically generate scale of with the corresponding algorithm in plate when the drawing person input the required parameters. Real applications show that the proposed method can greatly enhance the working efficiency. This system extends the scope of AutoCAD secondary development.
TP391.72
A
10.3969/j.issn.1001-8972.2011.09.071
于蕭榕(1975- ),男,江蘇鎮(zhèn)江人,實驗師,工程碩士,研究方向為計算機輔助設計。