李甫群,曾光清,彭軍文,黃江雄
(長沙市規(guī)劃勘測設計研究院,湖南 長沙 425501)
隨著城市化、工業(yè)化的發(fā)展,城市環(huán)境矛盾日趨突出,而園林綠化是城市生態(tài)系統(tǒng)中促進良性發(fā)展的積極因素,在創(chuàng)造優(yōu)良的生產(chǎn)環(huán)境和改善人們的生存條件方面的作用是其他系統(tǒng)所不能代替的。根據(jù)《城市園林綠化當前產(chǎn)業(yè)政策實施辦法》相關要求指出對于新建住宅區(qū)和舊城改造,需同步搞好綠化和建設配套公園,改善人民居住環(huán)境,為兒童和老年人提供休息和活動條件,按各類規(guī)劃指標,同步建設好附屬環(huán)境綠地。為此通過行政立法和技術立法規(guī)定城市總體和各類用地的園林綠化指標、各類功能區(qū)域的綠地率,作為編制城市園林綠化規(guī)劃的依據(jù),促進城市綠地系統(tǒng)規(guī)劃的實現(xiàn)。城市規(guī)劃測量中一個重要的內(nèi)容就是測算建設工程項目的綠化面積、計算綠地率,以驗證建設工程項目綠化指標是否達到規(guī)劃設計要求。生產(chǎn)實踐中對于建設工程綠地面積的分類、標注、繪制、計算是一項煩瑣的工作,研究其自動化操作具有一定的現(xiàn)實意義。本文結合長沙市規(guī)劃竣工驗收測量生產(chǎn)中綠地面積測算的實際情況,分析了綠地面積自動化測算程序設計需求,在EPS平臺下利用VBS二次開發(fā)技術設計并實現(xiàn)了綠地面積自動分類、提取、統(tǒng)算及成果表自動繪制等程序。
EPS平臺是北京清華山維自主創(chuàng)新研發(fā)的集GIS數(shù)據(jù)采集、處理、建庫更新于一體的地理信息系統(tǒng)軟件[1]。如圖1所示,EPS平臺遵循從底至上的設計思想,可分為數(shù)據(jù)存儲、管理、通用及專業(yè)功能層四個功能區(qū),利用模板定制、信息映射、二次開發(fā)等關鍵技術實現(xiàn)了GIS數(shù)據(jù)的高效采集、處理、入庫及應用維護,在國土規(guī)劃領域應用廣泛[2~6]。EPS二次開發(fā)方式主要有C++程序級及腳本功能級兩種:C++開發(fā)方式是在VC++6.0環(huán)境下利用EPS提供的SDL包進行開發(fā);腳本開發(fā)常用的是VBScript,VBS分為有模腳本和無模腳本,其中無模腳本支持與視圖窗口交互操作。相比C++開發(fā)方式,腳本功能級二次開發(fā)具有簡單、易學、實用、開發(fā)周期短等優(yōu)點,本文主要采用VBS腳本語言開發(fā)[7]。
圖1 EPS平臺框架
按《長沙市城市規(guī)劃管理技術規(guī)定》要求,建設工程綠地面積測算需根據(jù)地面綠地、生態(tài)停車場綠地、屋頂覆土種植綠地等不同地塊類型進行分類,核實各地塊面積測算邊界與測算系數(shù),計算各地塊的綠化面積,進而下列公式計算建設工程項目的綠地率,以便規(guī)劃審批主管部門核對建設工程項目綠地率是否滿足規(guī)劃控制需求。
綠地率=綠地面積總和/建設工程項目用地面積×100%
根據(jù)長沙市建設工程綠地面積測算生產(chǎn)實踐,總結出綠地面積測算生產(chǎn)流程,如圖2所示。長沙市建設工程綠地面積測算內(nèi)業(yè)數(shù)據(jù)處理使用的是北京清華山維EPS軟件,目前EPS 2018版軟件中竣工測量模塊對綠地面積測算存在以下問題:①根據(jù)綠化地塊分類分系數(shù)計算要求,需進行計算的地塊數(shù)量較多,內(nèi)業(yè)數(shù)據(jù)處理工作量大;②涉及的綠地地塊圖形編輯、地塊標注及綠地面積計算表繪制等環(huán)節(jié)均由內(nèi)業(yè)作業(yè)人員處理,未能有效地利用EPS軟件中腳本的圖形編輯操作、數(shù)據(jù)整理功能,自動化程度低,生產(chǎn)效率低;③易產(chǎn)生數(shù)據(jù)編輯錯誤與統(tǒng)計錯誤,影響成果質(zhì)量。針對以上問題,為了提高作業(yè)效率和面積測算成果質(zhì)量,在綠地地塊范圍線繪制、地塊注記、面積計算表繪制及地塊屬性提取、面積數(shù)據(jù)統(tǒng)計等環(huán)節(jié)開發(fā)設計綠地面積自動化測算程序。
圖2 綠地面積測算生產(chǎn)流程
針對地塊范圍線繪制和地塊注記問題,設計程序采用EPS腳本語言進行編寫處理,對地塊范圍線實現(xiàn)自動繪制,同時標注地塊編號。EPS腳本語言在EPS腳本編輯器下運行,腳本語言具體運行時解釋執(zhí)行[8]。腳本采用目錄樹方式組織腳本,支持新建腳本分組、刪除腳本分組、新建腳本、刪除腳本、保存腳本和執(zhí)行腳本等功能。腳本文件存放在工作臺面下,可以在菜單欄中單獨指定存放,方便運行[9]。
SSProcess是系統(tǒng)缺省定義的對象,是與EPS平臺交互的主要入口對象,SSProcess對象的功能包括工程管理、選擇集操作、圖形編輯操作、數(shù)據(jù)整理、數(shù)據(jù)轉換、坐標體系轉換和系統(tǒng)設置等[10]。通過SetSelectCondition函數(shù),設置選擇集條件,選定滿足選擇集條件的地塊,運用ChangeSelectionObj函數(shù)將地塊面屬性轉換為范圍線屬性,轉換操作前關鍵需要對地塊進行分類構面,通過研究分析綠地面積計算細則,地面綠地有效面積與地面標高和最小覆土厚度有關,而綠化面積折算系數(shù)則根據(jù)屋面(頂板)標高與道路(地坪)的平均高差和地塊最小覆土厚度確定,對應綠地面積計算細則將綠化地塊按折算系數(shù)劃分不同類型,對不同類型及計算系數(shù)的地塊設定構面屬性,在竣工基礎地形圖基礎上按地塊構面屬性進行構面,通過腳本程序設置地塊面屬性選擇集條件,將選定的地塊面運用ChangeSelectionObj函數(shù)轉換為地塊范圍線,完成地塊范圍線繪制,核心程序代碼為:
SSProcess.ClearSelection ’
SSProcess.ClearSelectCondition
SSProcess.SelectFilter
SSProcess.ClearChangeSelectionParameter
SSProcess.SetChangeSelectionObjParameter "SSObj_Code=2", "SSObj_Code=1,SSObj_Color=COLORNO(258),SSObj_LineWidth=30" ’設置轉換條件為將地塊面屬性編碼=2的地塊面轉換為地塊范圍線,同時設置范圍線顏色和寬度
SSProcess.ChangeSelectionObj ’執(zhí)行轉換
按地塊的類型及計算系數(shù)對地塊進行編號,并將編號標注于地塊內(nèi),首先需要提取地塊的屬性,各不同屬性的地塊按面積計算系數(shù)從大到小依次排列,相同屬性的地塊按順序編號依次遞增。標注地塊編號需新增注記要素,利用Function函數(shù)設定程序AddNote添加注記模塊工具包,在SSProcess對象中調(diào)用Function函數(shù)AddNote實現(xiàn)添加注記功能。Function函數(shù)需要設定AddNote的相關參數(shù)模式,包括注記分類號、注記內(nèi)容、字體、注記高、注記寬、注記坐標等。調(diào)用Function函數(shù)AddNote時需參照參數(shù)模式設置標注屬性。最終生成的地塊范圍線及地塊標注如圖3所示。
圖3 地塊范圍線及地塊標注
建設工程綠地面積計算表內(nèi)容包括地塊編號、地塊面積、地塊類別、有效系數(shù)、有效面積、總面積、單位等,運用解析法計算各地塊面積,為便于規(guī)劃審批主管部門執(zhí)法,實際生產(chǎn)中通常將面積計算表繪制于建設工程綠地面積計算圖中。為實現(xiàn)綠地面積計算表自動化繪制,設計程序流程如圖4所示。
圖4 自動化繪制程序設計流程
綠地面積計算表自動化繪制的關鍵環(huán)節(jié)是繪制表格框架與地塊屬性數(shù)據(jù)填充。表格框架繪制首先需要確定表格參數(shù),其次是要添加空間線到新圖形對象。在不同比例尺成圖中,表格參數(shù)也不同,通過對比分析,總結出在1∶250、1∶500比例尺成圖中表格框架的參數(shù);通過Function函數(shù)設定AddLine程序添加空間線模塊工具包,根據(jù)表格參數(shù)調(diào)用Function函數(shù)AddLine程序繪制表格。地塊屬性數(shù)據(jù)填充可利用地塊面積計算系數(shù)設置選擇集條件篩選綠地地塊,提取對應地塊的地塊編號、地塊類型、地塊面積等屬性數(shù)據(jù),調(diào)用AddNote程序將提取的屬性數(shù)據(jù)按地塊編號對應填充至綠地面積計算表中,完成地塊屬性數(shù)據(jù)填充。同時匯總所有地塊面積及有效綠地面積,計算地塊總面積與有效綠地總面積,填充至綠地面積計算表對應匯總項。程序運行生成綠地面積計算表如表1所示。
綠地面積計算表 表1
通過程序設計,生產(chǎn)實踐中僅需在基礎地形圖上按照計算細則確定各地塊面積計算邊界,對各地塊按照“相同計算系數(shù)構面屬性一致”原則進行構面處理后,運行自動化繪制程序,即可完成地塊范圍線繪制、地塊編號注記、綠地面積計算表繪制及地塊屬性數(shù)據(jù)填充與統(tǒng)計,將腳本管理器中的自動化繪制程序腳本添加至菜單工具欄,便于生產(chǎn)實踐中對程序進行調(diào)用。
本文緊密結合長沙市城市規(guī)劃管理中綠地面積測算生產(chǎn)實際,提出了目前綠地面積測算中內(nèi)業(yè)數(shù)據(jù)處理存在的一些基本問題,針對相應問題分析總結了自動化程序設計需求,利用EPS平臺二次開發(fā)技術設計并實現(xiàn)了綠地地塊范圍線的繪制、地塊分類、地塊編號注記、地塊面積屬性提取、綠地面積計算表繪制、地塊屬性填充與統(tǒng)計等系列自動化繪制程序,實踐證明這一系列自動化繪制與面積測算過程的實現(xiàn)在很大程度上減少了內(nèi)業(yè)處理的工作量,減少了人為編輯錯誤的概率,提高了內(nèi)業(yè)數(shù)據(jù)處理工作效率,更確保了產(chǎn)品的成果質(zhì)量。通過對綠地面積測算自動化繪制程序設計的探索,可利用EPS平臺二次開發(fā)技術對涉及面積計算的測繪工作領域進行實際生產(chǎn)環(huán)節(jié)的程序設計及改進,如國土三調(diào)、房產(chǎn)實測繪等生產(chǎn)實踐中,將具體的內(nèi)業(yè)數(shù)據(jù)處理環(huán)節(jié)通過自動化程序處理,為大數(shù)據(jù)的信息自動化處理提供基礎技術支撐。