999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ObjectARX的道路縱斷面圖繪制

2010-04-19 07:00:52周俊
城市勘測(cè) 2010年4期
關(guān)鍵詞:程序數(shù)據(jù)庫(kù)

周俊

(西安市勘察測(cè)繪院,陜西西安 710054)

基于ObjectARX的道路縱斷面圖繪制

周俊?

(西安市勘察測(cè)繪院,陜西西安 710054)

利用AutoCAD提供的ObjectARX開(kāi)發(fā)環(huán)境以及C++語(yǔ)言,編寫(xiě)道路縱斷面圖自動(dòng)繪制程序,提高了工作效率。

ObjectARX;道路縱斷面

1 前 言

在城市工程測(cè)量中,時(shí)常會(huì)接觸道路縱斷面圖的測(cè)繪。在外業(yè)測(cè)量中,根據(jù)用戶(hù)要求沿路中線(xiàn)按一定距離采集點(diǎn)的高程以及路中樁的高程。內(nèi)業(yè)利用AutoCAD繪圖,在沒(méi)有專(zhuān)業(yè)設(shè)計(jì)軟件輔助的情況下,繪制道路縱斷面圖是很繁瑣的事,需要進(jìn)行大量的、重復(fù)的操作,既降低了工作效率又容易出錯(cuò)。利用AutoCAD提供的ObjectARX開(kāi)發(fā)環(huán)境編寫(xiě)自動(dòng)繪圖程序,可以快速而準(zhǔn)確地繪出道路縱斷面圖。

2 ObjectARX簡(jiǎn)介

ObjectARX是AutoDesk公司針對(duì)AutoCAD平臺(tái)上的二次開(kāi)發(fā)而推出的一個(gè)開(kāi)發(fā)軟件包,它提供了以C++為基礎(chǔ)的面向?qū)ο蟮拈_(kāi)發(fā)環(huán)境及應(yīng)用程序接口,能真正快速的訪(fǎng)問(wèn)AutoCAD圖形數(shù)據(jù)庫(kù)。用Object-ARX開(kāi)發(fā)的CAD軟件具有模塊性好、獨(dú)立性強(qiáng)、連接簡(jiǎn)單、使用方便、內(nèi)部功能高效實(shí)用等優(yōu)點(diǎn),并且支持MFC(Microsoft Fundation Class),能簡(jiǎn)潔并高效地實(shí)現(xiàn)許多復(fù)雜功能。

ObjectARX的類(lèi)庫(kù)構(gòu)成有以下幾項(xiàng):

(1)AcRx庫(kù),提供系統(tǒng)層次的類(lèi),用于動(dòng)態(tài)鏈接庫(kù)的初始化以及運(yùn)行時(shí)刻類(lèi)的注冊(cè)和標(biāo)識(shí)。

(2)AcEd庫(kù),提供一組用于定義和注冊(cè)新的Auto-CAD命令的類(lèi)。

(3)AcDb庫(kù),提供一組用于存取AutoCAD圖形數(shù)據(jù)庫(kù)結(jié)構(gòu)的類(lèi)。

(4)AcGi庫(kù),提供繪制AutoCAD實(shí)體圖形界面的類(lèi)。

(5)AcGe庫(kù),提供的實(shí)用類(lèi)用于執(zhí)行二維和三維幾何操作。

3 程序總體設(shè)計(jì)

3.1 AutoCAD數(shù)據(jù)庫(kù)

AutoCAD基本的數(shù)據(jù)庫(kù)對(duì)象是實(shí)體、符號(hào)表和字典。實(shí)體是在AutoCAD圖內(nèi)部表示圖的一種特殊數(shù)據(jù)庫(kù)對(duì)象,用戶(hù)可以在屏幕上看見(jiàn)實(shí)體并能對(duì)其進(jìn)行操作。符號(hào)表和詞典是用于存儲(chǔ)數(shù)據(jù)庫(kù)對(duì)象的容器,這兩個(gè)容器對(duì)象都映射一個(gè)符號(hào)名到一個(gè)數(shù)據(jù)庫(kù)對(duì)象。AutoCAD數(shù)據(jù)庫(kù)主要結(jié)構(gòu)如圖1所示,實(shí)體包含在塊表記錄中,因此要?jiǎng)?chuàng)建一個(gè)圖形對(duì)象,需要遵循下面的基本步驟:

(1)確定要?jiǎng)?chuàng)建對(duì)象的圖形數(shù)據(jù)庫(kù);

(2)獲得圖形數(shù)據(jù)庫(kù)的塊表;

(3)獲得一個(gè)存儲(chǔ)實(shí)體的塊表記錄,所有模型空間的實(shí)體都存儲(chǔ)在模型空間的特定記錄中。

(4)創(chuàng)建實(shí)體類(lèi)的一個(gè)對(duì)象,將該對(duì)象附加到特定的塊表記錄中。

圖1 圖形數(shù)據(jù)庫(kù)的結(jié)構(gòu)

3.2 相關(guān)類(lèi)的設(shè)計(jì)

利用面向?qū)ο蟮乃枷刖帉?xiě)相關(guān)類(lèi)文件來(lái)細(xì)分繪圖的工作,如創(chuàng)建實(shí)體,修改實(shí)體屬性以及相關(guān)計(jì)算。本文程序編寫(xiě)了3個(gè)類(lèi)文件:CCreateEnt、CModifyEnt和CCalculation。CCreateEnt類(lèi)用于創(chuàng)建實(shí)體,如直線(xiàn)、文字、圖層等。CModifyEnt類(lèi)的作用是修改實(shí)體的部分屬性,如顏色、線(xiàn)型、圖層等。這里給出CCreateEnt類(lèi)中新建圖層的函數(shù)CreateLayer的代碼。

3.3 斷面圖繪制的算法設(shè)計(jì)

繪制道路縱斷面圖的數(shù)據(jù)信息是沿路中線(xiàn)上的點(diǎn)距起點(diǎn)中樁的里程和高程。斷面圖橫向反映里程信息,縱向反映高程信息,相鄰兩點(diǎn)之間連線(xiàn),形成一條不規(guī)則的折線(xiàn),反映了沿著路中線(xiàn)地面的起伏變化。外業(yè)采集的數(shù)據(jù)是點(diǎn)的平面坐標(biāo)和高程,程序就是利用這些基本數(shù)據(jù)信息繪制出圖形:由平面坐標(biāo)得到各點(diǎn)距起點(diǎn)的里程,由每個(gè)點(diǎn)高程值確定所需要刻畫(huà)的高程值范圍。

在用CAD繪圖時(shí),將代表不同意義的實(shí)體放到不同的圖層中是個(gè)很好的習(xí)慣。因此,程序?qū)⒄麄€(gè)縱斷面圖分成4個(gè)圖層來(lái)創(chuàng)建:折線(xiàn)圖層、格網(wǎng)圖層、細(xì)分格網(wǎng)圖層和其他圖層。程序的算法如圖2所示。

圖2 程序流程圖

其中數(shù)據(jù)文本為txt格式,每一行代表一個(gè)點(diǎn)的數(shù)據(jù)信息,如某點(diǎn)A的坐標(biāo)和高程分別為(1 245.386,2 469.533)和471.65 m,則該點(diǎn)在坐標(biāo)文件中的格式為“A,1245.386,2469.533,471.65”。

程序部分代碼如下:

編譯運(yùn)行程序,生成ARX文件ZhJzdtn.ARX,加載到CAD后即可運(yùn)用該程序。

4 實(shí) 例

為驗(yàn)證程序的有效性,本文利用在西安市南郊某規(guī)劃路采集的縱斷面測(cè)量數(shù)據(jù)生成縱斷面圖。該工程用RTK測(cè)量,以50 m為間隔采集路中線(xiàn)上點(diǎn)的高程以及路中樁的高程,平面坐標(biāo)以理論值給出,數(shù)據(jù)結(jié)果如圖3所示。

圖3 縱斷數(shù)據(jù)文本

啟動(dòng)AutoCAD,加載ARX程序,如圖4所示。然后在CAD命令行輸入調(diào)用該程序的自定義命令“ZDT”,出現(xiàn)選擇數(shù)據(jù)文本的對(duì)話(huà)框(如圖5)。按“打開(kāi)”后,CAD命令行會(huì)提示用戶(hù)點(diǎn)選圖表生成位置,在CAD圖形窗口任意位置點(diǎn)取一點(diǎn),即可生成道路縱斷面圖如圖6所示。

圖4 加載ZhJzdtn.ARX

圖5 選擇數(shù)據(jù)文件對(duì)話(huà)框

圖6 生成道路縱斷面圖

所生成的道路縱斷面圖反映了沿路中線(xiàn)道路的起伏變化,符合本院的工作要求,無(wú)需再作過(guò)多的整飾,即可以作為提供給用戶(hù)的成果資料。

5 結(jié) 語(yǔ)

本文利用ObjectARX開(kāi)發(fā)環(huán)境所設(shè)計(jì)的程序,可以直接利用外業(yè)采集的數(shù)據(jù)自動(dòng)生成道路縱斷面圖,不僅準(zhǔn)確有效,符合工作要求,而且節(jié)省了工作人員的體力和腦力,提高了工作效率。

[1]張帆.ObjectARX開(kāi)發(fā)實(shí)例教程電子圖書(shū)[M].2007

[2]Charles McAuley著.李世國(guó)等譯.AutoCAD2000 Object-ARX編程指南[M].北京:機(jī)械出版社,2000

[3]王育堅(jiān).Visual C++面向?qū)ο缶幊探坛蘙M].北京:清華大學(xué)出版社,2003

Drawing Vertical Section of Road Based on ObjectARX

Zhou Jun
(Xi’an Institute of Surveying Mapping&Geotechnical Investigation,Xi’an 710054,China)

In order to improve work efficiency,a program based on ObjectARX provided by AutoCAD and C++Language has been compiled to automatic draw road profile.

ObjectARX;road profile

1672-8262(2010)04-139-04

P209

B

2009—12—20

周俊(1985—),男,碩士,主要從事工程測(cè)量工作。

猜你喜歡
程序數(shù)據(jù)庫(kù)
試論我國(guó)未決羈押程序的立法完善
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
數(shù)據(jù)庫(kù)
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
創(chuàng)衛(wèi)暗訪(fǎng)程序有待改進(jìn)
主站蜘蛛池模板: 91高清在线视频| 中文字幕中文字字幕码一二区| 视频二区国产精品职场同事| av一区二区人妻无码| 激情乱人伦| 欧洲高清无码在线| 激情无码视频在线看| 国产精品视频导航| 免费99精品国产自在现线| 97av视频在线观看| 欧美第二区| 爱爱影院18禁免费| 日本国产一区在线观看| 精品一区国产精品| 色噜噜综合网| 色网站免费在线观看| 亚洲国产一成久久精品国产成人综合| 欧美精品在线免费| 欧美精品亚洲二区| 亚洲人成影视在线观看| 91精品最新国内在线播放| 精品伊人久久久大香线蕉欧美| 欧洲成人在线观看| 色悠久久综合| 日本一区二区不卡视频| 午夜久久影院| 国产又色又刺激高潮免费看| 26uuu国产精品视频| 91精品国产自产在线观看| 2022国产无码在线| 午夜无码一区二区三区在线app| 国产成人亚洲欧美激情| 国产真实乱人视频| 亚洲成年人网| 一区二区三区国产精品视频| 波多野结衣一区二区三视频 | 中字无码精油按摩中出视频| 国产在线日本| 全部免费毛片免费播放| 在线观看国产精品日本不卡网| 999国产精品| 99视频精品在线观看| 亚洲国产精品国自产拍A| 欧美精品影院| 三上悠亚一区二区| 女人18毛片久久| 精品久久久久久中文字幕女| 欧美一级大片在线观看| 久久9966精品国产免费| 精品国产香蕉在线播出| 日韩美一区二区| 欧美成人区| 在线观看91精品国产剧情免费| 黄色污网站在线观看| 亚洲第一视频网| 成人韩免费网站| 韩国福利一区| 国产精品va| 色婷婷国产精品视频| 亚欧美国产综合| 尤物成AV人片在线观看| 免费啪啪网址| 国产精品亚洲综合久久小说| 亚洲精品无码不卡在线播放| 亚洲a级毛片| 国产第一色| 国产欧美日韩在线一区| 免费观看亚洲人成网站| 高清久久精品亚洲日韩Av| 色婷婷亚洲综合五月| 国产成人高清在线精品| 精品国产福利在线| 青草视频久久| 激情无码视频在线看| 欧美一级一级做性视频| 欧美成人看片一区二区三区 | 四虎精品国产AV二区| 国产精品一区不卡| 福利在线一区| 热久久这里是精品6免费观看| 亚洲最黄视频| 国产精品成人免费视频99|