王巖,吳大鵬,周文良
(1.濟南市勘察測繪研究院,山東 濟南 250013; 2.濟南市市中區(qū)自然資源局,山東 濟南 250022)
在土地增減掛鉤和征收項目中,政府部門或用地單位會委托測繪單位進行勘測定界,勘測定界報告中要出具地類疊加分析表,需對范圍面內(nèi)地類進行分析和面積統(tǒng)計[1~3]。目前常用的地類統(tǒng)計分析軟件有CASS、EPS、ArcGIS等[4~6],其中ArcGIS以其強大的空間分析能力而備受青睞。Python語言具有簡單易用、功能強大等優(yōu)點,是理想的二次開發(fā)語言[7,8]。該文綜合了ArcGIS和Python的優(yōu)勢,構(gòu)建了地類統(tǒng)計分析工具,并結(jié)合濟南市某增減掛鉤勘測定界項目,驗證了該工具的有效性。
(1)范圍面:待進行地類分析的目標范圍,空間特征為面,.dwg Polygon或.shp格式數(shù)據(jù)。
(2)地類圖斑:是指各類土地在地面表現(xiàn)的一個個相鄰且獨立的地塊,如“水澆地”“旱地”“村莊”等,空間特征為面,數(shù)據(jù)格式為.shp。該文4期地類圖斑數(shù)據(jù)為“2009DLTB.shp”“2016DLTB.shp”“2017DLTB.shp”“2018DLTB.shp”。該文涉及的字段名稱為“DLMC”,意為“地類名稱”。
(3)線狀地物:是指實地寬度小于相應(yīng)比例尺地類上圖圖斑寬度,且面積小于上圖圖斑面積的地塊,如“農(nóng)村道路”“溝渠”“公路用地”等,空間特征為線(“農(nóng)村道路”“溝渠”“公路用地”等的中心線),數(shù)據(jù)格式為.shp。該文1期線狀地物數(shù)據(jù)為“2018XZDW.shp”。該文涉及的字段名稱為“DLMC”“KD”,意為“地類名稱”“寬度”。
(4)行政區(qū)界:如村界、城區(qū)等,空間特征為面,數(shù)據(jù)格式為.shp。該文行政區(qū)界數(shù)據(jù)為“XZQ.shp”。該文涉及的字段名稱為“XZQMC”,意為“行政區(qū)名稱”。
(5)4+1期:是指4期地類圖斑數(shù)據(jù)和1期線狀地物數(shù)據(jù)。
(6)地類優(yōu)先級:根據(jù)第二次全國土地調(diào)查土地分類表中地類的優(yōu)先級進行確定,如水澆地>果園>城鎮(zhèn)住宅用地。
(1)根據(jù)地類的優(yōu)先級對4期地類圖斑數(shù)據(jù)進行篩選,直至提取出最高地類(最高地類不是某一特定地類,而是指某一區(qū)域內(nèi)優(yōu)先級最高的地類,假如將范圍面劃分為1和2兩個區(qū)域,1區(qū)域的最高地類是水澆地,2區(qū)域的最高地類可能是水澆地,也可能是城鎮(zhèn)住宅用地等)。
(2)線狀地物數(shù)據(jù)按其寬度屬性構(gòu)建緩沖區(qū)后,根據(jù)地類的優(yōu)先級提取出最高地類(由于緩沖區(qū)之間可能存在相互重疊情況,所以仍需提取最高地類)。
(3)線狀地物數(shù)據(jù)按其寬度屬性構(gòu)建緩沖區(qū)后形成的面數(shù)據(jù)與地類圖斑數(shù)據(jù)重疊范圍的地類以線狀地物數(shù)據(jù)中的地類為準。
由于不同數(shù)據(jù)之間涵蓋的地類種類可能不同等原因,所以首先進行數(shù)據(jù)預(yù)處理,相同數(shù)據(jù)只需賦值一次,后續(xù)使用同樣數(shù)據(jù)不再經(jīng)過此過程。數(shù)據(jù)預(yù)處理的步驟為:
(1)在每一期地類圖斑數(shù)據(jù)中添加字段XLPX(類型為整型),添加此字段的目的是對地類的優(yōu)先級進行排序,a值為地類級別,1級為最高。在字段計算器中解析程序選擇VB腳本,輸入代碼:
dim a
if [DLMC]="水田" then
a=1
elseif [DLMC]="水澆地" then
a=2
elseif [DLMC]="旱地" then
a=3
……
……
elseif [DLMC]="水工建筑用地" then
a=××
end if
進行賦值,賦值完成后檢查字段XLPX是否有空值,若有空值,則按本代碼的語法形式按順序加上代碼中未涵蓋的地類。
(2)在線狀地物數(shù)據(jù)中添加字段XLPX(類型為整型),按步驟1的方法進行賦值。
該文采用Python腳本編寫地類分析工具,主要流程為:
(1)輸入數(shù)據(jù)(arcpy.GetParameterAsText函數(shù)),包括范圍面數(shù)據(jù)、4期地類圖斑數(shù)據(jù)、1期線狀地物數(shù)據(jù)、行政區(qū)界數(shù)據(jù)和輸出位置。
(2)范圍面分別與4期地類圖斑數(shù)據(jù)相交(arcpy.Intersect_analysis函數(shù)),得到范圍面內(nèi)“2009in.shp”“2016in.shp”“2017in.shp”“2018in.shp”4期地類圖斑數(shù)據(jù)。
(3)將范圍面內(nèi)4期地類圖斑數(shù)據(jù)合并(arcpy.Merge_management函數(shù)),得到merge4.shp。
(4)選擇(arcpy.SelectLayerByAttribute_management函數(shù))出“merge4.shp”的最高地類,輸出數(shù)據(jù)為sel_zg.shp,merge4.shp與sel_zg.shp執(zhí)行擦除(arcpy.Erase_analysis函數(shù),sel_zg.shp擦除merge4.shp,輸出數(shù)據(jù)為“era.shp”)、合并(arcpy.Merge_management函數(shù),sel_zg.shp與era.shp合并)后輸出數(shù)據(jù)“merge4_1.shp”,對“merge4_1.shp”執(zhí)行與“merge4.shp”相同的操作,輸出數(shù)據(jù)為“merge4_2.shp”。將選擇出“merge4_i.shp”(i=1,2,3……)中最高地類、擦除、合并稱為一次自裁剪,對輸出數(shù)據(jù)“merge4_i.shp”不停地進行自裁剪,直至輸出的數(shù)據(jù)只含最高地類,最終輸出數(shù)據(jù)為“merge4_zg.shp”。
(5)選擇出與范圍面距離不大于0.5倍寬度值的“2018XZDW.shp”,以0.5倍寬度值作為緩沖距離生成緩沖區(qū)(arcpy.Buffer_analysis函數(shù)),得到“xzdw_buf.shp”,按照(4)提取最高地類,直至輸出的數(shù)據(jù)只含最高地類,最終輸出數(shù)據(jù)為“xzdw_zg.shp”。
(6)對“merge4_zg.shp”與“xzdw_zg.shp”執(zhí)行相交(輸出數(shù)據(jù)為“merge4_xzdw_in.shp”)、擦除(“xzdw_zg.shp”擦除“merge4_zg.shp”,輸出數(shù)據(jù)為“merge4_ea_xzdw.shp”)、合并(“merge4_xzdw_in.shp”與“merge4_ea_xzdw.shp”)后,合為1個要素類,輸出數(shù)據(jù)為merge4_xzdw.shp,merge4_xzdw.shp含字段“DLMC”和“DLMC_1”,將字段“DLMC_1”的非空值覆蓋(arcpy.da.UpdateCursor函數(shù))字段“DLMC”。對merge4_xzdw.shp執(zhí)行按字段“DLMC”融合(arcpy.Dissolve_management函數(shù)),輸出最終的shp數(shù)據(jù)成果為merge4_xzdw_di.shp。步驟(1)~(6)為該工具地類分析功能實現(xiàn)。
(7)是否輸入行政區(qū)界數(shù)據(jù)是可選的。當不輸入行政區(qū)界數(shù)據(jù)時,對merge4_xzdw_di.shp執(zhí)行導出屬性表(arcpy.TableToExcel_conversion函數(shù),此表為默認范圍面位于1個行政區(qū)界內(nèi)時的地類面積統(tǒng)計,當范圍面位于多個行政區(qū)界內(nèi)時,則此表廢);當輸入行政區(qū)界數(shù)據(jù)時,對“merge4_xzdw.shp”與“XZQ.shp”執(zhí)行相交后的輸出數(shù)據(jù)按字段“XZQMC”和“DLMC”融合,對融合后輸出的數(shù)據(jù)導出屬性表,此表為1個或多個行政區(qū)界內(nèi)的地類面積統(tǒng)計。步驟(7)為該工具的面積統(tǒng)計功能實現(xiàn)。
流程圖如圖1所示,工具界面如圖2所示。
圖1 流程圖
圖2 工具界面
以濟南市某土地增減掛鉤項目為實驗對象,對其中2個地塊(地塊1,面積 34 717 m2;地塊2,面積 14 736 m2)進行分析,選取4期地類圖斑數(shù)據(jù)“2009DLTB.shp”“2016DLTB.shp”“2017DLTB.shp”“2018DLTB.shp”和1期線狀地物數(shù)據(jù)“2018XZDW.shp”疊加取最高地類,行政區(qū)界數(shù)據(jù)為“XZQ.shp”(為保密起見,行政區(qū)名用A、B、C……等英文字母代替)。兩地塊勘測定界報告中地類面積經(jīng)過了過程檢查和最終檢查,可作為準確的對比數(shù)據(jù)。工具地類分析結(jié)果如圖3所示,工具導出表格(地類面積統(tǒng)計結(jié)果)如表1、表2所示。
圖3 地類分析結(jié)果
地塊1工具導出表格 表1
地塊2工具導出表格 表2
工具地類面積統(tǒng)計數(shù)據(jù)與勘測定界報告中對應(yīng)數(shù)據(jù)對比結(jié)果如表3所示,勘測定界報告中數(shù)據(jù)保留至整數(shù)位,為保持一致,工具地類面積統(tǒng)計數(shù)據(jù)也保留至整數(shù)位。
從表3可知工具運行結(jié)果和勘測定界報告統(tǒng)計數(shù)據(jù)是相同的(造成差值為1的原因是:為保證地塊2各地類面積總和和范圍線面積一致,數(shù)值45.53167676直接舍為45,而不是進為46,實際差值為0),說明工具運行結(jié)果的正確性。地塊1和地塊2的工具運行時間分別僅為 22.46 s和 25.80 s,遠低于人工統(tǒng)計分析的時間,可見該工具大幅度提高了工作效率。
工具地類面積統(tǒng)計數(shù)據(jù)與勘測定界報告中對應(yīng)數(shù)據(jù)比較 表3
該工具不僅適用于4+1期地類疊加分析,同樣適用于任意n+1(n≥1)期地類疊加統(tǒng)計分析。分別以“2009DLTB.shp”和“2018XZDW.shp”組成1+1期,“2009DLTB.shp”“2016DLTB.shp”和“2018XZDW.shp”組成2+1期、“2009DLTB.shp”“2016DLTB.shp”“2017DLTB.shp”和“2018XZDW.shp”組成3+1期,以“2006DLTB.shp”“2009DLTB.shp”“2016DLTB.shp”“2017DLTB.shp”“2018DLTB.shp”和“2018XZDW.shp”組成5+1期對地塊2進行分析統(tǒng)計,工具運行時間如圖4所示。
圖4 工具運行時間
從圖4可知,1+1期~5+1期,工具皆可在 30 s內(nèi)快速運算出結(jié)果。隨著期數(shù)的增大,運行時間沒有出現(xiàn)大幅度增大的情況,可見在疊加多期地類數(shù)據(jù)進行統(tǒng)計分析時,該工具能夠在較大程度上起到節(jié)省人力、時間的作用。
在土地征收勘測定界項目中,濟南市現(xiàn)行地類疊加規(guī)則有1+1期或2+1期(不同區(qū)域可能要求不同),該工具同樣適用于土地征收階段的地類統(tǒng)計分析。
結(jié)合濟南市某增減掛鉤勘測定界項目,對地類統(tǒng)計分析工具的有效性進行了驗證。實驗結(jié)果表明,該工具運行結(jié)果正確,運行時間遠低于人工統(tǒng)計分析時間,提高了工作效率,避免了人為錯誤。該工具適用于任意n+1(n≥1)期地類疊加統(tǒng)計分析,在土地征收勘測定界項目中可發(fā)揮其作用。