• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    房屋入庫屬性的批量修改

    2013-08-06 15:26:08任航科齊宇
    城市勘測 2013年1期
    關(guān)鍵詞:圖面編組樓層

    任航科,齊宇

    (福建省國土測繪院,福建 廈門 362000)

    1 引言

    在福建省某市的近40 km2的1∶500數(shù)字地形圖入庫項目中,其中一個很重要且工作量很大的工作就是要對居民地進行入庫前的屬性修改。要保證地形圖的房子線條的屬性和房屋層次注記的屬性相吻合,并且執(zhí)行CASS軟件的編組命令后,房屋線條和其對應(yīng)層次注記等都在同一個編組內(nèi)。這個項目房屋的所占的比例達80%以上,由于前期并未考慮到入庫的要求,新測的圖都是沒有考慮屬性這一塊,作業(yè)過程中直接采取復(fù)制線條或者層次注記等,老圖由于是以前其他軟件內(nèi)業(yè)成圖的,所以房屋的內(nèi)部屬性和入庫標(biāo)準(zhǔn)更不符合了。筆者以CASS軟件為基礎(chǔ),AutoLISP工具為手段,編寫程序?qū)ζ溥M行批量處理,實現(xiàn)了對房屋屬性進行修改并最終達到了入庫要求。

    2 程序開發(fā)的基礎(chǔ)和設(shè)計

    2.1 居民地線條,房屋結(jié)構(gòu)層次注記對應(yīng)的內(nèi)部屬性組

    由于本項目重點在于房子,主要是對房屋進行最后分屬性入庫,所以對房子的屬性要求很嚴(yán)格,要求房屋的線條屬性要和其對應(yīng)的房屋注記相對應(yīng)。房屋編碼采用CASS軟件的內(nèi)部編碼。部分編碼的具體對應(yīng)要求如表1所示。

    房屋內(nèi)部屬性編碼對應(yīng)關(guān)系 表1

    續(xù) 表1

    由于房子線條的內(nèi)部編碼以及表示該房屋的結(jié)構(gòu)注記,和樓層注記的編碼都存儲在線條的內(nèi)部擴展屬性中。如下面是對一個混3的房子線條的CASS內(nèi)部屬性編組。

    其中(-3("SOUTH"(1000."141161")(1040.3.0))))這一個屬性表中的141161代表的就是混房,3.0為房屋樓層注記。其中的(10250.08277.2317)這幾組屬性碼為這個封閉多邊形的各個節(jié)點的坐標(biāo)數(shù)據(jù)。

    房屋結(jié)構(gòu)注記和樓層注記錄的漢字對應(yīng)的內(nèi)部編碼組如下:

    其中的(1."混")就是該房屋的結(jié)構(gòu)注記組屬性,(1."3")為該房屋的樓層注記組屬性。

    2.2 居民地處理前的圖形質(zhì)量檢查

    不能保證所有的房子都達到了線條內(nèi)部屬性和圖面注記的相統(tǒng)一。在圖面上有個別情況,如前期檢查不是很仔細或者其他原因?qū)е戮用竦刈⒂洸辉诜课菥€條的閉合線以內(nèi),導(dǎo)致利用程序不能提取到相對應(yīng)的結(jié)構(gòu)注記信息賦值給線條。為了避免這種情況的發(fā)生,保證整個圖面經(jīng)過處理后的居民地100%的正確。我們可以通過以下兩個方面進行處理。

    (1)通過編寫程序檢查線條內(nèi)部是否有對應(yīng)的注記信息

    參考上面房子線條的內(nèi)部屬性編碼組,我們通過其中的((0."LWPOLYLINE")(8."JMD")(100."Ac-DbPolyline")),這幾個條件的聯(lián)合對整個圖面的居民地進行搜索,再通過LISP命令提取出房屋線條的每個端點坐標(biāo),形成一個點列表。通過這點列表利用LISP的選擇命令來框選其中的文字并形成一個結(jié)果值,通過判斷結(jié)果值是否為空就可以判斷出是否房屋線條內(nèi)部是否包含文字。對于閉合線內(nèi)部缺少注記文字的我們通過上面的點列表計算該房屋閉合線的中心點坐標(biāo),并在該坐標(biāo)上生成點錯誤標(biāo)記來達到檢查的目的。

    (2)通過ArcGIS進行拓撲檢查

    把CASS中的房屋線條導(dǎo)入到ArcGIS中構(gòu)面,再把CASS中的房屋注記信息導(dǎo)入到ArcGIS中轉(zhuǎn)換成點,通過點-面拓撲規(guī)則中的“面包含點”和“點在面內(nèi)”生成拓撲檢查文件,再對照CASS文件進行相對應(yīng)的修改。

    通過上面兩個步驟的結(jié)合應(yīng)用可以保證房屋注記的正確性。

    2.3 房屋線條屬性和其對應(yīng)的結(jié)構(gòu)注記進行關(guān)聯(lián)

    要將房屋線條的屬性同其對應(yīng)的結(jié)構(gòu)屬性進行關(guān)聯(lián)處理,并最終把線條和文字進行編組。我們可以通過LISP程序提取房屋線條對應(yīng)的各個頂點的坐標(biāo)形成一個點列表。然后通過這個點列表利用LISP中的ssget命令來進行框選其范圍內(nèi)的結(jié)構(gòu)層次文字信息。通過獲取的結(jié)構(gòu)層次信息來改變房屋線條的內(nèi)部編碼組中對應(yīng)的結(jié)構(gòu)和樓層注記編碼組,最后通過更新房屋線條的編碼組就可以達到線條和屬性的相對應(yīng)。

    基于上面的構(gòu)思,為了提取到相對應(yīng)的房屋結(jié)構(gòu)和樓層注記信息。我們可以先編寫程序?qū)D面上一層以上房屋的層次和樓層注記信息分開顯示,以便于提取和便于程序中對房屋層次的判斷。如“混2”,這兩個字分開在圖面上顯示,也就是這兩個字可以單獨選擇,不能選擇的時候是連接在一起的。這個可以根據(jù)文字的長度來加以分割,一個漢字的長度是2,我們可以在選中文字后,按其長度取其前兩位即為房屋結(jié)構(gòu)注記,從其長度為3開始取其以后部分即為房屋樓層注記。對于一層的房屋可以在程序中通過判斷注記的長度來進行區(qū)分,如果長度小于等于2則不需要進行處理,大于2的才需要進行分分開顯示處理。

    編寫程序提取房屋線條的內(nèi)部屬性編碼表,提取該房屋線條各頂點坐標(biāo)組成列表,利用這個坐標(biāo)集來框選該房屋線條內(nèi)部的房屋層次注記內(nèi)容,通過判斷提取到注記信息的個數(shù)來判斷該房屋是樓層是否大于1層,通過LISP的numberp函數(shù)判斷提取到的注記內(nèi)容是否為數(shù)字來對結(jié)構(gòu)注記和樓層注記進行區(qū)分。根據(jù)提取到的注記內(nèi)容對房屋線條的內(nèi)部屬性中房屋結(jié)構(gòu)注記和樓層注記的編碼組進行重新組合,并對原編碼組進行替換,對圖元編碼組進行更新,最后通過CASS軟件中的重新生成命令來達到線條內(nèi)部屬性和圖面注記的相互統(tǒng)一以及線條和文字的相互編組。

    2.4 最終圖形質(zhì)量的檢查

    有的時候由于注記沒有得到徹底的檢查修改導(dǎo)致個別的房屋線條沒辦法處理,程序處理的時候會越過不處理。所以在主編組程序中可以考慮加入改變顏色的程序代碼行,通過CAD的Change函數(shù)來對處理過的房屋線條進行改變顏色。這樣通過整個圖面處理過后,可以很方便的通過顏色的區(qū)分來對沒有處理過的房屋進行檢查單獨處理。

    3 部分程序的原代碼

    由于文字注記炸開程序和居民地注記檢查程序相對較為簡單,下來就將房屋編組的部分程序簡單羅列如下:

    在整個圖面中搜索居民地信息,并進入循環(huán)進行單個處理。

    4 具體處理流程

    (1)基礎(chǔ)數(shù)據(jù)準(zhǔn)備

    先把需要處理的數(shù)字化地形圖轉(zhuǎn)換到CASS軟件中,除了JMD層外其他層全部刪除掉了。然后就是用編寫的注記檢查命令檢查沒有注記的房屋線條,并進行整改處理。接下來把處理好的居民地線條導(dǎo)入到ArcGIS中構(gòu)面,再把居民地注記導(dǎo)入到ArcGIS軟件中轉(zhuǎn)換成點,通過 ArcGIS中的“面包含點”和“點在面內(nèi)”對居民地和注記進行拓撲處理,根據(jù)拓撲處理的結(jié)果相應(yīng)改正CASS圖件,以保證居民地線條和其對應(yīng)文字注記相統(tǒng)一。

    (2)運行房屋層次分割命令,對JMD層中的房屋結(jié)構(gòu)注記和樓層注記進行分割處理,轉(zhuǎn)換后的效果如下:

    圖1 轉(zhuǎn)換前文字注記

    圖2 轉(zhuǎn)換后文字注記

    (3)運行居民編組修改的程序?qū)Ψ课菥€條進行處理,根據(jù)居民地線條內(nèi)部的居民地注記來修改房屋線條的內(nèi)部屬性編碼,繼而更新整個居民地線條的內(nèi)部編碼屬性組。

    (4)在CASS軟件中利用快速選擇對JMD層中的文字注記進行全部刪除。只留下居民地線條。

    (5)利用CASS軟件中的“地物編輯”菜單下的“重新生成”命令對整個項目的居民地進行重新生成,這樣每個居民地其對應(yīng)的文字注記會根據(jù)其內(nèi)部編碼進行自動顯示,并且和房物線條在同一個編組內(nèi)。效果圖如圖3:

    圖3 最終處理后的房屋線

    5 小結(jié)

    按照上面的步驟,通過編寫檢查程序和ArcGIS拓撲檢查兩道工序保證了原始數(shù)據(jù)的質(zhì)量。對于檢查整改好的數(shù)據(jù)只需要運行命令對其進行編組處理,即可輕松的使這個項目中90%以上的工作得以輕松解決,使得原本單調(diào)乏味的工作變得輕松,不需要再去面對好幾十萬棟房屋一個一個地改過去,因此不僅節(jié)約了時間,更節(jié)省了人力,物力,財力,保證了整個工程的質(zhì)量和進度。

    [1]黎新懿,趙景亮.用Visual LISP開發(fā)AutoCAD 2004應(yīng)用程序[M].北京:科學(xué)出版社,2003.

    [2]周明,董仁揚.Visual LISP程序設(shè)計及其應(yīng)用教程[M].上海:上??茖W(xué)技術(shù)文獻出版社,2008.

    [3]蔣輝,潘慶林,劉三枝.數(shù)字化測圖技術(shù)及應(yīng)用[M].北京:國防工業(yè)出版社,2006.

    [4]湯國安,楊昕.ArcGIS地理信息系統(tǒng)空間分析實驗教程[M].北京:科學(xué)出版社,2006.

    [5]吳靜,何必,李海濤.ArcGIS 9.3 Desktop地理信息系統(tǒng)應(yīng)用教程[M].北京:清華大學(xué)出版社,2008.

    猜你喜歡
    圖面編組樓層
    利用樓層廢水勢能的發(fā)電裝置
    基于靈活編組的互聯(lián)互通車載電子地圖設(shè)計及動態(tài)加載
    電梯的升與降
    讀者(2019年2期)2019-01-05 09:09:44
    自動扶梯樓層板周邊環(huán)境的安全防護
    帶狀地形圖斷面數(shù)據(jù)采集的程序化實現(xiàn)
    基于生產(chǎn)實踐若干需求完善大比例尺地形圖圖面表達方式的探討
    專題地圖圖面要素自動配置方法的研究
    測繪工程(2017年10期)2017-08-31 14:32:01
    表觀對稱的輪廓編組算法
    集中管理模式下編組場無線通信方案的選擇
    樓層數(shù)影響下的樓板有效寬度研究
    都匀市| 安平县| 蚌埠市| 宾阳县| 永定县| 西宁市| 渭南市| 东台市| 土默特右旗| 察雅县| 镇赉县| 饶平县| 蒙山县| 双流县| 额敏县| 清原| 乌兰察布市| 崇阳县| 花垣县| 通许县| 卫辉市| 库伦旗| 庆安县| 奉化市| 庐江县| 武城县| 开封县| 保定市| 兴和县| 城市| 黄浦区| 金坛市| 柏乡县| 宜兰市| 剑川县| 南雄市| 西城区| 澄迈县| 于田县| 台山市| 拜城县|