亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于MapGIS區(qū)明碼文件的快速分類賦色方法

        2015-12-14 01:50:56唐桂彬
        測(cè)繪工程 2015年8期
        關(guān)鍵詞:區(qū)塊顏色分類

        唐桂彬,周 波,劉 帥

        (1.楊凌職業(yè)技術(shù)學(xué)院,陜西 楊凌712100;2.紅河學(xué)院 工學(xué)院,云南 蒙自 661100)

        MapGIS是面向國(guó)土、地質(zhì)、水利水電、巖土、測(cè)繪等行業(yè)的國(guó)產(chǎn)地理信息系統(tǒng)優(yōu)選平臺(tái)。但是MapGIS在拓?fù)湓靺^(qū)時(shí)對(duì)區(qū)塊的處理采取隨機(jī)賦色的方式,想要將區(qū)塊分類顯示,需要給每個(gè)區(qū)塊逐一修改圖形參數(shù),這樣使得操作過(guò)程繁瑣而且容易出錯(cuò)[1-5]。作者經(jīng)過(guò)實(shí)踐,摸索出一種快速分類賦色的新方法,這種方法主要是通過(guò)修改MapGIS明碼文件,同時(shí)結(jié)合Excel的VLOOKUP函數(shù)及VBA編程語(yǔ)言來(lái)實(shí)現(xiàn)。

        1 MapGIS區(qū)明碼文件結(jié)構(gòu)

        用MapGIS軟件的文件轉(zhuǎn)換功能可生成一種交換文件,可以通過(guò)Excel或是記事本對(duì)它進(jìn)行數(shù)據(jù)讀?。?-7],這種文件就是 MapGIS的明碼文件。點(diǎn)、線、區(qū)的明碼文件都是由文件頭和數(shù)據(jù)區(qū)組成。而區(qū)明碼文件的結(jié)構(gòu)最為復(fù)雜,除去文件頭之外,它總體上劃分成3部分,分別為弧段數(shù)據(jù)、節(jié)點(diǎn)數(shù)據(jù)和區(qū)數(shù)據(jù)[8-9]。表1給出了區(qū)明碼文件中弧段、節(jié)點(diǎn)和區(qū)的文件結(jié)構(gòu)。

        從表1中可知,各區(qū)塊的填充顏色由區(qū)參數(shù)信息行的首行第1個(gè)數(shù)據(jù)項(xiàng)決定,其數(shù)值代表著具體的顏色號(hào)。而這個(gè)值則是由軟件在拓?fù)湓靺^(qū)的時(shí)候隨機(jī)賦給的,所以各個(gè)區(qū)塊的填充顏色基本上不一樣,要使得屬性值一樣的區(qū)塊能夠按照同一種顏色填充,就必須先將各區(qū)的屬性信息引入到區(qū)明碼文件中,建立區(qū)圖形參數(shù)與其屬性值的一一對(duì)應(yīng)關(guān)系。

        2 自動(dòng)分類賦色的實(shí)現(xiàn)

        圖1為某區(qū)域1∶1萬(wàn)土地利用現(xiàn)狀圖,且已經(jīng)完成了拓?fù)湓靺^(qū)、圖斑注記、屬性錄入和屬性檢查等,其已經(jīng)包含一個(gè)“地類碼”屬性項(xiàng)。由圖1可以看出地類碼相同(如52)的區(qū)塊顯示不同的隨機(jī)顏色。

        表1 MapGIS的區(qū)明碼文件結(jié)構(gòu)

        圖1 生成隨機(jī)色的土地利用現(xiàn)狀圖

        2.1 建色表及生成Label點(diǎn)

        1)在“區(qū)顏色”表中建立地類碼與顏色號(hào)的關(guān)系,即一個(gè)地類碼只與一個(gè)的顏色值匹配,且分別將地類碼和顏色號(hào)置于表內(nèi)第1列和第2列,其中,地類碼字段將會(huì)起到一個(gè)分類索引的作用。

        2)在 MapGIS的區(qū)明碼文件中,除了區(qū)塊的ID、面積和周長(zhǎng)外,沒(méi)有記錄其他的屬性信息,同樣地,經(jīng)過(guò)分類賦色處理后新生成的明碼文件里面也只有默認(rèn)的3個(gè)屬性項(xiàng)。所以在編輯明碼文件之前,必須用原區(qū)文件來(lái)創(chuàng)建一個(gè)Label點(diǎn),把已經(jīng)錄好的屬性數(shù)據(jù)提取并保存下來(lái),方便后面給新的區(qū)文件賦屬性。

        2.2 獲取明碼文件和屬性表

        1)導(dǎo)出區(qū)明碼文件。進(jìn)入MAPGIS的“文件轉(zhuǎn)換”子系統(tǒng),利用其中的“MapGIS明碼格式”功能項(xiàng),輸出后綴名為WAP的區(qū)明碼文件。

        2)導(dǎo)出屬性表文件。再進(jìn)入MapGIS的“屬性庫(kù)管理”子系統(tǒng),輸出以“區(qū)屬性.DBF”命名的區(qū)屬性表文件。用Excel打開(kāi)該文件,表中應(yīng)包含ID、面積、周長(zhǎng)和用于分類的屬性字段(此例中分類字段為地類碼)。

        3)用Excel以逗號(hào)為分隔符號(hào)打開(kāi)區(qū)明碼文件。跳轉(zhuǎn)至區(qū)參數(shù)信息的首行,即第一個(gè)區(qū)的起始記錄位置,文件中A、I、J、K列分別表示區(qū)顏色、區(qū)ID號(hào)、面積和周長(zhǎng)(見(jiàn)圖2)。

        2.3 VLOOKUP函數(shù)修改區(qū)顏色號(hào)

        在區(qū)明碼表中,選中第2行,并以K列(周長(zhǎng))為關(guān)鍵字進(jìn)行數(shù)據(jù)的自動(dòng)篩選,篩選條件為K列值非空,篩選出來(lái)的數(shù)據(jù)行將會(huì)以I列(ID號(hào))升序排列,數(shù)據(jù)行數(shù)與原區(qū)文件中的圖斑個(gè)數(shù)一致,即一行數(shù)據(jù)代表對(duì)一個(gè)區(qū)塊的記錄(見(jiàn)圖3)。再將區(qū)明碼表和區(qū)屬性表對(duì)照,表內(nèi)關(guān)于區(qū)塊ID號(hào)、面積和周長(zhǎng)的各條記錄均相同。

        圖2 Excel中打開(kāi)的區(qū)明碼文件

        圖3 Excel中篩選出的數(shù)據(jù)

        Excel中的VLOOKUP函數(shù)能夠在表格或數(shù)組首列進(jìn)行縱向查找,并且返回當(dāng)前行中指定列序的數(shù)值。函數(shù)語(yǔ)法:VLOOKUP(查找值,查找區(qū)域,返回列序號(hào),邏輯值)[8],具體參看表2。VLOOKUP函數(shù)可以將明碼表分別與屬性表和顏色表進(jìn)行關(guān)聯(lián),先后引入地類碼值和顏色值到明碼表中,同時(shí)確保地類碼與ID號(hào)、地類碼與顏色號(hào)的對(duì)應(yīng)。

        先于表中找一列空白位置,比如L列,在此列被篩選出來(lái)的各個(gè)單元格內(nèi)編寫(xiě)公式"=VLOOKUP(I∶I,區(qū)屬性 .DBF!$A∶$D,4,0)",其中,第1項(xiàng)查找值為一整列數(shù)值,即區(qū)明碼表中的I列(區(qū)ID號(hào))值;第2項(xiàng)指定搜索范圍控制在屬性表的A、B、C、D 4列中,即在這個(gè)區(qū)域內(nèi)尋找與I列匹配的同行數(shù)值;第3項(xiàng)給定列序號(hào)4,即取同行第4列值,這列值正好指代的是地類碼;第4項(xiàng)設(shè)定邏輯值0。執(zhí)行VLOOKUP函數(shù)后,地類碼值即可被引入到區(qū)明碼表中,如圖4所示。

        表2 VLOOKUP函數(shù)

        接下來(lái)在區(qū)明碼表的A列位置引入?yún)^(qū)顏色表中與地類碼匹配的顏色號(hào),因?yàn)锳列值控制的是各個(gè)區(qū)塊的填充顏色。類似地,在A列被篩選出來(lái)的各個(gè)單元格內(nèi)編寫(xiě)另一公式"=VLOOKUP(L∶L,[區(qū)顏色.xls]Sheet1!$A∶$B,2,0)",這時(shí)各區(qū)塊原來(lái)的顏色值被修改掉,取而代之的是從區(qū)顏色表中引進(jìn)來(lái)的與地類碼匹配的顏色號(hào),而不同的區(qū)塊有可能被賦上相同的顏色,這是由其地類碼是否具有同一性決定的(見(jiàn)圖5)。此處,第1項(xiàng)查找值也是一列數(shù)值,即區(qū)明碼表中的L列(地類碼)值;第2項(xiàng)指定搜索范圍控制在顏色表的A、B列,即在這個(gè)區(qū)域內(nèi)尋找與L列匹配的同行數(shù)值;第3項(xiàng)給定列序號(hào)2,即取同行第2列值,這列值正好指代的是顏色值;第4項(xiàng)仍然設(shè)定邏輯值0。

        圖4 地類碼的引入

        圖5 區(qū)塊顏色的修改

        區(qū)塊顏色修改完畢后,取消掉明碼表中的自動(dòng)篩選,使所有數(shù)據(jù)行全部展開(kāi),將顏色號(hào)所在的A列內(nèi)容由公式轉(zhuǎn)換為數(shù)值形式,并清空L列(地類碼),將文件以CSV格式另存后再轉(zhuǎn)換為DAT數(shù)據(jù)格式。

        圖6 VBA程序?qū)崿F(xiàn)流程圖

        2.4 利用VBA程序?qū)崿F(xiàn)自動(dòng)區(qū)分類填色

        為了進(jìn)一步提高工作效率,在明確了手動(dòng)分類填色基本方法后,可將整個(gè)過(guò)程編寫(xiě)成VBA程序代碼,整個(gè)程序流程如圖6所示。

        程序先從區(qū)屬性表中關(guān)聯(lián)地類碼,再?gòu)念伾碇幸肱c地類碼對(duì)應(yīng)的顏色號(hào),實(shí)現(xiàn)區(qū)的自動(dòng)賦色。下面給出了部分實(shí)現(xiàn)代碼:

        完成程序編寫(xiě)后,可創(chuàng)建Excel的個(gè)人宏工作簿,多次執(zhí)行可對(duì)不同的區(qū)明碼文件進(jìn)行操作。圖7給出了程序執(zhí)行結(jié)果。

        圖7 程序運(yùn)行結(jié)果

        2.5 區(qū)明碼文件的恢復(fù)

        1)前述操作得到的是一個(gè)由CSV格式轉(zhuǎn)換而來(lái)的DAT數(shù)據(jù)文件,區(qū)塊分類賦色的結(jié)果僅保存在這個(gè)文件當(dāng)中,而區(qū)明碼文件的結(jié)構(gòu)內(nèi)容和導(dǎo)出時(shí)一樣,沒(méi)有發(fā)生改變,仍是標(biāo)準(zhǔn)的MapGIS區(qū)明碼文件格式,其中的區(qū)塊顏色也仍然是隨機(jī)色。因此,用記事本同時(shí)打開(kāi)區(qū)明碼文件和DAT數(shù)據(jù)文件,用DAT文件中的區(qū)數(shù)據(jù)部分替換掉明碼文件中的區(qū)數(shù)據(jù)部分,再刪除與明碼文件格式不符的多余逗號(hào),保存并退出程序,這時(shí)得到才是進(jìn)行過(guò)分類賦色處理的、格式標(biāo)準(zhǔn)的區(qū)明碼文件。

        2)在“文件轉(zhuǎn)換”子系統(tǒng)中將區(qū)明碼文件轉(zhuǎn)換成區(qū)文件,導(dǎo)入到編輯子系統(tǒng)中后可以看到分類賦色的效果,如圖8所示,同類型的地塊顯示的是同一種顏色。然而,在這個(gè)區(qū)文件中沒(méi)有除默認(rèn)字段外的其他任何屬性,這就需要找到之前備份的Label點(diǎn),通過(guò)合并Label點(diǎn)的方式來(lái)恢復(fù)屬性數(shù)據(jù)。

        3 結(jié) 論

        1)該操作方法既能夠達(dá)到圖形對(duì)象分類符號(hào)化的目的,又能夠保持原始區(qū)文件的完整性,使它不會(huì)因?yàn)檫B串的編輯處理而受到破壞。

        圖8 分類賦色后的土地利用現(xiàn)狀圖

        2)該方法以MapGIS的交換文件作為編輯處理的對(duì)象,結(jié)合Excel的VLOOKUP函數(shù)及VBA編程語(yǔ)言,能達(dá)到使區(qū)塊快速分類賦色的效果,不僅效率較高,而且不會(huì)出現(xiàn)遺漏圖斑的情況,在某種程度上保證了作圖的質(zhì)量。特別是圖幅數(shù)量較大,圖件復(fù)雜程度較高時(shí),利用VBA程序來(lái)實(shí)現(xiàn)自動(dòng)分類填色更顯得方便、準(zhǔn)確。

        3)MapGIS明碼文件還可以應(yīng)用于其他方面,比如面積的量算和統(tǒng)計(jì)、圖形數(shù)據(jù)的提取及飛點(diǎn)的清除等,這對(duì)于解決一些實(shí)際問(wèn)題是非常有幫助的。

        [1]孫中原,李永樹(shù).基于MapGIS的土地儲(chǔ)備信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪工程,2012,21(4):78-81.

        [2]劉美松,吳新林,王滿春.充分利用MAPGIS的分析功能提高作圖效率[J].貴州地質(zhì),1998,15(4):377-380.

        [3]汪玉瓊,趙傳明.MAPGIS制圖經(jīng)驗(yàn)二則[J].地礦測(cè)繪,2003,19(2):39-40.

        [4]孫國(guó)慶,溫迎慶.基于 MAPGIS明碼文件實(shí)現(xiàn)區(qū)域自動(dòng)填充的實(shí)踐[J].西部探礦工程,2007(7):97-98.

        [5]張印廷,何苗,張曉棠,等.MAPGIS明碼文件的研究與應(yīng)用[J].科技資訊,2009(16):9.

        [6]段青梅,龍文華,丁天才,等.基于 MAPGIS明碼文件的繪圖轉(zhuǎn)換系統(tǒng)開(kāi)發(fā)及應(yīng)用[J].物探與化探,2005,29(1):50-52.

        [7]王榮亮,曹代勇,戈連柱.基于 MAPGIS明碼文件的CBM組件開(kāi)發(fā)與應(yīng)用[J].中國(guó)礦業(yè)大學(xué)學(xué)報(bào),2002,31(4):392-395.

        [8]王星捷.MapGIS點(diǎn)文件數(shù)據(jù)分析與讀取實(shí)驗(yàn)[J].測(cè)繪科學(xué),2013,38(1):112-115.

        [9]葉志榮.MAPGIS點(diǎn)文件數(shù)據(jù)自動(dòng)導(dǎo)入CARIS的研究[J].海洋測(cè)繪,2007,27(6):68-70.

        猜你喜歡
        區(qū)塊顏色分類
        分類算一算
        區(qū)塊鏈:一個(gè)改變未來(lái)的幽靈
        科學(xué)(2020年5期)2020-11-26 08:19:12
        區(qū)塊鏈:主要角色和衍生應(yīng)用
        科學(xué)(2020年6期)2020-02-06 08:59:56
        分類討論求坐標(biāo)
        區(qū)塊鏈+媒體業(yè)的N種可能
        數(shù)據(jù)分析中的分類討論
        讀懂區(qū)塊鏈
        教你一招:數(shù)的分類
        認(rèn)識(shí)顏色
        特殊顏色的水
        国产三级黄色的在线观看| 亚洲av午夜福利精品一区二区| 亚洲精品黑牛一区二区三区| 免费av在线国模| 精品女同av一区二区三区| 日本一级特黄aa大片| 国产揄拍国产精品| 熟女性饥渴一区二区三区| 亚洲每天色在线观看视频| 日本加勒比精品一区二区视频| 99久久亚洲精品日本无码| 77777亚洲午夜久久多人| 色综合999| 亚洲精品一区二区成人精品网站| 私人vps一夜爽毛片免费| 精品人妻潮喷久久久又裸又黄| 吃下面吃胸在线看无码| 亚洲一区二区三区重口另类| 正在播放老肥熟妇露脸| 伊伊人成亚洲综合人网7777| 日本av在线精品视频| 夜夜骚久久激情亚洲精品| 亚洲国产午夜精品理论片在线播放 | 精品亚洲一区二区区别在线观看| 久久亚洲私人国产精品va| 国产精品无码Av在线播放小说| 久久久99精品国产片| 最新国产精品拍自在线观看| 国产精品久久久久久久免费看| 一区二区三区婷婷在线| 亚洲国产精品激情综合色婷婷| 国精品人妻无码一区二区三区性色 | 天堂中文а√在线| 国产精品免费久久久久影院| 日本一区二区三区啪啪| 亚洲香蕉av一区二区三区| 久久亚洲私人国产精品va| 欧美刺激午夜性久久久久久久| 人妻少妇偷人精品视频| 看全色黄大色黄大片 视频| 亚洲V日韩V精品v无码专区小说|