基于GIS的露天礦車(chē)輛運輸監控系統
4 GIS實(shí)現的關(guān)鍵技術(shù)
4.1 地圖控制
在Microsoft Visual Studio.NET 2003環(huán)境下新建VisualC#項目,模板選擇為Windows應用程序。在程序中引入MapX控件后,MapX安裝目錄下的United States地圖會(huì )作為默認地圖自動(dòng)加載,通過(guò)改變MapX控件的GeoSet屬性可以加載任意gst格式的地圖161。實(shí)現GIS地圖控制的核心源碼如表1所示。本文引用地址:http://dyxdggzs.com/article/197877.htm
4.2 訪(fǎng)問(wèn)DBMS中的數據
通過(guò)與數據庫中地理數據的綁定,可在地圖上創(chuàng )建一個(gè)新圖層,并將每個(gè)表示經(jīng)緯度的數據顯示為地圖上的一個(gè)點(diǎn)。通過(guò)使用MapX的Datasets.Add方法可以將SQL Server中的表作為數據集添加,同時(shí)還要使用BindLayer對象作為方法的一個(gè)參數,這樣便可實(shí)現地圖與數據的綁定。
4.2.1 BindLayer對象
創(chuàng )建BindLayer對象BindLayerObject,添加數據集,用于在新圖層上數據指定的位置創(chuàng )建點(diǎn)。BindLayer對象的Lay-erName屬性指定新創(chuàng )建的圖層的名稱(chēng)。RefColumnl屬性指定包含緯度的字段,RefColumn2屬性指定包含經(jīng)度的字段,LayerType屬性指定數據綁定到的圖層類(lèi)型。
4.2.2 Datasets.Add方法
使用Datasets.Add方法指定特定的數據集并將其加入Datasets集合,將數據源中的數據綁定到MapX上,實(shí)現外部數據源中的數據與地圖的綁定。Datasets.Add方法的語(yǔ)法為:Dataset-S.Add(Type,SourceData,Name,Geofield,Secondary-Geofield,BindLayer,Fields,Dynamic)。Type參數是添加的數據集類(lèi)型:SourceData參數引用數據:Name參數是唯一標識數據集的字符串:Geofield參數是數據源中包含地理信息的列的名稱(chēng)或索引;SecondaryGeofield是可選參數,只有數據集綁定到的圖層包含的關(guān)鍵字列不唯一時(shí),才需要該參數:Bind-Layer參數指定要將數據連接到的地圖圖層;Fields參數用于描述數據源中要導入的字段;Dynamic參數是控制數據綁定是否為動(dòng)態(tài)的布爾值。
4.3 圖屬互查
使用Point.Set方法設置要顯示屬性車(chē)輛的坐標,使用Layer.SearchAtPoint方法查找坐標處的圖元,通過(guò)圖元的名稱(chēng)與數據庫中車(chē)輛編號的一一對應,便可將數據庫中車(chē)輛的屬性數據與地圖綁定,實(shí)現圖屬互查。
5 露天礦車(chē)輛運輸監控系統應用
系統應用在某鉬礦,主要是對露天礦生產(chǎn)車(chē)輛進(jìn)行實(shí)時(shí)的監控調度。整個(gè)系統由車(chē)載終端、GSM/GPRS通信鏈路、服務(wù)器中間件系統、客戶(hù)端軟件系統組成.系統總體結構如圖1所示。
評論