




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
地星城鎮(zhèn)地籍管理信息系統(tǒng)
軟件說明書
北京地星偉業(yè)數(shù)碼科技有限公司
二。。八年四月
目錄
第一章引言1
1.1讀者對象1
1.2軟件結(jié)構(gòu)圖1
1.3子系統(tǒng)結(jié)構(gòu)圖3
1.3.1圖形部分3
1.3.2屬性部分4
1.3.3權(quán)限控制部分5
1.4關(guān)鍵技術(shù)5
1.4.1.NETFramework5
1.4.2ArcEngine6
1.4.3ArcSDE6
1.4.4Geodatabase數(shù)據(jù)模型8
1.4.5WebServices10
第二章圖形管理12
2.1整體設(shè)計(jì)12
2.1.1功能模塊命名規(guī)則13
2.1.2子系統(tǒng)模塊清單13
2.1.3子系統(tǒng)界面設(shè)計(jì)14
2.2功能設(shè)計(jì)15
2.2.1系統(tǒng)初始化15
2.2.2數(shù)據(jù)漫游18
2.2.3地圖糾正20
2.2.4數(shù)據(jù)入庫21
2.2.5數(shù)據(jù)編輯26
2.2.6符號(hào)管理34
2.2.7拓?fù)鋵?shí)現(xiàn)35
2.2.8數(shù)據(jù)查詢36
2.2.9空間分析38
2.2.10地圖打印40
2.2.11地圖標(biāo)注41
2.2.12數(shù)據(jù)導(dǎo)入與導(dǎo)出42
第三章屬性管理設(shè)計(jì)43
3.1系統(tǒng)結(jié)構(gòu)43
3.1.1系統(tǒng)結(jié)構(gòu)說明43
3.1.2系統(tǒng)模塊清單44
3.2業(yè)務(wù)登記45
3.2.1業(yè)務(wù)受理45
3.2.2調(diào)查48
3.2.3審批52
3.2.4注冊55
3.2.5證書打印58
3.2.6變更59
3.2.7其他登記處理63
3.2.8流程以及權(quán)限管理63
3.3統(tǒng)計(jì)查詢66
3.3.1統(tǒng)計(jì)66
3.3.2查詢69
第四章權(quán)限管理72
4.1單點(diǎn)登陸系統(tǒng)設(shè)計(jì)72
4.1.1系統(tǒng)組成結(jié)構(gòu)72
4.1.2用戶登陸72
4.1.3登錄流程細(xì)化73
4.2權(quán)限控制中心系統(tǒng)設(shè)計(jì)75
4.2.1權(quán)限控制中心總體功能75
4.2.2權(quán)限控制中心子模塊說明75
4.2.3權(quán)限控制中心子模塊設(shè)計(jì)76
II
第一章引言
1.1讀者對象
本說明書是地星城鎮(zhèn)地籍管理信息系統(tǒng)系列文檔的一個(gè),其讀者對象是對相
關(guān)業(yè)務(wù)的技術(shù)和總體方案作出決策的管理人員、對本《軟件說明書》進(jìn)行評(píng)審和
確認(rèn)的有關(guān)業(yè)務(wù),技術(shù)人員、參加編碼階段工作的全體軟件工程師、參加系統(tǒng)調(diào)
試的全體軟件工程師、參加試運(yùn)行的全體軟件工程師以及其他有權(quán)需要調(diào)用本文
檔的人員。
《地星城鎮(zhèn)地籍管理信息系統(tǒng)軟件說明書》的全部內(nèi)容屬于本公司的商業(yè)機(jī)
密,應(yīng)嚴(yán)格控制業(yè)務(wù)范圍,項(xiàng)目開發(fā)階段由項(xiàng)目軟件開發(fā)組負(fù)責(zé)管理,由本公司
負(fù)責(zé)管理,未經(jīng)公司同意,不得以任何介質(zhì)(文本,軟盤,硬盤,光盤)等形式
持有本文檔的部分或全部內(nèi)容。
1.2軟件結(jié)構(gòu)圖
地星城鎮(zhèn)地籍管理信息系統(tǒng)總體上分為三個(gè)主要功能系統(tǒng),屬性管理子系
統(tǒng)、圖形信息子系統(tǒng)以及權(quán)限管理子系統(tǒng)。在子系統(tǒng)基礎(chǔ)上包含數(shù)據(jù)轉(zhuǎn)換子模塊、
數(shù)據(jù)處理與建庫子模塊、數(shù)據(jù)質(zhì)量檢查子模塊、土地登記子模塊、查詢分析子模
塊、系統(tǒng)依靠單點(diǎn)登陸形成了緊耦合的關(guān)系,同時(shí)子系統(tǒng)依靠低層的統(tǒng)一數(shù)據(jù)庫
支持和權(quán)限管理亦具有松散耦合之關(guān)系,都可以對運(yùn)行。系統(tǒng)整體的模塊機(jī)構(gòu)圖
如下:
此圖說明整個(gè)管理系統(tǒng)功能的組成部分,這幾個(gè)子系統(tǒng)通過統(tǒng)一的數(shù)據(jù)庫
(ORACLE10g)支持,基于DOTNET開發(fā)平臺(tái),采用ARCGIS系列組件構(gòu)建整個(gè)應(yīng)
用服務(wù)程序,諸如:客戶端通過ArcEngine的數(shù)據(jù)庫接口,對存貯在中心數(shù)據(jù)庫
的空間數(shù)據(jù)進(jìn)行訪問,從而實(shí)現(xiàn)了多人同時(shí)訪問、更新數(shù)據(jù)庫,并且可以時(shí)實(shí)時(shí)
地查看其他人對數(shù)據(jù)庫的更新、ArcSDE作為空間數(shù)據(jù)庫的訪問接口、使用
GEODATABASE數(shù)據(jù)模型等,同時(shí)采用WebSrevices.COM組件等技術(shù)實(shí)現(xiàn)統(tǒng)一的
單點(diǎn)登陸、統(tǒng)一的權(quán)限管理等。
1.3子系統(tǒng)結(jié)構(gòu)圖
1.3.1圖形部分
3
1.3.2屬性部分
4
1.3.3權(quán)限控制部分
1.4關(guān)鍵技術(shù)
1.4.1.NETFramework
,NET框架由四部分組成,公共語言運(yùn)行時(shí),類庫,編程語言和ASP.NET環(huán)
境。.NET框架有三個(gè)目的。第一個(gè)目的是使得Windows應(yīng)用程序更加可靠并提
供給應(yīng)用程序更大的安全性。第二個(gè)目的是簡化Web應(yīng)用程序和服務(wù)的開發(fā),不
僅是傳統(tǒng)意義上的Web應(yīng)用程序和服務(wù),還包括移動(dòng)設(shè)備上的Web應(yīng)用程序和服
務(wù)。第三個(gè)目的是提供獨(dú)立的一套庫,使其可用于多種語言。
,NET框架提供創(chuàng)建傳統(tǒng)的Windows應(yīng)用程序的能力,并提供了更多的增強(qiáng)
特性,比如安全性,在應(yīng)用程序中增加數(shù)字簽名等。.NET還提供了與傳統(tǒng)的COM
組件交互的能力,它提供了一個(gè)包裝類,讓使用COM組件的用戶感覺上和使
用.NET類庫一樣。一般來說在轉(zhuǎn)換后的數(shù)據(jù)類型和原始COM組件中的類型一樣。
5
所有的引入的類型都附加到一個(gè)名字空間上,比如在ArcEngine里就是
ESRLArcGIS名字空間。所有的COM內(nèi)部類都轉(zhuǎn)換為受控類,受控類的名字在原
來基礎(chǔ)上增加“Class",比如Point類轉(zhuǎn)化為PointClasSo在屬性,事件等方
面.NET都給予了適當(dāng)?shù)霓D(zhuǎn)化使.NET開發(fā)人員可以容易的引入COM組件,進(jìn)行開
發(fā)。ESRI特別的自己轉(zhuǎn)換了COM組件到一套.NET類庫,供開發(fā)人員使用,從而
節(jié)省了很多不必要的麻煩。
,NET框架提供了公共語言運(yùn)行時(shí)和一套基礎(chǔ)類庫和多種開發(fā)語言。多種開
發(fā)語言共享基礎(chǔ)類庫,并運(yùn)行在相同的運(yùn)行時(shí)之上,采用了C#語言進(jìn)行開發(fā)。
C#是一種現(xiàn)代的、面向?qū)ο螅◤牡讓娱_始)安全型語言。C#具有.NET的全部特
性,在語法上具有C++的簡捷明了,但是比C++提供更多的安全措施。
1.4.2ArcEngine
ArcEngine是ArcGIS劃時(shí)代的一個(gè)產(chǎn)品,主要原因在于其提供了完美的組
件框架和控件框架,為二次開發(fā)者提供了隨心所欲的開發(fā)利器。對于ArcEngine,
ESRI定位于提供嵌入式的GIS組件,能用來在一個(gè)組織內(nèi)建立應(yīng)用,為用戶提
供有針對性的GIS功能,為每個(gè)用戶的特定需求提供有針對性的GIS功能實(shí)現(xiàn)的
基礎(chǔ)。實(shí)際上,根據(jù)研究,發(fā)現(xiàn)ArcEngine應(yīng)用遠(yuǎn)不止這些。理論上講,通過
ArcEngine完全實(shí)現(xiàn)Arcinfo桌面應(yīng)用系統(tǒng)甚至ArcGISServer0
1.4.3ArcSDE
ArcSDE采用大型數(shù)據(jù)庫來存儲(chǔ)空間數(shù)據(jù),它維護(hù)的元數(shù)據(jù)表記錄了存貯在
數(shù)據(jù)庫中所有圖層的信息。業(yè)務(wù)表存貯的每一條記錄表示一個(gè)空間要素(簡單多
部件要素),并有一個(gè)唯一的識(shí)別符。該唯一的識(shí)別符存貯在業(yè)務(wù)表的幾何列中。
業(yè)務(wù)表的名字就是圖層的名字。通過該唯一的識(shí)別符,每一個(gè)記錄與要素表或稱
為F表建立相應(yīng)的記錄關(guān)聯(lián)。F表在一個(gè)二進(jìn)制列中物理地存貯要素的幾何特征。
除空Shape外,業(yè)務(wù)表和F表之間存在一個(gè)1對1的關(guān)系。
6
要素在業(yè)務(wù)表中有記錄,但在F表中沒有對應(yīng)的要素。
數(shù)據(jù)庫中最后一個(gè)有關(guān)圖層的表是空間索引表或稱S表。S表存貯著格網(wǎng)單
元和圖層的封裝邊界。每一格網(wǎng)單元在F表中都有一個(gè)條目。凡是封裝邊界與該
格網(wǎng)有重疊的要素都與之一同存貯,即S表中存貯著要素標(biāo)識(shí)碼,以提供從業(yè)務(wù)
表或F表到S表的1對多的關(guān)系。
ArcSDE客戶端和服務(wù)器同時(shí)工作來遞交和顯示從一個(gè)查詢中獲取的記錄數(shù)
據(jù),這種處理類型叫一個(gè)異步流模式。
客戶端發(fā)送一個(gè)初始請求給ArcSDEo該請求被轉(zhuǎn)換成一個(gè)由ArcSDE轉(zhuǎn)發(fā)給
RDBMS的SQL語句。RDBMS分析該語句并從數(shù)據(jù)庫中提取數(shù)據(jù)記錄。當(dāng)RDBMS選
擇出數(shù)據(jù)記錄時(shí),它發(fā)送結(jié)果給ArcSDE。ArcSDE服務(wù)器將任何一個(gè)空間信息轉(zhuǎn)
換為可讀的格式并將該信息發(fā)送給客戶端。
信息實(shí)時(shí)地以小而連續(xù)的緩沖區(qū)的形式發(fā)送給客戶端。在客戶端接收這些緩
沖區(qū)數(shù)據(jù)的同時(shí),就開始處理并顯示它們??蛻舳瞬粫?huì)等到服務(wù)器處理完查詢后
才顯示數(shù)據(jù)記錄。
客戶端和服務(wù)端同時(shí)工作來處理查詢是為了減少查詢時(shí)間??蛻舳送ǔ1确?/p>
務(wù)端慢,因此,當(dāng)客戶端已經(jīng)顯示當(dāng)前的結(jié)果并準(zhǔn)備好接收更多的數(shù)據(jù)時(shí),服務(wù)
器才向其發(fā)送數(shù)據(jù)緩沖區(qū)記錄。這可以使服務(wù)器有空閑處理其它的客戶端發(fā)送來
的查詢。
每個(gè)緩沖區(qū)在客戶端將其處理完畢后就開始釋放,以免客戶端的內(nèi)存被占
用。在客戶端,數(shù)據(jù)記錄不會(huì)駐留內(nèi)存,因此,如果已釋放的數(shù)據(jù)記錄再次被請
求,查詢就需要再執(zhí)行一次。在ArcSDE客戶端的大部分操作都將導(dǎo)致數(shù)據(jù)庫的
查詢操作。經(jīng)常訪問的圖層可以駐留在服務(wù)器的內(nèi)存高速緩沖區(qū)內(nèi),這樣可加快
重復(fù)查詢。這是因?yàn)樵L問內(nèi)存中的數(shù)據(jù)要比從磁盤上讀數(shù)據(jù)快得多。
7
ArcSDE服務(wù)器發(fā)送SQL語句給RDBMS處理。RDBMS解析該語句并驗(yàn)證所需的
表是否存在。解析語句時(shí)可確定從數(shù)據(jù)庫中獲取數(shù)據(jù)的最佳方法。一旦完成一個(gè)
語句解析,RDBMS就從數(shù)據(jù)庫中獲取數(shù)據(jù)。如果一個(gè)表經(jīng)常要被訪問,或最近已
被訪問過,數(shù)據(jù)記錄則駐留在RDBMS的內(nèi)存緩沖區(qū)中。這就減少了從磁盤上獲取
數(shù)據(jù)所花費(fèi)的時(shí)間。再有,減少數(shù)據(jù)庫查詢和數(shù)據(jù)庫在網(wǎng)絡(luò)上的傳輸時(shí)間是非常
重要的。ArcSDE從客戶端和服務(wù)器兩個(gè)方面來解決這兩個(gè)問題,ArcSDE客戶端
通過應(yīng)用屬性或空間約束來減少返回?cái)?shù)據(jù)的數(shù)量,ArcSDE服務(wù)器通過一個(gè)空間
索引來減少空間信息的查詢時(shí)間。
ArcSDE客戶端向RDBMS和ArcSDE服務(wù)器提出請求信息,如果數(shù)據(jù)庫文件沒
有駐留在服務(wù)器內(nèi)存的高速緩沖區(qū),那么數(shù)據(jù)庫文件獲取記錄的操作將導(dǎo)致較高
的磁盤輸入/輸出操作??蛻舳丝梢岳脭?shù)據(jù)請求的條件約束來減少檢索的數(shù)據(jù)
量和從服務(wù)器返回的數(shù)據(jù)。約束可以是對屬性數(shù)據(jù),也可以對空間數(shù)據(jù),它可以
通過SQL語句的WHERE子句來實(shí)現(xiàn)。ArcSDE生成一個(gè)SQL語句并將它傳遞給
RDBMSo空間約束條件被稱為空間過濾器。空間查詢操作的WHERE子句限定了返
回的數(shù)據(jù)必須是在圖層中指定區(qū)域的空間信息。數(shù)據(jù)庫管理員對屬性項(xiàng)建立索引
可加快對屬性數(shù)據(jù)的查詢。ArcSDE服務(wù)器建立空間索引來加快對空間數(shù)據(jù)的查
詢。
1.4.4Geodatabase數(shù)據(jù)模型
Geodatabase是ESRI在其新一代GIS平臺(tái)軟件ArcGIS8中引入的一種全新
的空間數(shù)據(jù)模型。Geodatabase采用一種開放的結(jié)構(gòu)將空間數(shù)據(jù)(包括:矢量、
柵格、影像、三維地形等)及其相關(guān)的屬性數(shù)據(jù)統(tǒng)一存放在工業(yè)標(biāo)準(zhǔn)的數(shù)據(jù)庫管
理系統(tǒng)DBMS中??臻g要素類(FeatureClass),如:河流、國界、宗地、電桿
等,對應(yīng)了DBMS中的表,而具體的一個(gè)要素(Feature)則是表中的一條記錄。
具有共同空間參考的一組空間要素類又可以組成更大的結(jié)構(gòu),稱為要素?cái)?shù)據(jù)集合
8
(FeatureDataSet)0除了空間要素類以外,Geodatabase中還可以建立關(guān)系
類、幾何網(wǎng)絡(luò)、定義要素子類型、值域及規(guī)則等。所有的要素類均可以借助通用
的CASE工具(如I:Visio、RationalRose等)進(jìn)行模型定義和擴(kuò)展。
在ArcGIS8.3版中,Geodatabase引入了拓?fù)潢P(guān)系規(guī)則。如前所述,在
Geodatabase中可以定義關(guān)系和規(guī)則。拓?fù)潢P(guān)系規(guī)則即是新增加的一類。拓?fù)潢P(guān)
系規(guī)則可作用于同一要素?cái)?shù)據(jù)集中的不同要素類或者同一要素類中的不同要素。
用戶可以指定空間數(shù)據(jù)必須滿足的拓?fù)潢P(guān)系約束,譬如:要素之間的相鄰關(guān)系、
連接關(guān)系、覆蓋關(guān)系、相交關(guān)系、重疊關(guān)系等。所有這些關(guān)系都對應(yīng)相應(yīng)的規(guī)則。
在城市規(guī)劃應(yīng)用中,兩個(gè)相鄰的地塊之間不能有“飛地”,可以有一條對應(yīng)的規(guī)則:
“相鄰多邊形間不能存在間隙再如,當(dāng)以河流作為國界時(shí),河流(線狀)與國
界線必須一致,可用規(guī)則:“線必須被多邊形邊線覆蓋”。用戶通過選擇若干規(guī)則
的組合構(gòu)成對空間數(shù)據(jù)必須滿足的拓?fù)潢P(guān)系的靈活指定。為了檢查和維護(hù)空間數(shù)
據(jù)的拓?fù)潢P(guān)系正確性,在ArcGISDesktop中給出了一組(編輯)工具,用于對
空間數(shù)據(jù)根據(jù)用戶指定的拓?fù)潢P(guān)系規(guī)則進(jìn)行編輯,并幫助用戶及時(shí)發(fā)現(xiàn)可能存在
的拓?fù)潢P(guān)系錯(cuò)誤。
Geodatabase中并不實(shí)際保存拓?fù)潢P(guān)系。不同要素類之間的公共點(diǎn)、公共邊
等要素是在拓?fù)渚庉嬤^程中動(dòng)態(tài)地檢測到的。例如,我們選擇一條線并對其進(jìn)行
編輯,此時(shí)Geodatabase將自動(dòng)檢測到與此線要素具有公共幾何元素的所有其它
要素,當(dāng)修改該線要素時(shí),系統(tǒng)自動(dòng)對所有的公共邊和公共點(diǎn)進(jìn)行維護(hù),以保持
其應(yīng)有的拓?fù)潢P(guān)系。這種實(shí)現(xiàn)方式的好處在于,可以局部、有選擇的維護(hù)拓?fù)潢P(guān)
系,效率很高。
拓?fù)湟?guī)則可以定義在要素類的不同要素之間,也可以定義在兩個(gè)或多個(gè)要素
類之間。比較典型的拓?fù)湟?guī)則例子是:多邊形不能相互重疊(兩個(gè)建設(shè)用地地塊
間不可相互重疊);點(diǎn)必須被多邊形邊線覆蓋(建設(shè)用地的界址點(diǎn)必須在用地紅
9
線上);不能有懸掛結(jié)點(diǎn)(用地紅線不能有多余的出頭線段);兩個(gè)線層不能相交
(地下管線和道路中心線不能有交叉點(diǎn)),等等。在ArcGIS8.3版中,將給出總
共25條可供選用的拓?fù)湟?guī)則。在以后發(fā)布的版本中,還會(huì)給出更多的規(guī)則。對
一個(gè)要素?cái)?shù)據(jù)集,可以定義一個(gè)拓?fù)潢P(guān)系類,在拓?fù)潢P(guān)系類中,指定若干希望數(shù)
據(jù)滿足的拓?fù)潢P(guān)系規(guī)則。當(dāng)然,通過修改拓?fù)潢P(guān)系類的定義,就能夠方便地改變
對拓?fù)潢P(guān)系約束的要求。這給空間數(shù)據(jù)管理帶來了很大的靈活性。
1.4.5WebServices
WebServices是一種分布計(jì)算技術(shù)(像CORBA,RMI,EJB等等),容許研發(fā)
人員創(chuàng)建客戶端/服務(wù)端應(yīng)用。WebService使用HTTP傳輸消息(像服務(wù)請求和
響應(yīng)),使用標(biāo)準(zhǔn)的XML語言,具有平臺(tái)無關(guān)性和語言無關(guān)性。在研發(fā)本系統(tǒng)的
過程中,我們利用WebServices技術(shù),為B/S和C/S模式之間,提供了統(tǒng)一的權(quán)
限、日志、組織機(jī)構(gòu)的二次開發(fā)接口,方便用戶擴(kuò)展軟件功能。這些二次開發(fā)接
口是:
?GetAllMethodData
?GetAllMethodDataByType
?GetA11MethodDataType
?GetAppRNUser
?GetApplicationData
?GetApplicationMethodData
?GetApplicationName
?GetApplicationObjectMethodData
?GetApplicationUrl
10
?GetDR2User
?GetLog
?GetLoginlnformation
?GetLoginTime
?GetLoginTokenNumber
?GetModDesc
?GetModVersion
?GetObjectMethod
?GetObjectName
?GetObjectRNMethod
?GetObjectRNUser
?GetTableCondition
?GetTableField
?GetTime
?GetUserCSName
?GetUserDeptID
11
第二章圖形管理
圖形管理子系統(tǒng)面向國土資源相關(guān)業(yè)務(wù)部門和下屬單位,利用地理信息技
術(shù),為工作人員提供土地資源環(huán)境空間數(shù)據(jù)管理、編輯的工作平臺(tái)。子系統(tǒng)主要
包括系統(tǒng)初試化、圖像糾正、基本數(shù)據(jù)編輯、拓?fù)渚庉?、宗地編輯、版本編輯?/p>
時(shí)態(tài)管理、測繪編輯、數(shù)據(jù)檢查、專題圖制作、符號(hào)管理、坐標(biāo)轉(zhuǎn)換、圖屬互查、
元數(shù)據(jù)管理、空間分析、權(quán)限管理、數(shù)據(jù)輸出等功能模塊。
2.1整體設(shè)計(jì)
系統(tǒng)完成了基于ArcEngine和.NET技術(shù)的地籍管理信息系統(tǒng),此系統(tǒng)為C/S
結(jié)構(gòu)體系,采用OraclelOG數(shù)據(jù)庫存貯空間數(shù)據(jù),ArcSDE作為空間數(shù)據(jù)庫的訪
問接口,客戶端通過ArcEngine的數(shù)據(jù)庫接口,對存貯在中心數(shù)據(jù)庫的空間數(shù)據(jù)
進(jìn)行訪問,從而實(shí)現(xiàn)了多人同時(shí)訪問、更新數(shù)據(jù)庫,并且可以時(shí)實(shí)時(shí)地查看其他
人對數(shù)據(jù)庫的更新。
本系統(tǒng)的空間數(shù)據(jù)顯示部分采用了ArcEngine的Map控件和PageLayout控
件,并將這兩個(gè)控件和一個(gè)隱含的ArcEngine的Toolbar控件進(jìn)行關(guān)聯(lián),將命令
的實(shí)現(xiàn)和命令狀態(tài)的顯示分開,從而擺脫了Toolbar顯示不美觀,操作不方便的
問題。在地籍方面提供了多種手段方便工作人員進(jìn)行系統(tǒng)的維護(hù)和操作,提供了
快速入庫和更新的功能。
系統(tǒng)的各個(gè)功能主要分為兩種類型:工具和命令。工具(tool)含義是當(dāng)用戶
選擇該命令時(shí)當(dāng)前鼠標(biāo)就進(jìn)入到該工具的工作態(tài),比如當(dāng)用戶選擇放大工具時(shí)鼠
標(biāo)就進(jìn)入到放大的狀態(tài),用戶可以持續(xù)使用此工具,直到用戶選擇其他的工具。
命令(command)的含義是該命令只在用戶點(diǎn)擊該菜單或工具按鈕時(shí)只執(zhí)行一次,
而用戶的鼠標(biāo)狀態(tài)不會(huì)發(fā)生變化。ArcEngine提供了工具和命令的基本虛擬基
類,對其進(jìn)行擴(kuò)展實(shí)現(xiàn)了多種自定義功能,比如數(shù)據(jù)的編輯、宗地的查詢、宗地
12
的歷史查詢等。各個(gè)自定義功能或命令可以和主程序放在一個(gè)應(yīng)用程序里也可以
放在其他動(dòng)態(tài)庫中,應(yīng)用程序都可以方便的使用,在需要時(shí)可以方便的進(jìn)行維護(hù)
和更新。
2.1.1功能模塊命名規(guī)則
功能模塊的劃分基于面向?qū)ο蟮木幊趟枷耄裱耗K的大小適中,體積太
大的模塊,往往功能復(fù)雜,對于這樣的模塊,要進(jìn)行功能分解,劃分為多個(gè)模塊;
同一功能模塊中代碼復(fù)用率最高、功能相似度最大的原則。命名原則:模塊名稱
由三部分構(gòu)成:命名標(biāo)識(shí)符、子系統(tǒng)名稱和模塊名稱,命名形式為:命名標(biāo)識(shí)符
—子系統(tǒng)名稱一模塊名稱。其中,命名標(biāo)識(shí)符用一個(gè)字母表示(m表示功能模塊,
s表示子系統(tǒng),f表示函數(shù)等);子系統(tǒng)名稱由子系統(tǒng)名稱每個(gè)字漢語拼音的首字
母表示;模塊名稱由模塊名稱每個(gè)漢語拼音的首字母表示。如m_SJGL_CXFX表示
數(shù)據(jù)管理子系統(tǒng)中的查詢分析模塊。
2.1.2子系統(tǒng)模塊清單
模塊名稱模塊標(biāo)識(shí)符父模塊標(biāo)識(shí)符
系統(tǒng)初試化m_SJGL_XTCSHs_SJGL
圖像糾正m_SJGL_TXJZs_SJGL
數(shù)據(jù)顯不m_SJGL_SJXSs_SJGL
數(shù)據(jù)輸入m_SJGL_SJSRs_SJGL
數(shù)據(jù)編輯m_SJGL_KJSJBJs_SJGL
數(shù)據(jù)檢查m_SJGL_SJJCs_SJGL
符號(hào)管理m_SJGL_FHGLs_SJGL
空間分析m_SJGL_KJFXs_SJGL
圖屬互查m_SJGL_TSHCs_SJGL
元數(shù)據(jù)管理m_SJGL_YSJGLs_SJGL
數(shù)據(jù)輸出m__SJGL_SJSCs_SJGL
13
權(quán)限管理m_SJGL_QXGLs_SJGL
2.1.3子系統(tǒng)界面設(shè)計(jì)
數(shù)據(jù)管理子系統(tǒng)基于C/S結(jié)構(gòu),采用傳統(tǒng)的Windows界面風(fēng)格進(jìn)行設(shè)計(jì),界
面主線以菜單欄、工具欄、圖形操作窗口、圖層控制浮動(dòng)框等主要部分構(gòu)成。同
時(shí),為了方便用戶的操作在適當(dāng)?shù)牡胤竭€設(shè)計(jì)有右鍵彈出菜單、快捷鍵等輔助功
能。主界面包括菜單欄、數(shù)據(jù)列表、圖形操作工具條、浮動(dòng)窗口、圖形顯示/操
作窗口等四部分構(gòu)成。其具體設(shè)計(jì)如下圖所示:
菜單欄
工具欄
數(shù)據(jù)列表框圖形顯示區(qū)域
主菜單按文件、編輯、視圖、選擇、工具、窗口、和幫助等部分進(jìn)行組織。
其中,其中視圖控制各個(gè)窗口的顯示和圖形縮放等功能,工具里控制各個(gè)工具欄
的顯示,關(guān)于圖形的操作大部分在各個(gè)工具欄內(nèi)。
有關(guān)圖形顯示編輯的界面應(yīng)包括三大部分:圖形顯示操作工具條、圖層控制
框、圖形顯示區(qū)域。其具體設(shè)計(jì)如下圖所示:
14
空間分析和專題圖制作的界面應(yīng)設(shè)計(jì)成向?qū)降娘L(fēng)格,一步步引導(dǎo)用戶進(jìn)行
處理。界面應(yīng)友好地設(shè)計(jì)成只讓用戶選擇用什么數(shù)據(jù)、做什么操作、結(jié)果存放到
哪里等參數(shù),系統(tǒng)即可自動(dòng)完成相應(yīng)的操作。具體設(shè)計(jì)界面如下圖所示:
2.2功能設(shè)計(jì)
2.2.1系統(tǒng)初始化
2.2.1.1模塊概述
該模塊要求用戶輸入坐標(biāo)范圍、高程范圍、精度等相關(guān)基本信息后,自動(dòng)在
Oracle中的企業(yè)空間數(shù)據(jù)庫中或Access個(gè)人空間數(shù)據(jù)庫中,建立給定的空間數(shù)
15
據(jù)庫結(jié)構(gòu),包括數(shù)據(jù)圖層、標(biāo)注圖層和相關(guān)屬性表結(jié)構(gòu),同時(shí)建立應(yīng)有的拓?fù)湟?guī)
則,比如宗地中的界址點(diǎn)在界址線上,界址線在宗地邊界上,宗地之間不能有交
叉,建筑物在宗地內(nèi)部等等。
2.2.1.2主要功能
系統(tǒng)初始化主要包括以下兩個(gè)方面:首先,在用戶能夠使用本軟件的其他功
能前,用戶必須要建立程序運(yùn)行的環(huán)境。包括數(shù)據(jù)庫和其他的相關(guān)數(shù)據(jù)。其次,
在用戶每次啟動(dòng)軟件后,還需要一個(gè)初始化,這次是把跟系統(tǒng)有關(guān)的,保證系統(tǒng)
能夠正常運(yùn)行的數(shù)據(jù)載入系統(tǒng)中,保存起來。
2.2.1.3相關(guān)技術(shù)
分析過程中主要使用的技術(shù)有ArcSDE數(shù)據(jù)庫模式對象、分析器設(shè)計(jì)模式、
XML技術(shù)。
其中最總要的方面在于ArcSDE數(shù)據(jù)庫模式對象和XML文件的解析。ArcSDE
數(shù)據(jù)庫模式對象是ESRI公司在ArcObjects中提供的一種對空間數(shù)據(jù)庫的描述規(guī)
范。該描述規(guī)范在內(nèi)容上符合OpenGIS的空間數(shù)據(jù)庫元數(shù)據(jù)規(guī)范。并且提供針
對ArcSde的擴(kuò)展功能。它詳細(xì)地定義了整個(gè)空間數(shù)據(jù)庫所包含的數(shù)據(jù)對象,對
象間的關(guān)系等??梢杂糜诳臻g數(shù)據(jù)庫結(jié)構(gòu)的交換。
其次是XML技術(shù)。XML是可擴(kuò)展的標(biāo)記語言。允許用戶自己定義各種結(jié)構(gòu)化
的標(biāo)簽來表達(dá)數(shù)據(jù)的意義,給用戶表達(dá)數(shù)據(jù)帶來了很大的便利,因此,XML成為
目前數(shù)據(jù)交換的最流行的方式。數(shù)據(jù)庫模式文件就是用XML的方式來表達(dá)的。在
系統(tǒng)中涉及到了修改空間數(shù)據(jù)庫投影坐標(biāo)系統(tǒng),這是通過修改XML文件來達(dá)到
的。而建立數(shù)據(jù)庫的整個(gè)過程就是在讀取XML文件中的描述信息來建立ArcSDE
數(shù)據(jù)庫模式對象。
2.2.1.4輸入項(xiàng)
模塊名稱功能項(xiàng)具體操作輸入?yún)?shù)
16
系統(tǒng)初始化模塊企業(yè)數(shù)據(jù)庫連接數(shù)據(jù)庫服務(wù)器名,服務(wù)名(端口
m_SJGL_XTCSH初始化號(hào)),用戶名,密碼
設(shè)置空間數(shù)據(jù)庫參數(shù)投影參數(shù)(通過選擇投影
文件得到),X、Y的最大
最小值,精度,高程最大
最小值。
個(gè)人數(shù)據(jù)庫建立數(shù)據(jù)庫文件名,具體路徑
初始化設(shè)置空間數(shù)據(jù)庫參數(shù)投影參數(shù)(通過選擇投影
文件得到),X、Y的最大
最小值,精度,高程最大
最小值。
設(shè)置符號(hào)得到具體圖層并為之符號(hào)庫文件
設(shè)置具體符號(hào)
輸出項(xiàng)
模塊名稱功能項(xiàng)具體操作輸出參數(shù)
系統(tǒng)初始化模塊企業(yè)數(shù)據(jù)庫連接數(shù)據(jù)庫企業(yè)空間數(shù)據(jù)庫工作空
m_SJGL_XTCSH初始化間
m_SUGL_STCZ設(shè)置空間數(shù)據(jù)庫參數(shù)企業(yè)空間數(shù)據(jù)庫圖層的
數(shù)據(jù)集
個(gè)人數(shù)據(jù)庫建立數(shù)據(jù)庫個(gè)人空間數(shù)據(jù)庫工作空
初始化間
設(shè)置空間數(shù)據(jù)庫參數(shù)個(gè)人空間數(shù)據(jù)庫圖層的
數(shù)據(jù)集
設(shè)置符號(hào)得到具體圖層并為之帶有符號(hào)信息的mxd工
設(shè)置具體符號(hào)程文件。
模塊流程
2.2.2數(shù)據(jù)漫游
2.2.2.1模塊概述
該模塊完成對空間數(shù)據(jù)視圖的操作,主要包括放大、縮小、漫游空間數(shù)據(jù);
視圖縮放到當(dāng)前圖層、視圖縮放到所有圖層;設(shè)置視圖參數(shù),包括改變視圖顯示
單位、改變視圖風(fēng)格(視圖的背景色、視圖邊框風(fēng)格、是否顯示滾動(dòng)條)等。放
大操作包括單點(diǎn)放大(按固定比例放大)和矩形框放大(圖形放大到用戶所繪的
矩形框范圍)??s小操作包括單點(diǎn)縮小(按固定比例縮?。┖途匦慰蚩s小(圖形
縮小到用戶所繪的矩形框范圍)。這些功能以右鍵快捷菜單(用戶在視圖中點(diǎn)擊
右鍵時(shí))、主菜單和工具欄三種方式提供。
2.2.2.2模塊功能
本系統(tǒng)為用戶對數(shù)據(jù)的查看提供了多種選擇。包括基本的放大、縮小、依比
例放大和依比例縮小,移動(dòng)和全圖功能。其中放大工具的功能原理是:當(dāng)用戶在
地圖窗口用鼠標(biāo)上拉出窗口后,系統(tǒng)便將此窗口更新為地圖控件的當(dāng)前窗口。窗
口縮小的原理是:當(dāng)用戶在地圖窗口用鼠標(biāo)上拉出窗口后,系統(tǒng)計(jì)算出該窗口和
當(dāng)前窗口的比例系數(shù),然后將當(dāng)前窗口按該比例系數(shù)進(jìn)行縮小。移動(dòng)功能是將地
圖的中心不斷改變,來滿足用戶查看的需要。此外還提供了上一視圖和下一視圖
功能,用戶可以按順序回退或前進(jìn)到某個(gè)視圖。
鷹眼功能,在一個(gè)小窗口中顯示地圖的整體,當(dāng)用戶在小窗口里選擇時(shí),主
窗口移動(dòng)到所選擇的位置,從而方便用戶的瀏覽功能。
行政區(qū)瀏覽,在系統(tǒng)初始化的時(shí)候,對行政區(qū)、街道、街坊采用樹狀結(jié)構(gòu)按
三級(jí)結(jié)構(gòu)進(jìn)行顯示,將該地區(qū)(政區(qū)、街道、街坊)的范圍存儲(chǔ)到同一樹狀節(jié)點(diǎn)
18
里面,當(dāng)用戶選擇某個(gè)節(jié)點(diǎn)時(shí)當(dāng)前地圖就移動(dòng)到該地區(qū)的范圍,加快的用戶根據(jù)
行政區(qū)進(jìn)行瀏覽的速度。
2.2.2.3輸入項(xiàng)
模塊名稱功能項(xiàng)具體操作輸入?yún)?shù)
數(shù)據(jù)顯示模塊放大單點(diǎn)放大當(dāng)前放大位置
m_SUGL_STCZ矩形框放大矩形框范圍
縮小單點(diǎn)縮小當(dāng)前縮小位置
矩形框縮小矩形框范圍
漫游漫游移動(dòng)前位置
移動(dòng)后位置
視圖參數(shù)設(shè)置設(shè)置視圖單位視圖單位
設(shè)置視圖背景色視圖背景色
設(shè)置視圖邊框風(fēng)格視圖邊框風(fēng)格
設(shè)置視圖滾動(dòng)條視圖滾動(dòng)條
縮放至當(dāng)前圖層縮放至當(dāng)前圖層指定圖層作為當(dāng)前圖層
輸出項(xiàng)
模塊名稱功能項(xiàng)具體操作輸出參數(shù)
視圖操作模塊放大單點(diǎn)放大以當(dāng)前位置按固定比例
m_SUGL_STCZ放大的視圖
矩形框放大放大至矩形框范圍視圖
縮小單點(diǎn)縮小以當(dāng)前位置按固定比例
縮小的視圖
矩形框縮小縮小至矩形框范圍視圖
漫游漫游視圖移動(dòng)到指定位置
視圖參數(shù)設(shè)置設(shè)置視圖單位視圖單位被設(shè)置成指定
單位
設(shè)置視圖背景色視圖背景被設(shè)置成指定
顏色
設(shè)置視圖邊框風(fēng)格視圖框被設(shè)置成指定風(fēng)
格
設(shè)置視圖滾動(dòng)條視圖滾動(dòng)條被設(shè)置成有
或無
縮放至當(dāng)前圖層縮放至當(dāng)前圖層視圖縮放到當(dāng)前圖層
縮放至所有圖層縮放至所有圖層視圖縮放到所有圖層
19
模塊流程
用戶打開一個(gè)(或若干個(gè))圖層,就可進(jìn)行放大、縮小、漫游等操作,操作完
成后即在視圖上顯示相應(yīng)的操作結(jié)果。模塊流程如下圖所示:
2.2.3地圖糾正
2.2.3.1主要功能
?影像圖定位到網(wǎng)格
?影像圖糾正
?地圖的局部放大和影像圖定位
?數(shù)據(jù)保存
?鋪設(shè)網(wǎng)格/去掉網(wǎng)格
2.2.3.2功能描述
1、影像圖定位到網(wǎng)格:該組功能主要是用于在糾正前將影像圖移動(dòng)到一個(gè)
比較方便處理的角度和位置。有時(shí)候影像圖可能是傾斜的或者初始位置不對,或
者在載入到系統(tǒng)中后,由于沒有坐標(biāo)信息,而不知道被系統(tǒng)定位到哪里去了。這
時(shí)候就可以用這組功能。在影像圖進(jìn)入系統(tǒng)的時(shí)候就會(huì)記住他的位置,以后每次
糾正后也會(huì)跟新他的新位置,而網(wǎng)格的位置是固定的,所以總是可以準(zhǔn)確地將影
像圖定為到網(wǎng)格中去。
2、影像圖糾正:糾正是使用ArcGISEngine中提供的糾正功能進(jìn)行糾正。
主要是四點(diǎn)糾正,也可以多點(diǎn)糾正。糾正的過程如下:用戶選取影像點(diǎn)和矢量點(diǎn),
20
然后點(diǎn)擊糾正,就可以了。在這中間可以插入其他的操作。糾正一般選用四點(diǎn)糾
正就可以了(至少要四點(diǎn)糾正),四點(diǎn)糾正的時(shí)候,這四個(gè)點(diǎn)的次序可以任意選
取。但是有時(shí)候需要多點(diǎn)糾正,超過四點(diǎn)糾正的部分的點(diǎn)必須一一對應(yīng)地選取。
3、地圖的局部放大和影像圖定位。在糾正的過程中,需要將地圖放大來保
證精度。在選區(qū)了矢量圖上的點(diǎn)后還需要方便的回到影像圖上選取點(diǎn)。這組功能
就可以達(dá)到這個(gè)效果。
4、數(shù)據(jù)保存:在糾正后數(shù)據(jù)可以保存在本地文件系統(tǒng)中,也可以保存到數(shù)
據(jù)庫中。在本地文件系統(tǒng)中保存的時(shí)候,不會(huì)修改原始的數(shù)據(jù)文件,而是在同一
個(gè)目錄下建立幾個(gè)描述文件,記錄糾正的過程。保存到數(shù)據(jù)庫中的時(shí)候,會(huì)在數(shù)
據(jù)庫中建立影像圖數(shù)據(jù)集和對應(yīng)的元數(shù)據(jù)描述。數(shù)據(jù)保存的流程如下:首先連
接影像圖數(shù)據(jù)工作空間,提示用戶輸入有關(guān)的數(shù)據(jù)信息。然后建立一個(gè)影像圖數(shù)
據(jù)集,用糾正后的影像圖填充數(shù)據(jù)集,對數(shù)據(jù)集建立金字塔模型。這些操作都成
功后將用戶輸入的數(shù)據(jù)信息存入數(shù)據(jù)庫。
5、網(wǎng)格管理:在地圖上鋪設(shè)網(wǎng)格輔助糾正。網(wǎng)格可以重復(fù)鋪設(shè)和刪除。鋪
設(shè)網(wǎng)格的時(shí)候,會(huì)自動(dòng)保存網(wǎng)格對應(yīng)的圖幅編號(hào)。
2.2.4數(shù)據(jù)入庫
2.2.4.1模塊概述
該模塊完成對空間數(shù)據(jù)和相關(guān)屬性數(shù)據(jù)的輸入工作,包括點(diǎn)、線(包括線段、
弧段)、面(包括多邊形、矩型、圓)、標(biāo)注(包括數(shù)字,文字)的輸入,宗地信
息的輸入,影像要素輸入。輸入方法包括鼠標(biāo)的屏幕跟蹤輸入,對話框交互式輸
入,VCT文件導(dǎo)入等。信息輸入完畢自動(dòng)根據(jù)圖層的符號(hào)信息進(jìn)行符號(hào)設(shè)置。圖
層數(shù)據(jù)保存到企業(yè)數(shù)據(jù)庫或個(gè)人數(shù)據(jù)庫或shp文件中。
2.2.4.2模塊功能
數(shù)據(jù)入庫在表現(xiàn)形式上包括一般點(diǎn)線面入庫,也包括復(fù)雜地物的輸入,在輸
21
入方法上包括鼠標(biāo)輸入也包括文本文件輸入。
1、簡單地物輸入
簡單地物是指當(dāng)進(jìn)行符號(hào)顯示的時(shí)候,只需要和符號(hào)進(jìn)行掛接就可以實(shí)現(xiàn)地
物顯示的地物,比如測量控制點(diǎn)。在數(shù)據(jù)輸入的時(shí)候不需要進(jìn)行多余的修飾操作,
顯示部分只交給符號(hào)功能。
2、復(fù)雜地物輸入
復(fù)雜地物是指簡單的輸入很難滿足顯示的需要,或者輸入很復(fù)雜,比如樓梯
的輸入在進(jìn)行每個(gè)臺(tái)階的輸入時(shí),是非常費(fèi)力的,其實(shí)只要告訴臺(tái)階的幾個(gè)點(diǎn)位,
就可以繪制出所有的臺(tái)階。這時(shí)候光用符號(hào)是不能滿足樓梯顯示的,特別是因?yàn)?/p>
樓梯是根據(jù)比例變化的,具有面積,所以需要繪制輔助臺(tái)階線來顯示。這就是復(fù)
雜地物,系統(tǒng)把所有不能用符號(hào)顯示的地物歸為復(fù)雜地物,在輸入時(shí)也做了相應(yīng)
的處理。
3、鼠標(biāo)輸入
系統(tǒng)根據(jù)BaseTool虛擬基類實(shí)現(xiàn)了NewGeometrySketch和NewArcSketch
工具類來滿足用戶的點(diǎn)、線、面和弧段的輸入的需要。NewGeometirySketch用于
點(diǎn)線面的輸入,它只支持直線和邊界為直線的面,當(dāng)需要弧段的時(shí)候需要選擇
NewArcSketch工具。在NewGeometrySketch里實(shí)現(xiàn)了OnCreate,OnMouseDown,
OnMouseMove,OnDblClick等方法,當(dāng)用戶選擇此功能并在地圖控件上點(diǎn)擊的時(shí)
候此類可以接收到相關(guān)坐標(biāo)信息。鼠標(biāo)輸入是逐點(diǎn)進(jìn)行輸入,用戶要對輸入的點(diǎn)
進(jìn)行重組,形成所需要的數(shù)據(jù)類型。在ArcSDE里支持三種簡單的數(shù)據(jù)類型:點(diǎn)、
線、面。點(diǎn)最簡單,具有X、Y坐標(biāo)。線和面比較復(fù)雜,下面單獨(dú)介紹。
線最少有兩點(diǎn)組成,在結(jié)構(gòu)上線由多個(gè)Part組成,每個(gè)Part由一個(gè)叫做路
徑(Path)的類生成,各個(gè)Path不能相互交叉,而每個(gè)Path由是由多個(gè)Segment
22
組成,每個(gè)Segment可以是直線也可以是曲線。線的各個(gè)部分之間是相互獨(dú)立的,
所以線在顯示上可以是多個(gè)互不想連的線,而這多個(gè)互不相連的線在數(shù)據(jù)庫里是
按一條記錄存儲(chǔ)的,所以節(jié)省了很多存儲(chǔ)空間,比如對于樓梯臺(tái)階,我們把各個(gè)
臺(tái)階線做為一個(gè)個(gè)Part組成一條線,在數(shù)據(jù)庫里只存一次。
面的含義大致和線相同,只是面的部分是由(環(huán))Ring構(gòu)成,環(huán)必須是閉
合的,并且不能相互疊加。
在NewGeometrySketch里添加了右鍵菜單,實(shí)現(xiàn)了多種輸入方式,包括方向、
偏轉(zhuǎn)、長度、改變長度、絕對坐標(biāo)、相對坐標(biāo)、角度加長度、平行、垂直、流化、
完成、完成部分、完成部分并閉合、完成并閉合、刪除草圖和捕捉等。這幾個(gè)功
能主要是根據(jù)當(dāng)前用戶已經(jīng)輸入的坐標(biāo)數(shù)據(jù),或者根據(jù)方向進(jìn)行輸入,并提供了
方法,使用戶可以輸入具有多個(gè)部分的圖形。
方向方法是允許用戶在輸入的角度下進(jìn)行輸入,其中的方向根據(jù)笛卡兒坐標(biāo)
系統(tǒng)計(jì)算,以屏幕的水平向右的方向?yàn)閄軸方向,屏幕的豎直向上方向?yàn)閅軸方
向。當(dāng)用戶確定角度后,就只可以在此角度方向上輸入坐標(biāo)點(diǎn)。
偏轉(zhuǎn)方法允許用戶在上一條己經(jīng)輸入的線的方向上進(jìn)行角度的偏轉(zhuǎn),方便用
戶對相對角度進(jìn)行輸入。當(dāng)用戶確定角度后,就只可以在此偏轉(zhuǎn)方向上輸入坐標(biāo)
點(diǎn)。
長度方法是讓用戶輸入一定的長度,然后只限制用戶在以上一個(gè)點(diǎn)為圓心,
以此長度為半徑的圓上進(jìn)行輸入坐標(biāo)點(diǎn)。
改變長度指用戶在輸入線段或面的邊后允許其重新設(shè)置所輸入的線的長度,
而不用從新開始輸數(shù)據(jù)。
絕對坐標(biāo)是讓用戶直接輸入坐標(biāo)值來輸入點(diǎn)值。
相對坐標(biāo)是讓用戶輸入相對于上一個(gè)點(diǎn)的坐標(biāo)值。
23
角度加長度是,讓用戶輸入以上一個(gè)點(diǎn)為原點(diǎn)的角度值和長度值,并求出其
坐標(biāo)值,來輸入到系統(tǒng)中。
平行是讓用戶輸入平行于水平線的線段。
垂直是讓用戶輸入垂直于水平線的線段。
選擇流化是不用用戶按鼠標(biāo)而根據(jù)坐標(biāo)移動(dòng)生成點(diǎn)。
完成功能是結(jié)束當(dāng)前的繪制操作,并形成一個(gè)合法的圖形將其存儲(chǔ)到數(shù)據(jù)庫
中。
完成部分是指,對于線來說繪制當(dāng)前的Path完成,開始繪制新的Path,對
與面來說,繪制當(dāng)前的Ring已經(jīng)完成,開始繪制新的Ring。
完成部分并閉合只是試用于線要素,是將繪制完成的Path進(jìn)行閉和操作。
完成并閉合只是試用于線要素,是將繪制完成的要素進(jìn)行閉和操作。
刪除草圖是將已經(jīng)繪制的草圖刪除,從新開始繪制,因?yàn)椴輬D只是在臨時(shí)層
中顯示,并不影響數(shù)據(jù)庫。
4.文本文件輸入
文本文件的輸入使用于宗地信息的輸入。其格式為:
編號(hào)界址點(diǎn)個(gè)數(shù)宗地號(hào)宗地地類土地使用者
界址點(diǎn)編號(hào)X坐標(biāo)Y坐標(biāo)Z坐標(biāo)
當(dāng)用戶選擇從文本輸入的候就可以根據(jù)這些界址點(diǎn)坐標(biāo)生成宗地,并填寫相
應(yīng)的屬性。
24
在鼠標(biāo)輸入的過程中可以在輸入直線和弧段的過程中相互切換,也就是說一
條線可以由幾段直線和幾段弧段組成,不需要多余的操作它們就結(jié)合到一起。
系統(tǒng)提供了輸入模版來供用戶選擇輸入的對象。在我們的數(shù)據(jù)庫設(shè)計(jì)上,是
按照邏輯上進(jìn)行了分類,但是由于ArcSDE中圖層只能存儲(chǔ)點(diǎn)、線、面三種簡單
要素,有的圖層里面的分類并不存在邏輯關(guān)系,如果讓用戶自己去選擇是很費(fèi)時(shí)
間和精力的,只有用戶非常熟悉圖層的分類時(shí)才可以快速找到,我們把所有的要
素重新按照邏輯進(jìn)行了分類,制作了輸入模版對話框,方便了用戶在輸入時(shí)進(jìn)行
選擇。系統(tǒng)實(shí)現(xiàn)了兩類輸入模版一種是單純圖形的模版,一種是標(biāo)注輸入模版,
在輸入標(biāo)注線后要輸入相應(yīng)的注記文字。
2.2.4.3輸入項(xiàng)
模塊名稱功能項(xiàng)具體操作輸入?yún)?shù)
數(shù)據(jù)輸入模塊點(diǎn)的輸入鼠標(biāo)點(diǎn)擊當(dāng)前鼠標(biāo)點(diǎn)擊的地圖位置
m_SJGL_SJSR
線的輸入鼠標(biāo)點(diǎn)擊,移動(dòng),雙擊鼠標(biāo)點(diǎn)擊的各個(gè)地圖坐標(biāo)
結(jié)束
面的輸入鼠標(biāo)點(diǎn)擊,移動(dòng),雙擊鼠標(biāo)點(diǎn)擊的各個(gè)地圖坐標(biāo)
結(jié)束
宗地的輸入鼠標(biāo)點(diǎn)擊,移動(dòng),雙擊鼠標(biāo)點(diǎn)擊的各個(gè)地圖坐標(biāo)
結(jié)束
影像要素輸入命令行輸入文件路徑和各個(gè)參數(shù)
對話框交互輸入
標(biāo)注輸入鼠標(biāo)點(diǎn)擊標(biāo)注要素鼠標(biāo)位置,標(biāo)注信息
信息輸入鼠標(biāo)選擇實(shí)體鼠標(biāo)位置,屬性信息
2.2.4.4輸出項(xiàng)
模塊名稱功能項(xiàng)具體操作輸出參數(shù)
數(shù)據(jù)輸入模塊點(diǎn)的輸入鼠標(biāo)點(diǎn)擊構(gòu)造的點(diǎn)實(shí)體
m_SJGL_SJSR
線的輸入鼠標(biāo)點(diǎn)擊,移動(dòng),雙擊構(gòu)造的線實(shí)體
結(jié)束
面的輸入鼠標(biāo)點(diǎn)擊,移動(dòng),雙擊構(gòu)造的面實(shí)體
結(jié)束
宗地的輸入鼠標(biāo)點(diǎn)擊,移動(dòng),雙擊構(gòu)造的包括界址點(diǎn)、界址
結(jié)束線、宗地面實(shí)體
25
影像要素輸入命令行輸入無
對話框交互輸入
標(biāo)注輸入鼠標(biāo)點(diǎn)擊標(biāo)注要素標(biāo)注要素
信息輸入鼠標(biāo)選擇實(shí)體實(shí)體要素
2.2.4.5模塊流程
2.2.5數(shù)據(jù)編輯
2.2.5.1模塊概述
在拓?fù)渚庉嫽A(chǔ)之上實(shí)現(xiàn)方便的宗地編輯,做到界址點(diǎn)的精確編輯,同步修
改宗地和界址線,能在界址點(diǎn)被拖動(dòng)時(shí),實(shí)現(xiàn)宗地和界址線的同步,增刪三者時(shí),
自動(dòng)修改三者之間的關(guān)系。當(dāng)?shù)貕K的合并、分割、混合分并功能,自動(dòng)修改三者
之間的拓?fù)潢P(guān)系。根據(jù)地塊屬性自動(dòng)生成宗地注記功能(可動(dòng)態(tài)組合,任意注記
內(nèi)容),支持上圖功能殊數(shù)據(jù)比如宗地進(jìn)行進(jìn)行相應(yīng)的拓?fù)渚庉?,做到在移?dòng)點(diǎn)
時(shí)相關(guān)的線和面做出相應(yīng)的反應(yīng),在拓?fù)渚庉嫽A(chǔ)之上實(shí)現(xiàn)方便的宗地編輯,做
到界址點(diǎn)的精確編輯,同步修改宗地和界址線,能在界址點(diǎn)被拖動(dòng)時(shí),實(shí)現(xiàn)宗地
和界址線的同步,增刪三者時(shí),自動(dòng)修改三者之間的關(guān)系。當(dāng)?shù)貕K的合并、分割、
混合分并功能,自動(dòng)修改三者之間的拓?fù)潢P(guān)系。根據(jù)地塊屬性自動(dòng)生成宗地注記
26
功能(可動(dòng)態(tài)組合,任意注記內(nèi)容),支持上圖功能。因?yàn)樵谕ㄟ^SDE存儲(chǔ)的數(shù)
據(jù)只有經(jīng)過設(shè)置版本之后才可以進(jìn)行編輯,所以版本的管理在系統(tǒng)中非常重要。
此模塊還實(shí)現(xiàn)版本的新建、版本的切換、版本之間(在同一繼承樹上)的協(xié)調(diào)和版
本沖突的解決。版本的編輯模塊實(shí)現(xiàn)的基礎(chǔ)之上,做到宗地的時(shí)態(tài)管理,實(shí)現(xiàn)地
籍實(shí)體在生命周期內(nèi)狀態(tài)時(shí)間序列的管理。對新老地籍實(shí)體之間的繼承關(guān)系進(jìn)行
管理。能夠進(jìn)行地籍實(shí)體的動(dòng)態(tài)回溯,包括單宗地歷史回溯,單證書歷史回溯。
能夠按照地理單元進(jìn)行歷史切片恢復(fù)。此外還提供常規(guī)的坐標(biāo)轉(zhuǎn)換,地籍測量功
能(包括量距法和極坐標(biāo)法測量與作圖功能)。
2.2.5.2模塊功能
在數(shù)據(jù)進(jìn)行輸入完畢或者輸入過程中可以對數(shù)據(jù)進(jìn)行響應(yīng)的編輯。系統(tǒng)實(shí)現(xiàn)
了圖形移動(dòng)、旋轉(zhuǎn)、復(fù)制、粘貼、回退、前進(jìn)、添加接點(diǎn)、移動(dòng)接點(diǎn)等基本功能,
此外系統(tǒng)還針對地籍信息系統(tǒng)的需要增加了宗地編輯功能,來實(shí)現(xiàn)宗地層、界址
點(diǎn)層和界址線層之間的拓?fù)潢P(guān)系的自動(dòng)建立。根據(jù)需要,還增加了高級(jí)編輯功能,
來實(shí)現(xiàn)要素或要素之間的編輯操作。下面分別進(jìn)行介紹。
1、一般編輯
要素的操作,包括移動(dòng)復(fù)制等。在操作前需要對要素進(jìn)行選擇,等到要素高
亮后可以把鼠標(biāo)移動(dòng)到要素上面,一旦鼠標(biāo)變成十字狀就可以拖動(dòng)鼠標(biāo)進(jìn)行要素
移動(dòng)了,等鼠標(biāo)抬起時(shí)移動(dòng)操作結(jié)束。如果需要對要素進(jìn)行節(jié)點(diǎn)編輯需要進(jìn)入到
節(jié)點(diǎn)編輯狀態(tài),對要素進(jìn)行雙擊,等要素的節(jié)點(diǎn)高亮顯示的時(shí)候就可以對起進(jìn)行
移動(dòng)。移動(dòng)完畢只要在要素外面單擊就可以退出節(jié)點(diǎn)編輯狀態(tài),并把移動(dòng)后的結(jié)
果保存到數(shù)據(jù)庫中。
2、宗地編輯
在通過輸入功能輸入一個(gè)宗地面后,并沒有輸入宗地的屬性信息,也沒有對
其增加相應(yīng)的界址點(diǎn)和界址線。本系統(tǒng)增加了宗地注記功能首先需要選擇宗地,
27
然后選擇宗地編輯里的宗地注記,添加完宗地信息后,系統(tǒng)根據(jù)現(xiàn)有的圖形狀況,
完善宗地的拓?fù)湫畔ⅰ?/p>
我們根據(jù)規(guī)范建立了宗地的拓?fù)湟?guī)則,a.界址點(diǎn)必須在宗地邊界上b.界址
線必須覆蓋宗地的邊界c界址點(diǎn)必須在界址線的端點(diǎn)d宗地不可以相互交叉。
根據(jù)此規(guī)則,我們可以查找出當(dāng)前的宗地是否有共享的界址點(diǎn)和界址線,如
果已經(jīng)存在則需要修改其信息,比如界址點(diǎn)需要增加隸屬宗地的信息和啟點(diǎn)號(hào)和
止點(diǎn)號(hào),界址線需要增加本宗地號(hào)或臨宗地號(hào)。如果缺少界址點(diǎn)和界址線則根據(jù)
需要自動(dòng)添加圖形要素和屬性信息。這樣在以后的信息查詢中就很容易查詢出某
個(gè)宗地的界址點(diǎn)和界址線信息。
3、高級(jí)編輯
本系統(tǒng)以命令和工具的形式實(shí)現(xiàn)了19個(gè)高級(jí)編輯功能。
數(shù)據(jù)拷貝功能,選擇要素,然后在其他地方單擊鼠標(biāo)則會(huì)添加同樣的要素只
是位置改變了,如果要素層和目標(biāo)層相同則要素還會(huì)復(fù)制相同的屬性信息。此外
還可以在不同類型要素的圖層間進(jìn)行復(fù)制比如面層的要素可以復(fù)制到線類型的
圖層中。
線段平滑功能,只對線要素起作用,目的是使要素的兩個(gè)直線線段之間變成
平滑的弧段。只要選擇任意一條線的兩個(gè)鄰接的線段就可以實(shí)現(xiàn)。
繪制矩形和和圓,根據(jù)ArcEngine的橡皮筋類提供的功能實(shí)現(xiàn)。其實(shí)都是面
狀要素。
到達(dá)功能,當(dāng)一條線本應(yīng)接觸到另一條線或面,但是由于繪制的疏忽,沒有
接觸到,此時(shí)就可以采用到達(dá)的功能消除要素間的“虛接”。首先要選擇基準(zhǔn)要
素,然后選擇此功能,點(diǎn)擊線段,相關(guān)的線段就可以自動(dòng)抵觸到基準(zhǔn)要素上。
消除懸掛功能,當(dāng)一條線本應(yīng)接觸到另一條線或面,但是由于繪制的疏忽,
28
使線超出另一個(gè)線或面,此時(shí)就可以采用消除懸掛的功能消除要素間的“懸垂”。
首先要選擇基準(zhǔn)要素,然后選擇此功能,點(diǎn)擊線段,相關(guān)的線段就可以自動(dòng)刪除
多余的“線頭”。
炸開功能,是將一個(gè)多部分的要素分開,比如有不想臨地塊的宗地,原來是
一個(gè)要素,現(xiàn)在要進(jìn)行分割則可以使用炸開功能,將原來的一個(gè)要素變?yōu)楝F(xiàn)在的
多個(gè)要素。編程方法是將原來的每個(gè)部分單獨(dú)剝離出來,然后分別單獨(dú)組成一個(gè)
新的線對象,并將原來的屬性值復(fù)制。
長度分割功能是將一條線按照長度進(jìn)行分割,使用線對象中的IPolycurve
接口中的SplitAtDistance方法完成分割需要。
移動(dòng)功能是將選擇的要素按照相對位置進(jìn)行移動(dòng)。
剪切是用一個(gè)面去裁剪另一個(gè)面,可以選擇性地保留相交部分和相差部分,
還可以使用緩沖區(qū)進(jìn)行裁剪。采用的是面與面的拓?fù)洳僮鞴δ?,可以使用一個(gè)面
對多個(gè)面進(jìn)行剪裁。
緩沖區(qū)功能是在選擇要素的基礎(chǔ)上生成緩沖區(qū),并保存到目標(biāo)圖層上。
平行拷貝是將線要素在指定方向上進(jìn)行平行移動(dòng)復(fù)制。
合并功能和炸開功能正好相反,它是把選擇的多個(gè)要素進(jìn)行合并,組成一個(gè)
多部分要素。采用的是IGeometryCollection接口,將多個(gè)要素合并到其中一
個(gè)要素之上。
聯(lián)合功能和合并功能類似,不過是保留原來的合并之前的對象。
交叉功能將選擇的面要素進(jìn)行拓?fù)洳僮?,將面與面之間交叉的部分保存到目
標(biāo)圖層上。
陣列復(fù)制功能是將選擇的要素在指定方向指定步長和指定復(fù)制個(gè)數(shù)的基礎(chǔ)
29
上對要素進(jìn)行復(fù)制。
旋轉(zhuǎn)功能就是拖動(dòng)要素來進(jìn)行旋轉(zhuǎn)操作。
2.2.5.3輸入項(xiàng)
模塊名稱功能項(xiàng)具體操作輸入?yún)?shù)
數(shù)據(jù)編輯模塊移動(dòng)鼠標(biāo)選中要素后移動(dòng)鼠標(biāo)移動(dòng)中間和移動(dòng)后的
m_SJGL_SJBJ后位置
刪除鼠標(biāo)點(diǎn)擊選中要素,鼠標(biāo)點(diǎn)擊位置,DEL
選擇刪除
復(fù)制鼠標(biāo)點(diǎn)擊選中要素,鼠標(biāo)點(diǎn)擊位置,copy
選擇復(fù)制
陣列鼠標(biāo)點(diǎn)擊選中要素,鼠標(biāo)點(diǎn)擊位置,陣列方向,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 7《不甘屈辱 奮勇抗?fàn)帯罚ń虒W(xué)設(shè)計(jì))2023-2024學(xué)年統(tǒng)編版道德與法治五年級(jí)下冊
- 路基碾壓施工方案
- 上海鋼結(jié)構(gòu)卸貨棚施工方案
- 6《我參與 我奉獻(xiàn)》第一課時(shí)(教學(xué)設(shè)計(jì))2023-2024學(xué)年統(tǒng)編版道德與法治五年級(jí)下冊
- 第二章第一節(jié) 位置和疆域教學(xué)設(shè)計(jì)2023-2024學(xué)年中圖版(北京)地理七年級(jí)上冊
- 2025至2031年中國燈具儀表行業(yè)投資前景及策略咨詢研究報(bào)告
- 部編初中歷史2025年春第6課《隋唐時(shí)期的中外文化交流》教案
- 2025至2031年中國冠齒輪行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國人造粘膠色絲行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國中翼緣H型鋼行業(yè)投資前景及策略咨詢研究報(bào)告
- 藝術(shù)學(xué)概論第一章-彭吉象
- 浙江水利專業(yè)高級(jí)工程師任職資格考試題及答案
- 2024年新課標(biāo)《義務(wù)教育數(shù)學(xué)課程標(biāo)準(zhǔn)》測試題(附含答案)
- 醇基燃料突發(fā)事故應(yīng)急預(yù)案
- 《第一單元口語交際:即興發(fā)言》教案-2023-2024學(xué)年六年級(jí)下冊語文統(tǒng)編版
- 情侶自愿轉(zhuǎn)賬贈(zèng)與協(xié)議書范本
- 綜合實(shí)踐項(xiàng)目 制作水族箱飼養(yǎng)淡水魚 教學(xué)設(shè)計(jì)-2024-2025學(xué)年魯科版生物六年級(jí)上冊
- 公轉(zhuǎn)私付款合同模板
- DB14-T 3043-2024 黃土丘陵溝壑區(qū)水土流失綜合治理技術(shù)規(guī)范
- 青島西海岸新區(qū)2025中考自主招生英語試卷試題(含答案詳解)
- 《氣象學(xué)與氣候?qū)W》全書電子教案B
評(píng)論
0/150
提交評(píng)論