劉 兵,卓 云
(1.四川魚(yú)鱗圖信息技術(shù)股份有限公司,四川 成都 610041)
自定義權(quán)重查詢地塊空間四至的方法及實(shí)現(xiàn)
劉 兵1,卓 云1
(1.四川魚(yú)鱗圖信息技術(shù)股份有限公司,四川 成都 610041)
基于C#語(yǔ)言及VS2012 IDE編譯工具,采用WPF的界面,用戶根據(jù)地塊空間之間緊湊程度和距離,在界面自定義權(quán)重,系統(tǒng)根據(jù)自定義的權(quán)重計(jì)算目標(biāo)地塊3個(gè)指標(biāo)的綜合總評(píng)分值,判斷某方向范圍內(nèi)最高分地塊為當(dāng)前地塊的一個(gè)四至地塊。程序處理過(guò)程中還包括地塊外框篩選及度量標(biāo)準(zhǔn)化。
四至查找;WPF;C#;開(kāi)源
在土地業(yè)務(wù)處理中,查找四至是業(yè)務(wù)模塊需要解決的問(wèn)題之一[1-4]。目前查找四至的方法有很多種,包括平移邊框查找、邊線平移查找、緩沖查找等,但準(zhǔn)確率不高,其原因是受地塊之間緊密程度、距離、自身大小、形狀等因素的限制,怎樣查找到最標(biāo)準(zhǔn)的四至地塊是目前需要研究的一個(gè)課題。本文基于已有的開(kāi)發(fā)平臺(tái)及開(kāi)源接口,構(gòu)建了自定義權(quán)重打分統(tǒng)計(jì)查找四至的方法,并進(jìn)行了程序?qū)崿F(xiàn)。由于可以調(diào)整權(quán)重,得到的結(jié)果就偏向于輸入的參數(shù),準(zhǔn)確率較高。
本文主要依據(jù)Microsoft Visual Studio 2012的IDE平臺(tái)、4.0版本的Framework、WPF的界面及C#語(yǔ)言構(gòu)建了插件式桌面程序[5-9]。后臺(tái)數(shù)據(jù)庫(kù)采用支持空間數(shù)據(jù)的SQLite,空間數(shù)據(jù)讀取及處理采用了NetTopologySuite開(kāi)源地理圖形接口(簡(jiǎn)稱NTS接口)。NTS接口簡(jiǎn)單易用,可直接使用對(duì)應(yīng)的DLL文件,本文主要對(duì)NTS進(jìn)行二次封裝,可直接讀取Shapefile文件,也可以轉(zhuǎn)換獲取SQLite中的空間數(shù)據(jù)及記錄,符合當(dāng)前業(yè)務(wù)需要。
本文采取自定義權(quán)重的評(píng)分方法,所以需要對(duì)應(yīng)的指標(biāo)來(lái)參與計(jì)算。指標(biāo)的選取方法是抽取與查找四至相關(guān)的幾個(gè)要素指標(biāo),分別是對(duì)應(yīng)截取范圍內(nèi)地塊的面積、截取地塊的中心點(diǎn)到目標(biāo)地塊邊框的橫軸與縱軸坐標(biāo)間距離這3個(gè)相關(guān)要素。截取用來(lái)計(jì)算的地塊集合如圖1所示。截取地塊的3個(gè)指標(biāo)如圖2所示。
圖1中,目標(biāo)地塊每個(gè)方向的地塊集合通過(guò)目標(biāo)地塊的邊框Envolope矩形包絡(luò)線往西邊(左邊)平移,在平移后的矩形邊框內(nèi)重新截取相交地塊,獲得新的地塊集合,新的集合參與3個(gè)指標(biāo)的運(yùn)算。其他東南北3個(gè)方向作同樣的平移處理,在當(dāng)前的矩形區(qū)域下,獲取范圍內(nèi)的矩形,用于計(jì)算當(dāng)前方向四至的地塊集合。②分別為邊框內(nèi)地塊D截取部分中心點(diǎn)到邊框線、目標(biāo)地塊中心點(diǎn)水平線的距離,指標(biāo)的選取從統(tǒng)計(jì)上來(lái)說(shuō)都與計(jì)算四至邏輯相關(guān),且相關(guān)性較大。其他相交的地塊作同樣處理。
圖1 西至包絡(luò)線平移截取
圖2 截取計(jì)算地塊邏輯示意圖
選定好指標(biāo)、搭設(shè)好開(kāi)發(fā)環(huán)境后即可進(jìn)行編碼實(shí)現(xiàn)。功能實(shí)現(xiàn)步驟如圖3所示。
圖3 系統(tǒng)功能實(shí)現(xiàn)步驟
系統(tǒng)根據(jù)設(shè)計(jì)界面實(shí)現(xiàn)后,需要用戶在界面上輸入3個(gè)指標(biāo)的權(quán)重值,范圍在0~1之間。輸入后,用標(biāo)準(zhǔn)化公式統(tǒng)一到同一個(gè)量綱,然后加權(quán)計(jì)算總值,得出截取地塊的影響值,最終在當(dāng)前范圍內(nèi)的截取地塊對(duì)比獲取對(duì)應(yīng)的影響值,篩選出當(dāng)前方向的四至。實(shí)現(xiàn)效果如圖4所示。巫曉蘭的地塊北至?xí)檎业轿母⒗顝?qiáng)、李勇的地;西至為李勇、郭建剛、文平華的地。在每個(gè)查找到的四至地塊中根據(jù)3個(gè)指標(biāo)進(jìn)行計(jì)算,對(duì)比得到最終結(jié)果。
圖4 功能實(shí)現(xiàn)
通過(guò)自定義權(quán)重及選定相關(guān)指標(biāo)的計(jì)算方法,可以靈活地指定影響查找結(jié)果因子的大小,所以最終查詢結(jié)果受輸入的權(quán)重值影響較大。在這種情況下,就需要用戶判別圖面上地塊之間的緊湊程度、距離及面積均衡程度,屬于圖形上的判斷需要較高的圖形知識(shí),由于判讀輸入的靈活性較大,有效提高了查找的準(zhǔn)確度,比之簡(jiǎn)單的四至平移算法更靈活。
本文通過(guò)選定查找四至的3個(gè)指標(biāo)及自定義輸入的方式,統(tǒng)計(jì)符合目標(biāo)空間地塊四至的地塊,并提供了有效的查找方法,為土地信息管理提供了有力的技術(shù)支持。
[1] 張雅彬,孫在宏,吳長(zhǎng)彬.基于GIS的土地利用總體規(guī)劃管理信息系統(tǒng)的開(kāi)發(fā)與研究[J].南京師大學(xué)報(bào)(自然科學(xué)版),2004,27(2):107-110
[2] 朱道強(qiáng),關(guān)海濤. Python在ArcGIS中的應(yīng)用[J].測(cè)繪與空間地理信息,2013,36(7):152-154
[3] 劉健,劉強(qiáng).基于ArcGIS Engine的基礎(chǔ)地理信息系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].勘察科學(xué)技術(shù), 2010(6):26-28
[4] 肖澤云,陶光貴.基于ArcGIS Engine的地籍管理信息系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].災(zāi)害與防治工程, 2009(2):29-32
[5] 孫麗,高飛,胡小華.ArcEngine插件式GIS二次開(kāi)發(fā)框架的設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪科學(xué),2011,36(5):214-216
[6] 肖慶.組件GIS二次開(kāi)發(fā)技術(shù)研究[J].軟件導(dǎo)刊,2008(11):148-150
[7] 吳建華.基于ArcGIS Engine的GIS軟件開(kāi)發(fā)方法[J].測(cè)繪通報(bào),2010(11):54-57
[8] 陳紅華,李滿春,李飛雪.插件式GIS應(yīng)用框架的設(shè)計(jì)與實(shí)現(xiàn)[J].地理空間信息,2011, 9(2):26-28
[9] 楊宏鵬,王阿川,王妍瑋. GIS二次開(kāi)發(fā)方法與實(shí)現(xiàn)[J].信息技術(shù),2008(8):65-67
P273
B
1672-4623(2016)12-0080-02
10.3969/j.issn.1672-4623.2016.12.026
劉兵,碩士,工程師,主要從事測(cè)繪項(xiàng)目軟件研發(fā)管理工作。
2016-06-13。
項(xiàng)目來(lái)源:四川省科技計(jì)劃資助項(xiàng)目(2015SZ0046)。