盛營(yíng)營(yíng) 王克信 湯磊
(普天信息工程設(shè)計(jì)服務(wù)有限公司 北京市 100088)
通信專業(yè)傳送網(wǎng)線路工程設(shè)計(jì)工作包含大量勘察繪圖工作,而通信專業(yè)傳送網(wǎng)線路工程設(shè)計(jì)流程已經(jīng)較為成熟,標(biāo)準(zhǔn)化程度較高,而且工程項(xiàng)目往往集中度高,要求勘察制圖工作高效完成。本論文正是在這種背景下,研究如何通過創(chuàng)新開發(fā),實(shí)現(xiàn)自動(dòng)化繪圖,提升傳送網(wǎng)工程設(shè)計(jì)制圖效率。
ActiveX 是微軟近年推出的一個(gè)基于COM(Component Object Model)的技術(shù)規(guī)范,AutoCAD ActiveX 使用戶能夠從 AutoCAD 的內(nèi)部或外部以編程方式來操作 AutoCAD。本方案考慮以AutoCAD 2008 為平臺(tái),PyCharm 2019.03.02 為編程工具。Python 是一種解釋型、面向?qū)ο蟆?dòng)態(tài)數(shù)據(jù)類型的高級(jí)程序設(shè)計(jì)語(yǔ)言,該語(yǔ)言具有豐富的庫(kù)支持,其中,pyautocad 庫(kù)由俄羅斯工程師Roman Haritonov開發(fā),本方案結(jié)合pyautocad 2.0 庫(kù)及AutoCAD ActiveX Automation二次開發(fā)技術(shù),實(shí)現(xiàn)將谷歌地圖三維坐標(biāo)自動(dòng)繪制為傳送網(wǎng)線路工程CAD 圖紙。
經(jīng)對(duì)實(shí)現(xiàn)邏輯進(jìn)行梳理,該自動(dòng)化制圖分下列幾個(gè)步驟:
(1)讀取三維坐標(biāo);
(2)引入pyautocad 庫(kù),調(diào)用AutoCAD comtypes 接口;
(3)三維坐標(biāo)(大地坐標(biāo))轉(zhuǎn)換為二維坐標(biāo);
(4)基于二維坐標(biāo)繪制傳送網(wǎng)架空桿路圖[2]。
谷歌地圖默認(rèn)坐標(biāo)體系為WGS-84 地理坐標(biāo)系,通過該軟件導(dǎo)出KML 文件可以直接被windows 系統(tǒng)詞本打開。
打開PyCharm 程序,新建項(xiàng)目及主程序py 文件,定義函數(shù)提取KML 文件,部分關(guān)鍵代碼展示如下:


圖1

打開指定KML 文件,調(diào)用上述清理數(shù)據(jù)函數(shù),返回Python 語(yǔ)言待處理經(jīng)緯度列表,關(guān)鍵代碼如下:


需用到的Python 庫(kù)涉及嘗試拷貝、系統(tǒng)底層命令調(diào)用、窗口調(diào)用、科學(xué)計(jì)數(shù)、正則表達(dá)式等內(nèi)容,導(dǎo)入庫(kù)代碼如下:

需調(diào)用AutoCAD comtypes 接口。
將三維坐標(biāo)轉(zhuǎn)為二維坐標(biāo)體系,即大地坐標(biāo)轉(zhuǎn)為平面坐標(biāo)[1],關(guān)鍵代碼如下:

基于二維坐標(biāo)繪制傳送網(wǎng)架空桿路圖,部分關(guān)鍵代碼展示如下:


假定傳送網(wǎng)工程需求從東寶大隊(duì)四中隊(duì)往變電站新放光纜一條,圖1 是經(jīng)實(shí)堪現(xiàn)實(shí)架空桿路圖和經(jīng)三維坐標(biāo)轉(zhuǎn)換后自動(dòng)繪制的傳送網(wǎng)工程圖對(duì)比。
相較于傳統(tǒng)傳送網(wǎng)鼠標(biāo)手動(dòng)插入調(diào)整的圖紙繪制方式,大幅度提升工程制圖效率,提高制圖精確程度,大副度減少設(shè)計(jì)人員工作量。
近年來,在全國(guó)通信業(yè)務(wù)大力發(fā)展的背景下,光纖通信工程設(shè)計(jì)光纜線路技術(shù)也在迅速增長(zhǎng)與發(fā)展,通信產(chǎn)業(yè)作為全國(guó)高速發(fā)展先導(dǎo)產(chǎn)業(yè),同時(shí)各省市傳送網(wǎng)建設(shè)規(guī)模幾何倍數(shù)增加。本方案 利用Python 語(yǔ)言及AutoCAD ActiveX Automation 技術(shù)針對(duì)AutoCAD二次開發(fā),展示了自動(dòng)化制圖的另一種可能性,通過三維坐標(biāo)轉(zhuǎn)換為二維坐標(biāo)現(xiàn)實(shí)了從谷歌地圖提取數(shù)據(jù)至AutoCAD 自動(dòng)化方向,也進(jìn)一步拓寬了AutoCAD 二次開發(fā)的范圍,減少了繪制時(shí)間,提高了工作效率。