李亞 趙俊三
摘要:針對(duì)建筑物變形監(jiān)測(cè)數(shù)據(jù)庫的數(shù)據(jù)管理問題,利用ArcSDEforSQLserver搭建建筑物變形監(jiān)測(cè)空間數(shù)據(jù)庫,并采用Visual2010+C#編程語言+Arcengine開發(fā)環(huán)境對(duì)ArcSDE數(shù)據(jù)庫連接及空間數(shù)據(jù)加載進(jìn)行了實(shí)例分析。研究結(jié)果表明,ArcSDE空間數(shù)據(jù)引擎技術(shù)能夠較好地進(jìn)行建筑物變形監(jiān)測(cè)空間數(shù)據(jù)庫構(gòu)建,且能夠?qū)崿F(xiàn)空間數(shù)據(jù)和屬性數(shù)據(jù)的統(tǒng)一管理。
關(guān)鍵詞:GIS;ArcSDE;Geodatabase;ArcEngine;建筑物變形監(jiān)測(cè)
DOI:10.11907/rjdk.181121
中圖分類號(hào):TP392
文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-7800(2018)007-0204-05
Abstract:Inviewofthetraditionalbuildingdeformationmonitoringdatabasethatcannotbeabletounifymanagementofspatialdataandattributedata,weuseArcSDEForSQLservetobuildthebuildingdeformationmonitoringspatialdatabase,andemploystheprogramminglanguageofVisual2010+C#andarcenginedevelopmentenvironmenttoconductacasestudyofArcSDEdatabaseconnectionandspatialdataloading.TheresearchshowsthattheArcSDEspacedataenginetechnologycanestablishtheconstructionofbuildingdeformationmonitoringspacedatabasebetter,andcanrealizetheunifiedmanagementofspatialdataandattributedata.
KeyWords:GIS;ArcSDE;Geodatabase;ArcEngine;buildingdeformationmonitoring
0引言
建筑物在建設(shè)和使用過程中,由于基礎(chǔ)地質(zhì)構(gòu)造不均勻、地下水位變化、土體物理性質(zhì)不同、建筑物荷載作用等原因會(huì)產(chǎn)生不同程度的變形[1]。所以在建筑工程建設(shè)和使用過程中需要利用專門的儀器對(duì)建筑物的變形現(xiàn)象進(jìn)行周期性監(jiān)測(cè)。由于在建筑物變形監(jiān)測(cè)工作中涉及大量空間數(shù)據(jù),所以如何高效地對(duì)建筑物變形監(jiān)測(cè)空間數(shù)據(jù)和屬性數(shù)據(jù)進(jìn)行結(jié)合與統(tǒng)一管理成為研究人員亟待解決的問題。
通過查閱相關(guān)文獻(xiàn)資料,從20世紀(jì)90年代開始,我國學(xué)者開始了對(duì)變形監(jiān)測(cè)系統(tǒng)的研究。如李志偉等[2]開發(fā)了集數(shù)據(jù)輸入、計(jì)算、查詢、報(bào)表打印、曲線繪制、變形分析等功能于一體的邊坡變形監(jiān)測(cè)信息系統(tǒng),并將其應(yīng)用于邊坡監(jiān)測(cè)中;石杏喜[3]等研制了具有變形監(jiān)測(cè)數(shù)據(jù)管理、數(shù)據(jù)分析、報(bào)表輸出、圖形管理等功能的變形監(jiān)測(cè)信息系統(tǒng),并將其應(yīng)用于地鐵施工監(jiān)測(cè)中;趙顯富[4]等對(duì)變形監(jiān)測(cè)數(shù)據(jù)庫管理系統(tǒng)進(jìn)行了研發(fā),并分析了數(shù)據(jù)庫的設(shè)計(jì)和實(shí)現(xiàn)。隨著GIS技術(shù)的發(fā)展,研究者們開始進(jìn)行空間數(shù)據(jù)庫研究,基于商業(yè)關(guān)系數(shù)據(jù)庫平臺(tái),結(jié)合SDE中間件技術(shù)進(jìn)行空間數(shù)據(jù)庫研究成為其中的主流方法[5]?;贏rcSDE的空間數(shù)據(jù)庫構(gòu)建技術(shù)被運(yùn)用于各類測(cè)繪數(shù)據(jù)分析系統(tǒng)中[6-9],利用ArcSDE空間數(shù)據(jù)引擎技術(shù)進(jìn)行建筑物變形監(jiān)測(cè)空間數(shù)據(jù)庫構(gòu)建卻并不多見,且基于ArcSDE空間數(shù)據(jù)引擎技術(shù)的空間數(shù)據(jù)庫構(gòu)建研究都是基于ArcSDE與Oracle連接的應(yīng)用研究。因此,本文提出在ArcSDE空間數(shù)據(jù)引擎技術(shù)與SQLServer2008R2平臺(tái)支持下,研究與構(gòu)建建筑物變形監(jiān)測(cè)空間數(shù)據(jù)庫。
1關(guān)鍵技術(shù)介紹
1.1SqlServer關(guān)系數(shù)據(jù)庫
SqlServer是由微軟推廣和開發(fā)的關(guān)系型數(shù)據(jù)庫,其最大優(yōu)勢(shì)在于集成了微軟的各類產(chǎn)品和資源,且提供了強(qiáng)大的可視化界面與高度集成的管理開發(fā)工具。作為一個(gè)社會(huì)普遍通用的數(shù)據(jù)庫管理系統(tǒng),SqlServer關(guān)系型數(shù)據(jù)庫擁有完整的數(shù)據(jù)管理功能。
1.2ArcSDE空間數(shù)據(jù)引擎
ArcSDE是ArcGIS軟件平臺(tái)的一員,主要作為一個(gè)空間數(shù)據(jù)庫中間件技術(shù)。ArcSDE以關(guān)系型數(shù)據(jù)庫為存儲(chǔ)中心,為前端的GIS應(yīng)用程序提供快速的空間數(shù)據(jù)訪問[10]。ArcSDE體系結(jié)構(gòu)如圖1所示,它是在關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)中儲(chǔ)存和管理多用戶空間數(shù)據(jù)庫的通道[11]。ArcSDE可利用原關(guān)系型數(shù)據(jù)庫強(qiáng)大的管理功能,對(duì)空間數(shù)據(jù)和屬性數(shù)據(jù)進(jìn)行統(tǒng)一管理。目前企業(yè)級(jí)GIS系統(tǒng)基本都是利用ArcSDE作為空間數(shù)據(jù)庫引擎,進(jìn)行數(shù)據(jù)庫到客戶端的數(shù)據(jù)交互。ArcSDE支持Oracle、SqlServer、PostgreSQL、IBMDB2和IBMInformix5種關(guān)系型數(shù)據(jù)庫,本文主要利用ArcSDEforSQLserver進(jìn)行建筑物變形監(jiān)測(cè)空間數(shù)據(jù)庫的構(gòu)建。
1.3Geodatabase數(shù)據(jù)模型
Geodatabase是由ESRI推出的一種面向?qū)ο蟮目臻g數(shù)據(jù)模型,其基本對(duì)象組織思想是使用對(duì)象類、關(guān)系類,以及各種網(wǎng)絡(luò)與相關(guān)規(guī)則定義空間實(shí)體,將其有機(jī)地統(tǒng)一起來,綜合表達(dá)現(xiàn)實(shí)實(shí)體及其之間的復(fù)雜關(guān)系[12]。Geodatabase數(shù)據(jù)模型具有優(yōu)秀的關(guān)系數(shù)據(jù)集、要素類和對(duì)象類,是目前使用較為普遍的面向?qū)ο髷?shù)據(jù)模型,且其是建立在關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(DBMS)之上的統(tǒng)一、智能化的空間數(shù)據(jù)庫。Geodatabase支持的地理空間數(shù)據(jù)如圖2所示。
1.4ArcGISEngine開發(fā)工具
ArcGISEngine是由ESRI在2004年推出的用于開發(fā)C/S(客戶端-服務(wù)器)架構(gòu)地理信息系統(tǒng)(GIS)應(yīng)用軟件的工具包[13]。它提供了完善的地圖制圖、數(shù)據(jù)處理與空間分析等功能,能夠使開發(fā)者實(shí)現(xiàn)從簡(jiǎn)單到復(fù)雜不同規(guī)模的GIS應(yīng)用軟件開發(fā)。
2數(shù)據(jù)庫構(gòu)建
2.1需求分析
針對(duì)傳統(tǒng)建筑物變形監(jiān)測(cè)數(shù)據(jù)空間數(shù)據(jù)與屬性數(shù)據(jù)的分介質(zhì)存儲(chǔ)問題,希望將建筑物變形監(jiān)測(cè)空間數(shù)據(jù)與屬性數(shù)據(jù)相結(jié)合,從而便于管理,并實(shí)現(xiàn)對(duì)變形監(jiān)測(cè)數(shù)據(jù)進(jìn)行空間分析。數(shù)據(jù)庫主要包括:①空間數(shù)據(jù)。主要包括基礎(chǔ)地理數(shù)據(jù)、建筑空間信息數(shù)據(jù)和監(jiān)測(cè)點(diǎn)布設(shè)信息數(shù)據(jù)等。這些數(shù)據(jù)主要由矢量數(shù)據(jù)、柵格數(shù)據(jù)和數(shù)字高程模型數(shù)據(jù)構(gòu)成;②屬性數(shù)據(jù)。建筑物變形監(jiān)測(cè)數(shù)據(jù)庫除具有空間數(shù)據(jù)外,還包含了相應(yīng)的屬性數(shù)據(jù)。這些數(shù)據(jù)是對(duì)空間數(shù)據(jù)相關(guān)屬性的描述,主要包括各類監(jiān)測(cè)點(diǎn)的監(jiān)測(cè)數(shù)據(jù)和一些工程基本信息數(shù)據(jù)。
2.2概念結(jié)構(gòu)設(shè)計(jì)
一般采用E-R實(shí)體關(guān)系模型進(jìn)行數(shù)據(jù)庫的概念模型表示,E-R實(shí)體關(guān)系模型主要由實(shí)體、聯(lián)系和屬性3部分構(gòu)成,具體設(shè)計(jì)如圖3所示。實(shí)體包括工程、建筑物、水平位移監(jiān)測(cè)點(diǎn)、豎向位移監(jiān)測(cè)點(diǎn)與監(jiān)測(cè)人員,其中水平位移監(jiān)測(cè)數(shù)據(jù)和豎向位移監(jiān)測(cè)數(shù)據(jù)為工作人員對(duì)監(jiān)測(cè)點(diǎn)進(jìn)行觀測(cè)產(chǎn)生的關(guān)系表。各實(shí)體都有各自的屬性,且之間具有相互聯(lián)系。
2.3邏輯結(jié)構(gòu)設(shè)計(jì)
數(shù)據(jù)庫邏輯結(jié)構(gòu)主要指從數(shù)據(jù)庫使用者角度考察數(shù)據(jù)組織方式[14]??臻g數(shù)據(jù)采用矢量和柵格兩種數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)進(jìn)行存儲(chǔ),屬性數(shù)據(jù)則存儲(chǔ)在屬性表中,二者通過建立關(guān)鍵字標(biāo)識(shí)進(jìn)行關(guān)聯(lián),實(shí)現(xiàn)數(shù)據(jù)互通。矢量數(shù)據(jù)采用點(diǎn)、線、面表示,柵格數(shù)據(jù)采用柵格結(jié)構(gòu)表示,與空間無關(guān)的數(shù)據(jù)利用對(duì)象表存儲(chǔ)??臻g實(shí)體在Geodatabase中的表達(dá)方式如表1所示。對(duì)于空間數(shù)據(jù)與屬性數(shù)據(jù)的存儲(chǔ),工程信息表、員工信息表、豎向位移監(jiān)測(cè)數(shù)據(jù)表、水平位移監(jiān)測(cè)數(shù)據(jù)表結(jié)構(gòu)分別如表2-表5所示。
2.4空間數(shù)據(jù)庫模式
采用“ArcSDE空間數(shù)據(jù)庫引擎+關(guān)系型數(shù)據(jù)庫”技術(shù)體系進(jìn)行空間數(shù)據(jù)管理和存儲(chǔ)。當(dāng)前社會(huì)使用較為廣泛的兩種關(guān)系型數(shù)據(jù)庫管理系統(tǒng)為微軟的SQLServer和美國甲骨文公司的Oracle。相對(duì)而言,微軟的SQLServer比甲骨文公司的Oracle操作更加便捷,且性價(jià)比更高。所以選用SQLServer關(guān)系數(shù)據(jù)庫作為本次研究的數(shù)據(jù)庫平臺(tái),且選擇功能較為全面的SQLServer2008R2版本。
3數(shù)據(jù)入庫
數(shù)據(jù)入庫工作主要包括矢量數(shù)據(jù)、柵格數(shù)據(jù)與屬性數(shù)據(jù)的入庫處理,數(shù)據(jù)入庫流程如圖4所示。
3.1矢量數(shù)據(jù)
在建筑變形監(jiān)測(cè)工作中,矢量數(shù)據(jù)大多是利用CAD軟件繪制的CAD圖件數(shù)據(jù),因此將CAD圖件數(shù)據(jù)轉(zhuǎn)換為ArcGIS所支持的圖件數(shù)據(jù)格式才能滿足建庫需要。CAD數(shù)據(jù)與ArcGIS數(shù)據(jù)格式文件中的地圖圖層概念差異較大[15]。在AutoCAD中,圖層為該軟件最關(guān)鍵的設(shè)置,不同地理要素放在不同圖層,每個(gè)圖層的參數(shù)都不同。ArcGIS中每個(gè)圖層包含兩種信息:描述地理要素空間位置和形狀的空間信息、描述地理要素的屬性信息。具體轉(zhuǎn)換過程如下:
(1)由于繪制的CAD數(shù)據(jù)中包含信息復(fù)雜,且CAD數(shù)據(jù)中的多線段數(shù)據(jù)在轉(zhuǎn)換為Shapefile數(shù)據(jù)時(shí)能夠較好地識(shí)別面數(shù)據(jù),所以在總平面圖CAD數(shù)據(jù)中建立新圖層,依據(jù)建設(shè)方提供的建筑物軸線,并利用CAD軟件中的多線段工具繪制建筑物輪廓。
(2)依據(jù)新圖層(建筑物輪廓)創(chuàng)建新的CAD圖紙,對(duì)新的CAD數(shù)據(jù)利用ArcMap自帶工具箱中的CAD轉(zhuǎn)換工具進(jìn)行轉(zhuǎn)換,得到在ArcGIS中可以利用的建筑面數(shù)據(jù)。
(3)利用ArcMap中自帶的空間矯正工具對(duì)轉(zhuǎn)換的面數(shù)據(jù)進(jìn)行空間矯正,矯正到原建設(shè)單位提供的數(shù)據(jù)坐標(biāo)系下,然后對(duì)圖層定義坐標(biāo)系。
3.2柵格數(shù)據(jù)
柵格數(shù)據(jù)的處理對(duì)象主要是建筑區(qū)域的遙感影像和DEM模型數(shù)據(jù),對(duì)于此類數(shù)據(jù)應(yīng)利用專業(yè)遙感影像數(shù)據(jù)處理軟件進(jìn)行處理,主要包括數(shù)據(jù)配準(zhǔn)、數(shù)據(jù)壓縮以及柵格數(shù)據(jù)金字塔建立等工作。
3.3屬性數(shù)據(jù)
屬性數(shù)據(jù)應(yīng)根據(jù)相應(yīng)的數(shù)據(jù)記錄表格進(jìn)行錄入,且在錄入過程中應(yīng)確保不要錯(cuò)誤與遺漏。
4ArcSDE數(shù)據(jù)庫連接
ArcSDE提供了應(yīng)用服務(wù)器連接和直接連接兩種連接方式[16]。當(dāng)服務(wù)器性能較好時(shí),可采用服務(wù)器連接方式,否則采用直接連接方式。但為了減輕服務(wù)器壓力,一般采用直接連接方式進(jìn)行連接,以下對(duì)直接連接方式進(jìn)行研究。
4.1直接連接方式參數(shù)設(shè)置
服務(wù)器(Server):不需填寫。
數(shù)據(jù)庫實(shí)例(Instance):SDE數(shù)據(jù)庫類型。
數(shù)據(jù)庫(Database):根據(jù)不同的DBMS決定是否填寫。
用戶名(Username):用于連接數(shù)據(jù)庫用戶名。
密碼(Password):用于連接數(shù)據(jù)庫密碼。
4.2基于ArcEngine的ArcSDE數(shù)據(jù)庫連接及空間數(shù)據(jù)加載
4.2.1C#編程代碼示例
///
///點(diǎn)擊按鈕button1實(shí)現(xiàn)ArcSDE空間數(shù)據(jù)庫連接及空間數(shù)據(jù)加載到axMapControl控件
///
privatevoidbutton1_Click(objectsender,EventArgse)
{
IWorkspacepWorkspace;
pWorkspace=arcSDEWorkspaceOpen("","sde:sqlserver:.","sde","123","sde","SDE.DEFAULT");
//如果工作空間不為空,則進(jìn)行加載
if(pWorkspace!=null)
{
AddAllDataset(pWorkspace,axMapControl1);
}
}
///
///ArcSDE控件數(shù)據(jù)庫連接
///
///
}
}
pDataset1=pEnumDataset1.Next();
}
}
elseif(pDatasetisIFeatureClass)//要素類
{
IFeatureWorkspacepFeatureWorkspace=(IFeatureWorkspace)pWorkspace;
IFeatureLayerpFeatureLayer=newFeatureLayerClass();
pFeatureLayer.FeatureClass=pFeatureWorkspace.OpenFeatureClass(pDataset.Name);
pFeatureLayer.Name=pFeatureLayer.FeatureClass.AliasName;
mapControl.Map.AddLayer(pFeatureLayer);
}
elseif(pDatasetisIRasterDataset)//柵格數(shù)據(jù)集
{
IRasterWorkspaceExpRasterWorkspace=(IRasterWorkspaceEx)pWorkspace;
IRasterDatasetpRasterDataset=pRasterWorkspace.OpenRasterDataset(pDataset.Name);
//影像金字塔判斷與創(chuàng)建
IRasterPyramid3pRasPyrmid;
pRasPyrmid=pRasterDatasetasIRasterPyramid3;
if(pRasPyrmid!=null)
{
if(?。╬RasPyrmid.Present))
{
pRasPyrmid.Create();//金字塔創(chuàng)建
}
}
IRasterLayerpRasterLayer=newRasterLayerClass();
pRasterLayer.CreateFromDataset(pRasterDataset);
ILayerpLayer=pRasterLayerasILayer;
mapControl.AddLayer(pLayer,0);
}
pDataset=pEnumDataset.Next();
}
mapControl.ActiveView.Refresh();
}
4.2.2結(jié)果展示
本研究采用ArcEngine提供的ToolbarControl、axToccontral和axMapcontrol控件進(jìn)行空間數(shù)據(jù)加載界面搭建,通過點(diǎn)擊數(shù)據(jù)加載按鈕進(jìn)行數(shù)據(jù)加載,如圖5所示。
5結(jié)語
空間數(shù)據(jù)庫構(gòu)建是GIS系統(tǒng)建立的基礎(chǔ),本文根據(jù)建筑物變形監(jiān)測(cè)數(shù)據(jù)的特點(diǎn),建立建筑物變形監(jiān)測(cè)空間數(shù)據(jù)庫,為下一步建筑物變形監(jiān)測(cè)數(shù)據(jù)分析系統(tǒng)實(shí)現(xiàn)打下基礎(chǔ),并為GIS技術(shù)與建筑物變形監(jiān)測(cè)的結(jié)合提供參考借鑒。
參考文獻(xiàn):
[1]錢思眾,樊育豪.高層建筑物地基沉降監(jiān)測(cè)與分析[J].西安科技大學(xué)學(xué)報(bào),2014,34(3):284-289.
[2]李志偉,朱建軍,鄒崢嶸.基于VB的邊坡變形監(jiān)測(cè)信息系統(tǒng)的研制[J].現(xiàn)代測(cè)繪,1999(3):14-17.
[3]石杏喜,岳建平.GPS變形監(jiān)測(cè)信息管理系統(tǒng)的研制及其應(yīng)用[J].黑龍江工程學(xué)院學(xué)報(bào),2002,16(3):42-44.
[4]趙顯富.變形監(jiān)測(cè)成果數(shù)據(jù)庫管理系統(tǒng)的研制[J].測(cè)繪通報(bào),2001(4):28-29.
[5]周艷芳.空間數(shù)據(jù)庫的概念及發(fā)展趨勢(shì)探究[J].產(chǎn)業(yè)與科技論壇,2018,17(2):53-54.
[6]秦琳.基于ArcSDE和Geodatabase的森林空間數(shù)據(jù)庫構(gòu)建研究[J].林業(yè)調(diào)查規(guī)劃,2010,35(2):85-88.
[7]樊江,蔡中祥,荊晨.基于ArcSDE和Geodatabase的港口空間數(shù)據(jù)庫構(gòu)建[J].地理空間信息,2015,13(3):64-67,10.
[8]張一帆,王青山,郗篤剛,等.基于ArcSDE的機(jī)場(chǎng)地理空間數(shù)據(jù)庫構(gòu)建[J].地理空間信息,2016,14(5):51-54.
[9]高月,梁兼?zhèn)洌S旻,等.基于ArcSDE的高層建筑信息數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)[J].軟件導(dǎo)刊,2017,16(10):170-172,175.
[10]李少華.企業(yè)級(jí)GIS設(shè)計(jì)管理優(yōu)化策略[M].北京:電子工業(yè)出版社,2014.
[11]張黎娜,鄒海.基于ArcSDE的地理數(shù)據(jù)入庫和實(shí)例開發(fā)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013,23(12):183-185.
[12]楊晨毅,劉吉平.基于SDE的GIS空間和屬性數(shù)據(jù)在RDBMS中的集成[J].計(jì)算機(jī)仿真,2003(11):110-112.
[13]牟乃夏,王海銀,李丹.ArcGISEngine地理信息系統(tǒng)開發(fā)教程[M].北京:測(cè)繪出版社,2015.
[14]熊麗華,楊峰.基于ArcSDE的空間數(shù)據(jù)庫技術(shù)的應(yīng)用研究[J].計(jì)算機(jī)應(yīng)用,2004(3):90-91,96.
[15]謝江平,鄒自力.CAD矢量數(shù)據(jù)向ArcGIS轉(zhuǎn)換的方法[J].地理空間信息,2010,8(4):130-132.
[16]杜紅悅,劉先林,宮輝力.基于ArcSDE的空間數(shù)據(jù)綜合管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪科學(xué),2009,34(5):171-173.
(責(zé)任編輯:黃?。?/p>