李學軍,殷 牧,詹煥發(fā)
(湖南省地質礦產勘查開發(fā)局四一六隊,湖南 株洲 412007)
?
淺談快捷建庫與數(shù)據(jù)處理系統(tǒng)的功能設計
李學軍,殷牧,詹煥發(fā)
(湖南省地質礦產勘查開發(fā)局四一六隊,湖南 株洲 412007)
摘要:介紹了快捷建庫與數(shù)據(jù)處理系統(tǒng)涉及的內容和研究開發(fā)的技術路線,并對該系統(tǒng)的各項模塊功能進行了詳細的闡述,提出了基于ArcGIS平臺實現(xiàn)系統(tǒng)各功能模塊的理論可行性綜合功能的操作方法。
關鍵詞:快捷建庫;數(shù)據(jù)處理;ArcGIS;信息加工;二次開發(fā)
傳統(tǒng)測量已步入信息化時期,各種測量數(shù)據(jù)的采集、編輯、處理、利用都趨于自動化和智能化,所有數(shù)據(jù)獲取和處理的最終目標是建立數(shù)據(jù)庫應用系統(tǒng)。測量單位最主要的任務還是測量數(shù)據(jù)的生產、采集、處理和數(shù)據(jù)庫的建設。國內關于農村土地所有權、使用權、經營權等數(shù)據(jù)庫的建設尚未規(guī)范詳細具體的格式標準,而國外的數(shù)據(jù)庫建設軟件涉及范圍太廣,不具備專門行業(yè)數(shù)據(jù)軟件的方便與快捷性。因此對于生產單位一些工作量巨大的數(shù)據(jù)入庫或整改等內業(yè)操作而言,迫切需要研發(fā)一個專門針對國家最新的數(shù)據(jù)入庫要求,能最大程度提高單位的生產效率、減小勞動強度的數(shù)據(jù)庫輔助軟件,使數(shù)據(jù)庫建設變得快捷、簡易、準確。
基于此背景,筆者所在單位將工程測量、不動產測繪、集體土地所有權、使用權及農村土地承包經營權調查及建庫等測繪數(shù)據(jù)處理方面的小程序和功能模塊進行集成和優(yōu)化,于2014年7月進行科研立項,成立了專門的項目組,組織開發(fā)了系統(tǒng)化的功能軟件——快捷建庫及數(shù)據(jù)處理系統(tǒng)。
一、實用軟件匯集
為將不同平臺格式的原始數(shù)據(jù)進行集成處理,需要借助各種二次開發(fā)來實現(xiàn),本系統(tǒng)匯集了多種程序軟件,主要包含以下3方面的內容。
1. 測量應用工具
1954北京坐標系、1980西安坐標系和2000國家大地坐標系的相互轉換,根據(jù)中央子午線的經度和線性變換參數(shù)進行任一投影帶的坐標換帶。
2. 遙感影像處理
遙感影像批量鑲嵌后再重新按新的要求進行分幅,資料掃描件和航攝影像資料根據(jù)編號自動批量地掛接到影像庫中,并讓數(shù)據(jù)庫直接調用影像庫,同一文件夾下面的影像文件進行批量重命名,影像圖斑橢球面積的精確計算。
3. 數(shù)據(jù)信息加工
利用程序一次性識別,自動編號、排序,刪掉重疊的行政界線,同時把代碼賦值到保留的線上,將DWG文件中的不同圖層分別轉換出來,批量將全部的矢量數(shù)據(jù)如MDB數(shù)據(jù)庫文件加載,合并為一個完整的數(shù)據(jù),自動進行拓撲處理,并對完成的相關文字、圖表、數(shù)據(jù)等成果資料進行輸出。
二、研究方法與技術路線
ArcGIS Engine包含一個構建定制應用的開發(fā)包。程序設計者可以在自己的計算機上安裝ArcGIS Engine開發(fā)工具包,使用熟悉的編程語言和開發(fā)環(huán)境。ArcGIS Engine通過在開發(fā)環(huán)境中添加控件、工具、菜單條和對象庫,在應用中嵌入GIS功能。例如,一個程序員可以建立一個應用程序,里面包含一個ArcMap的專題地圖、一些來自ArcGIS Engine的地圖工具及其他定制的功能。
C#是微軟公司發(fā)布的一種面向對象的、運行于.NET Framework之上的高級程序設計語言。C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優(yōu)雅的語法風格、創(chuàng)新的語言特性和便捷的面向組件編程的支持成為.NET開發(fā)的首選語言。
本系統(tǒng)研發(fā)的主要技術路線敘述如下。
1. 明確程序功能
首先進行分析,搞清楚程序的功能是什么,它能夠做些什么。把需求進行匯總,明確程序要實現(xiàn)的功能。
2. 分別實現(xiàn)程序
分程序界面和程序結構兩部分實現(xiàn)程序。引用程序集,創(chuàng)建項目和窗體后從工具箱中加入控件,對界面進行修改;分別編寫各功能模塊,依次定義類,編寫源代碼并進行代碼注釋。
3. 調試與發(fā)布
VS中的調試默認設置為/optimize-和/debug:full開關,生成的程序集為調試版本,生成的IL代碼和最終的本地代碼不會被優(yōu)化,生成時除了主要文件外,還包括調試信息;發(fā)布默認設置為/optimize+和/debug:pdbonly開關,不包含調試信息,生成的IL代碼和最終的本地代碼均會被優(yōu)化。最終,需要的是發(fā)布版本的程序。
4. 部署與配置
可以使用VS或其他打包軟件,將程序打包為安裝文件,但打包程序集最簡單的方式就是直接復制所有文件。卸載程序集時,刪除文件即可。之所以能實現(xiàn)簡單的安裝、移動和卸載,是因為每個程序集都用元數(shù)據(jù)指明了自己引用的程序集,不需要依靠注冊表設置。
5. 封裝完成
完成系統(tǒng)的封裝并申報計算機軟件著作權登記證書。
三、系統(tǒng)功能設計
1. 自動編碼
在農村集體土地確權的數(shù)據(jù)建庫中,只能手工添加村民小組代碼,且加完代碼后還要把各村民小組的代碼按順序放置于相對應的鄉(xiāng)鎮(zhèn)下面,從而制作以縣為單位的數(shù)據(jù)字典。一個縣有幾萬村民小組,這樣工作量巨大且容易出錯。筆者通過編寫程序,基于ArcGIS中文件的報表,利用程序自動識別,自動編號、排序,完成各個村民小組的代碼賦值且制作數(shù)據(jù)字典(如圖1所示)。
2. 界線賦值
在處理相鄰村的村界或相鄰鎮(zhèn)的鎮(zhèn)界時,每個村、鎮(zhèn)的相鄰界線都有各自不同的屬性。根據(jù)要求,界線不能重疊,僅需要一條界線,但是這條界線上必須要有兩條線的屬性。也就是說需要將重疊的兩條線刪掉一條,同時把刪掉的線上的屬性賦值到保留的線上。很多軟件只有刪除重疊的線的功能。而本文設計程序可以基于ArcGIS將其中一條線刪除并將其特定屬性放置于保留的線上(如圖2所示),從而避免了手工一條條界線去賦值的繁瑣工作,節(jié)約大量的時間與精力。
圖1 數(shù)據(jù)字典
圖2 界線合并代碼
3. 數(shù)據(jù)合并
通過開發(fā)的軟件可以批量將全部的矢量數(shù)據(jù)加載,如SHP文件,MDB、GDB數(shù)據(jù)庫文件,并以其中的某一個數(shù)據(jù)文件為模板,合并為一個完整的數(shù)據(jù)(如圖3所示)。
圖3 數(shù)據(jù)合并界面
4. 坐標轉換
坐標轉換是空間實體的位置描述,是從一種坐標系統(tǒng)變換到另一種坐標系統(tǒng)的過程,通過建立兩個坐標系統(tǒng)之間一一對應關系來實現(xiàn)。這也是各種比例尺地圖測量的編繪中建立地圖數(shù)學基礎必不可少的步驟。
從技術和應用方面來看,現(xiàn)在使用的1954北京坐標系和1980西安坐標系具有一定的局限性,已不適應發(fā)展的需要。通過3個以上的公共點(B,L,H),利用程序設定的7個轉換參數(shù),自動實現(xiàn)1954和1980橢球坐標系向2000國家大地坐標系的轉換(如圖4所示)。
圖4 坐標轉換界面
5. 投影換帶
投影變換是將一種地圖投影點的坐標變換為另一種地圖投影點的坐標的過程。在同一大地坐標系中,由于各地的中央子午線不同,需要進行換帶計算,利用程序可將不同中央子午線坐標系投影換帶成目標平面坐標系。通過投影計算選擇界面(如圖5所示),可以進行高斯投影正算、反算及鄰帶換算(如圖6所示)。
圖5 算法界面選擇
圖6 投影計算界面
6. 文件轉換
文件轉換主要涉及的是測量行業(yè)的文件轉換。在數(shù)據(jù)庫建設中,要將外業(yè)測量數(shù)據(jù)錄入到數(shù)據(jù)庫中,需要將DWG文件進行格式轉換。本文程序在將DWG文件轉換成SHP文件之前,通過設置好的轉換模版,可以將DWG文件中的不同圖層分別轉換出來,且可以設置好每個圖層轉換后包含有哪些字段。這樣既滿足了生產需求,又不用再重新給SHP文件設置內容字段(如圖7、圖8所示)。
圖7 文件轉換模板
圖8 數(shù)據(jù)轉換界面
7. 影像鑲嵌
影像鑲嵌是對一幅或若干幅圖像通過幾何鑲嵌、色調調整、去重疊等處理,將不同小幅面影像鑲嵌到一幅大的背景圖像中。地方的基礎影像資料是按照結合圖表分幅保存的,且很多有當?shù)厥锌h獨立中央經線,而根據(jù)規(guī)定要求,需要投影換帶為統(tǒng)一的坐標系統(tǒng)。此時面對成千上萬幅影像,需要將影像鑲嵌起來再一次性進行換帶分幅(如圖9所示)。
圖9 影像鑲嵌界面
8. 圖幅分幅
圖幅分幅將需要換帶的影像圖或線劃圖批量拼接起來,一次性統(tǒng)一換帶,再利用接合圖上的編號,將影像圖或線劃圖重新分幅,并將分幅的圖形命名為相對應的編號(如圖10所示)。
圖10 圖幅分幅界面
9. 圖斑計算
本系統(tǒng)利用嚴密、精確的計算公式,對圖斑橢球面積進行精確計算,使之與理論面積之間的差距得到最大程度的消減(如圖11所示)。
10. 批量命名
在數(shù)據(jù)庫的建立過程中,需要將外業(yè)的掃描資料掛入庫中,而權屬文書的掃描資料非常多,在入庫時,需要根據(jù)文件名有規(guī)律地錄入。這時候,如果手工去修改文件名,需要花費巨大的時間和精力。利用程序,建立統(tǒng)一的命名規(guī)則,對同一文件夾下面的文件進行批量重命名(如圖12所示)。
圖11 橢球面積計算
圖12 重新批量命名
四、結束語
快捷建庫及數(shù)據(jù)處理系統(tǒng)能在集體土地所有權、農村宅基地和集體建設用地使用權、農村土地承包經營權等多個項目的數(shù)據(jù)建庫中使用,也能在日常測量和數(shù)據(jù)處理中使用。根據(jù)現(xiàn)有工作需要,筆者陸續(xù)開發(fā)了自動排序編號、界線代碼賦值、文件數(shù)據(jù)轉換、矢量數(shù)據(jù)合并、文件批量命名、大地坐標轉換、高斯投影換帶、批量換帶分幅、影像數(shù)據(jù)掛接、圖斑面積計算等功能模塊。通過匯集這些功能,形成這套系統(tǒng)軟件,該軟件可極大提高工作效率,減小勞動強度,節(jié)省生產成本,同時也可確保產品的質量,一定會有非常廣闊的應用前景。
參考文獻:
[1]邊馥苓.地理信息系統(tǒng)原理和方法[M].武漢:武漢大學出版社,2001.
[2]錢雪忠.數(shù)據(jù)庫原理及應用[M].北京:北京郵電大學出版社,2007.
[3]王珊.數(shù)據(jù)庫技術與聯(lián)機分析處理[M].北京:北京科學出版社,1998.
[4]陳京民.數(shù)據(jù)倉庫與數(shù)據(jù)挖掘技術[M].北京:北京電子工業(yè)出版社,2002.
[5]胡鵬.地理信息系統(tǒng)教程[M].武漢:武漢大學出版社,2009.
[6]崔偉宏.空間數(shù)據(jù)結構研究[M].北京:中國科學技術出版社,1995.
[7]龔健雅.當代GIS的若干理論與技術[M].武漢:武漢大學出版社,1999.
[8]張海藩.軟件工程導論[M].北京:清華大學出版社,1998.
[9]周星,阮于洲.加快測繪地理信息事業(yè)轉型升級的思考[J].測繪通報,2014(1):132-134.
[10]劉建軍.國家基礎地理信息數(shù)據(jù)庫建設與更新[J].測繪通報,2015(10):1-3.
On Function Design of Rapid Database Establishment and Data Processing System
LI Xuejun,YIN Mu,ZHAN Huanfa
收稿日期:2015-05-28
作者簡介:李學軍(1968—),碩士,高級工程師,主要從事地理信息系統(tǒng)與軟件工程領域的研究工作。E-mail:zzxj163@163.com
中圖分類號:P208
文獻標識碼:B
文章編號:0494-0911(2016)06-0101-04
引文格式: 李學軍,殷牧,詹煥發(fā). 淺談快捷建庫與數(shù)據(jù)處理系統(tǒng)的功能設計[J].測繪通報,2016(6):101-104.DOI:10.13474/j.cnki.11-2246.2016.0201.