国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Microstation V8 XM圖紙批量打印的實現(xiàn)

2017-08-08 03:01陳青松
制造業(yè)自動化 2017年7期
關鍵詞:批量二次開發(fā)圖紙

陳青松

(中冶賽迪技術研究中心有限公司 BIM技術研究中心,401122)

基于Microstation V8 XM圖紙批量打印的實現(xiàn)

陳青松

(中冶賽迪技術研究中心有限公司 BIM技術研究中心,401122)

Microstation通用功能已非常強大,但在實現(xiàn)圖紙批量化打印方面卻存在著不足,需要用戶手動對每幅圖進行選擇、設置和打印,工作效率低下,這就需要開發(fā)出一種快速批量打印工具。著重介紹了了在MicrostationV8 XM平臺上基于Nativecode開發(fā)方式實現(xiàn)批量打印的方式方法。

Microstation;dgn;批量打印

0 引言

隨著企業(yè)甩圖板工程的完成,企業(yè)信息化建設的不斷深入,計算機在企業(yè)應用中的地位越來越重要,而作為信息化基礎的CAD軟件是企業(yè)信息化工程的一個支承點。為了能夠指導工程項目施工建設,CAD出圖是一個必不可少的步驟,特別是出大批量的工程圖、建筑圖等。如果針對項目圖紙單張打印,這將大大增加設計人員的工作量,使工作顯得冗余,降低了工作效率。

Microstation是全球馳名的美國Bentley公司開發(fā)的企業(yè)級工程模式應用軟件產品的基礎CAD軟件,具有強大的2D/3D輔助設計功能,在歐美及國內的大中型工程設計企業(yè)得到了極為廣泛的應[1]。本文將圍繞如何在Microstation V8 XM中實現(xiàn)圖紙批量打印展開研究。

1 批量打印程序需要具備基本功能

在一個具體項目中,工程圖紙對應的圖框存在圖框大小不一、橫放或豎放、縮放、旋轉(本文只針對那些旋轉角度為90度整數(shù)倍的圖框)、加長等各種情況,這為圖框范圍正確識別和針對各類型圖框正確設置打印參數(shù)帶來了挑戰(zhàn)。針對這些實際情況批量打印程序必須實現(xiàn)以下基本功能:

1)對于單個文件中存在多個圖框情況,要能獲取該文件中所有圖框信息;

2)對于批量選擇的多個文件,要能獲取每個文件中所有圖框信息;

3)可對相同類型圖框單獨或者統(tǒng)一設置打印參數(shù);

4)對于設置好打印參數(shù)所有圖紙,能在命令觸發(fā)的條件下執(zhí)行全自動批量打印。

本文中涉及圖框信息主要有以下四類:

1)圖框類型信息,圖框是A4、A4豎、A3、A2等等類型(便于自動匹配打印紙張);

2)圖框范圍信息,圖框左上角和右下角坐標信息;

3)圖框縮放比例;

4)圖框旋轉角度。

2 在Microstation V8 XM中實現(xiàn)批量打印面臨的問題及對應解決方法

Microstation軟件本身提供了打印程序和批量處理程序,但結合使用局限較多(例如不同大小圖框在同一批量處理程序中進行打印則效果不佳,同一批量圖框橫放和豎放也只能識別一種等等)。通過二次開發(fā)可完美解決此類問題,但由于軟件本身和SDK(Software development kit,二次開發(fā)包)開放接口所限,批量打印程序需要解決圖框信息獲取及打印參數(shù)動態(tài)設置及發(fā)送給問題。

2.1 獲取完整的圖框信息

每個企業(yè)根據(jù)自身實際情況,會制定一套統(tǒng)一使用的圖框,如果圖框制作沒有一定規(guī)范那么將阻礙后續(xù)批量打印程序對圖框信息獲取。本文采用的圖框解決方案是:利用程序生成統(tǒng)一命名的圖框Cell(通過手動制作公司統(tǒng)一的圖框Cell再發(fā)布給設計人調用則無法實現(xiàn)不同類型圖框命名為為同樣名字的Cell,對于該圖框生成程序本文不做過多分析,該程序已在筆者公司穩(wěn)定運行),并為該Cell添加屬性用來保存圖框類型信息(例如A4、A4豎等等),同時將圖框最外圍邊框線作為Cell第一個元素(以便快速準確獲取到圖框實際范圍)。通過這種方法生成的圖框,再結合二次開發(fā)就可以完整獲取文件中所有圖框信息(Cell縮放比例就是圖框縮放比例,Cell旋轉角度就是圖框旋轉角度)。

2.2 打印過程中動態(tài)設置打印參數(shù)并實現(xiàn)自動批量打印

批量打印另一個重要功能是在自動打印過程中將設置好的打印參數(shù)應用到具體圖框并發(fā)送給打印機,而Microstation V8 XM開放的SDK[2]中并沒有提供接口來操作打印過程,就算間接利用發(fā)送命令的方式也只能設置部分打印參數(shù),最后通過研究該軟件自身打印工具的打印過程以及提供的SDK,本工具采用如下思路來實現(xiàn)自動化過程:在每個文件打印過程中通過編程啟動Microstation軟件自帶打印功能[3],并通過程序代碼控制這個過程(編程來控制軟件本身的打印過程間接達到自動化打印效果)達到實現(xiàn)批量打印功能。

3 批量打印在Microstation V8 XM中編程實現(xiàn)

Microstation V8 XM支持MDL(Microstation Development Language)、VBA(Visual Basic for Applications)、Addins及NativeCode等多種二次開發(fā)方式[4],本文采用NativeCode方式實現(xiàn)批量打印程序開發(fā),即在Visual Studio2003環(huán)境中結合版本號為08090451的Microstation二次開發(fā)包完成代碼編寫工作(程序功能主界面如圖1所示)。

3.1 獲取待打印文件中所有圖框信息關鍵代碼

每個Microstation文件可由多個Model組成,每個Model中可放置多個圖框。

1)后臺打開待打印文件

2)獲取文件所有Model

3)獲取Model的所有圖框

4)獲取每個圖框的圖框信息

圖1 批量打印程序主界面

3.2 自動設置打印參數(shù)并觸發(fā)打印關鍵代碼

1)打開待打印文件,并將待打印圖框居中

2)啟動Microstaion軟件本身打印界面

圖2 Microstation軟件自帶打印功能界面

3)通過程序設置打印界面各打印參數(shù)

4)觸發(fā)打印

圖3 參數(shù)設置好的打印界面

4 結束語

Microstation批量打印程序在實際工作中得到了極大應用,成百上千張圖紙只需要簡單地設置好打印參數(shù)后即可按順序進行批量打印,極大提高了打印效率。通過選擇適當?shù)拇蛴◎寗涌蓪D紙文件批量轉換成PLT或PDF格式,極大地滿足了工程需求。

[1] 肖劍平.VC++環(huán)境下運用MDL進行Microstation二次開發(fā)的剖析[J].工程勘察,2006,(2).

[2] MicroStation V8 MDL Function Reference SDK自帶幫助文件[K].

[3] 溫特斯.學習MicroStation VBA[M].中國水利水電出版社,第1版,2007(7):1.

[4] 何立輝.基于Microstation的礦山設計二次開發(fā)技術探討[J].內蒙古煤炭經濟,2016:10.

[5] 趙亭懷,王怡紅,劉董梅.談談MicroStation圖形文件輸出[J].油田建設設計,1998:1.

Realization of batch printing based on microstation V8 XM

CHEN Qing-song

TH12;TP391

:B

1009-0134(2017)07-0133-03

2017-03-30

陳青松(1982 -),男,湖南人,工程師,碩士,研究方向為協(xié)同設計與企業(yè)信息化。

猜你喜歡
批量二次開發(fā)圖紙
批量精裝房項目工程信息管理綜述
云南:鐵路“520”運輸鮮花4萬余件 高鐵批量運輸創(chuàng)新高
批量提交在配置分發(fā)中的應用
淺談汽車線束產品圖紙管理
看圖紙
淺談Mastercam后處理器的二次開發(fā)
西門子Easy Screen對倒棱機床界面二次開發(fā)
模具圖紙在全生命周期內的信息管理系統(tǒng)研究
ANSYS Workbench二次開發(fā)在汽車穩(wěn)定桿CAE分析中的應用
基于虛擬現(xiàn)實技術二次開發(fā)的學生公寓漫游仿真的研究
苍梧县| 囊谦县| 沁源县| 会宁县| 天全县| 海阳市| 三明市| 呼图壁县| 万山特区| 安化县| 邢台市| 韶山市| 安龙县| 杭锦后旗| 马山县| 望谟县| 巩留县| 六安市| 洪泽县| 高尔夫| 临潭县| 开平市| 东阳市| 彰武县| 轮台县| 理塘县| 来安县| 葵青区| 新邵县| 文化| 阜新| 崇明县| 民丰县| 武隆县| 娱乐| 滕州市| 比如县| 朝阳区| 两当县| 革吉县| 郴州市|