" />
所屬欄目:計(jì)算機(jī)信息管理論文 發(fā)布日期:2011-06-07 17:32 熱度:
摘要:在傳統(tǒng)的測繪方式中,由于受成圖方式和制圖軟件的限制,一些數(shù)字化成果的高程數(shù)據(jù)沒有屬性,給數(shù)據(jù)處理和利用造成了一定的麻煩。本文通過利用計(jì)算機(jī)程序解決了這一問題,在實(shí)際應(yīng)用中效果較好。
關(guān)鍵詞:高程;屬性;程序;地形圖
0、引言
目前,測繪生產(chǎn)部門大多采用AutoCAD來生成和管理地形圖數(shù)據(jù),在CAD中,數(shù)據(jù)一般是按照地形要素分層存放的。因?yàn)楦鲉挝焕L圖軟件的不同,在生成*.DWG圖時(shí)高程點(diǎn)的圖層和點(diǎn)的屬性也不同,有些單位因?yàn)檐浖南拗疲话惆迅叱套⒂浿皇前醋⒂浳谋驹贑AD中進(jìn)行組織和管理。在這種組織方式下,圖形和屬性之間的聯(lián)系僅體現(xiàn)在平面位置上的靠近,這就割裂了圖形和屬性之間的關(guān)聯(lián),造成了高程數(shù)據(jù)無法直接讀取和屬性提取。主要缺陷在于:(1)在更換圖的比例尺時(shí)候很難根據(jù)實(shí)際情況均勻的刪除高程注記。(2)很難自動(dòng)提取異常高程。(3)這種高程數(shù)據(jù)做不了數(shù)字高程模型(DEM)。(4)做不了GIS的屬性數(shù)據(jù)。(5)在做土方量計(jì)算的時(shí)候,這種高程數(shù)據(jù)計(jì)算起來相當(dāng)麻煩。
在分析了不同時(shí)期用不同軟件做出的數(shù)字化地形圖之后,我找到了一種好的方法,可以自動(dòng)刪除多余的高程注記,使高程點(diǎn)根據(jù)實(shí)際情況均勻分布,可以根據(jù)用戶的輸入條件自動(dòng)刪除異常高程點(diǎn),可以把沒有屬性的高程點(diǎn)加入屬性,方便做土方量計(jì)算和數(shù)字高程模型,可以生成GIS需要的三維高程數(shù)據(jù)文本文件。
1、實(shí)現(xiàn)原理
首先獲取高程點(diǎn)所在的圖層名稱,其次獲取高程點(diǎn)的屬性,一般為POINT,LWPOLYLINE,CIRCLE,BLOCK等,根據(jù)高程點(diǎn)的平面坐標(biāo)位置獲取離此高程點(diǎn)最近的數(shù)字文本注記,判斷是否是高程值,建立文本文件,依次寫入點(diǎn)號(hào)、X坐標(biāo)、Y坐標(biāo)、Z坐標(biāo)(也就是離此高程點(diǎn)最近的數(shù)字文本注記)。然后刪除所有的高程點(diǎn),等待用戶輸入:(1)高程點(diǎn)之間的最小距離、(2)用戶認(rèn)為異常高程點(diǎn)的范圍值,重新繪制帶有屬性的三維高程點(diǎn),程序流程見圖一。
圖一:程序框圖
2、程序的實(shí)現(xiàn)
開發(fā)CAD的語言有很多,常用的有VLISP、VBA、ARX等,可以根據(jù)程序要求選擇一種適合的語言,本程序并不復(fù)雜,而且考慮到安全問題,所以選用VLISP語言進(jìn)行開發(fā),為了減少篇幅,只給出關(guān)鍵部分的代碼,如下所述。
(1)獲取地形圖上的高程點(diǎn),這里只給出簡單代碼:
(setqss1(ssget'((-4."<OR")
(-4."<AND")
(0."LWPOLYLINE")
(40.0.125)
(-4."AND>")
(-4."<AND")
(0."INSERT")
(8."GCD")
(-4."AND>")
(-4."OR>")
…
…
)
)
)
(2)根據(jù)選擇集中的高程點(diǎn)屬性的不同,分別建立區(qū)域選擇集,根據(jù)地形圖比例尺的不同,建立的區(qū)域選擇集也不同,簡單的語句為:
(ssget"W"(list…)(list…)'((0."TEXT")))
(3)寫入文件的語句為
(write-line(strcat…))
(4)建立完高程數(shù)據(jù)文件,就要根據(jù)用戶的輸入重新繪制高程點(diǎn)了,這里是本程序的核心部門,主要思路是:首先等待用戶輸入要繪制高程點(diǎn)間的最小距離和異常值的范圍,然后從剛生成的文件里提取高程數(shù)據(jù),判斷是不是異常高程,如果不是則在CAD窗口里繪制該高程點(diǎn),讀下一行數(shù)據(jù),如果該數(shù)據(jù)離剛剛繪制的高程點(diǎn)的距離滿足用戶要求而且不是異常高,則繪制。讀下一行,如果該數(shù)據(jù)離前面已經(jīng)繪制的兩個(gè)高程點(diǎn)的距離滿足用戶要求而且不是異常高,則繪制,依次例推…。
主要代碼為:
(setqpf(open"d:\文件夾\txz.txt""r"))
(setqi0)
(setqreco(read-linepf))
(whilereco
(setqsxb(flzreco))
(setqpt(list(atof(nth1sxb))(atof(nth2sxb))(atof(nth3sxb))))
(set(read(strcat"NUM["(rtosi)"]"))pt)
(setqreco(read-linepf))
(setqi(+1i)))
(closepf)
(setqi(-i1))
(setq j0
t0
m0
a0)
(set(read(strcat"NUM1["(rtos0)"]"))(eval(read(strcat"NUM["(rtos0)"]"))))
(while(<ji)
(while(<tm)
(if(>(distance(list(car(eval(read(strcat"NUM["(rtosj)"]"))))(cadr(eval(read(strcat"NUM["(rtosj)"]")))))(eval(read(strcat"NUM1["(rtost)"]"))))del_dist)
(setqa(1+a)))
(setqt(1+t)))
(if(=am)
(progn
(set(read(strcat"NUM1["(rtosm)"]"))(eval(read(strcat"NUM["(rtosj)"]"))))
(setqm(1+m))))
(setqa0t0)
(setqj(1+j)))
(setqi0)
(while(<im)
(command"insert""500"(eval(read(strcat"NUM1["(rtosi)"]")))blcblc"")
(command"text"(polar(eval(read(strcat"NUM1["(rtosi)"]")))0blc)blc0(rtos(caddr(eval(read(strcat"NUM1["(rtosi)"]"))))2xsd)"")
(setqi(1+i)))))
(princ))
其中flz是一個(gè)分解字符串生成表的函數(shù),由于節(jié)省篇幅,這里沒有給出具體代碼。
3、關(guān)于程序的一些說明
不同的地形圖的高程點(diǎn)的屬性可能不同,應(yīng)根據(jù)實(shí)際情況,判斷高程點(diǎn)的平面坐標(biāo)和高程坐標(biāo),有的時(shí)候判斷高程坐標(biāo)的時(shí)候不能只根據(jù)高程點(diǎn)的平面坐標(biāo)到文字的距離進(jìn)行簡單的判斷,而且在處理數(shù)據(jù)量比較大的地形圖時(shí),要考慮程序的優(yōu)化問題,使它占用計(jì)算機(jī)內(nèi)存最小,而且隨時(shí)的釋放占用的內(nèi)存,以達(dá)到程序運(yùn)行穩(wěn)定,處理速度快,出錯(cuò)率低。
參考文獻(xiàn):
[1]劉國鈞,陳紹業(yè),王鳳翥.圖書館目錄[M].北京:高等教育出版社,1957
文章標(biāo)題:基于AutoCAD的無屬性的高程圖形數(shù)據(jù)的處理
轉(zhuǎn)載請(qǐng)注明來自:http://www.anghan.cn/fblw/dianxin/xinxiguanli/9316.html
攝影藝術(shù)領(lǐng)域AHCI期刊推薦《Phot...關(guān)注:106
Nature旗下多學(xué)科子刊Nature Com...關(guān)注:152
中小學(xué)教師值得了解,這些教育學(xué)...關(guān)注:47
2025年寫管理學(xué)論文可以用的19個(gè)...關(guān)注:192
測繪領(lǐng)域科技核心期刊選擇 輕松拿...關(guān)注:64
及時(shí)開論文檢索證明很重要關(guān)注:52
中國水產(chǎn)科學(xué)期刊是核心期刊嗎關(guān)注:54
國際出書需要了解的問題解答關(guān)注:58
合著出書能否評(píng)職稱?關(guān)注:48
電信學(xué)有哪些可投稿的SCI期刊,值...關(guān)注:66
通信工程行業(yè)論文選題關(guān)注:73
SCIE、ESCI、SSCI和AHCI期刊目錄...關(guān)注:121
評(píng)職稱發(fā)論文好還是出書好關(guān)注:68
復(fù)印報(bào)刊資料重要轉(zhuǎn)載來源期刊(...關(guān)注:51
英文期刊審稿常見的論文狀態(tài)及其...關(guān)注:69
Web of Science 核心合集期刊評(píng)估...關(guān)注:59
電子信息論文范文
智能科學(xué)技術(shù)論文 廣播電視論文 光電技術(shù)論文 計(jì)算機(jī)信息管理論文 計(jì)算機(jī)網(wǎng)絡(luò)論文 計(jì)算機(jī)應(yīng)用論文 通信論文 信息安全論文 微電子應(yīng)用論文 電子技術(shù)論文 生物醫(yī)學(xué)工程論文 軟件開發(fā)論文
SCI期刊分析
copyright © www.anghan.cn, All Rights Reserved
搜論文知識(shí)網(wǎng) 冀ICP備15021333號(hào)-3