二次開發(fā)第4章坐標(biāo)系和投影對象_第1頁
二次開發(fā)第4章坐標(biāo)系和投影對象_第2頁
二次開發(fā)第4章坐標(biāo)系和投影對象_第3頁
二次開發(fā)第4章坐標(biāo)系和投影對象_第4頁
二次開發(fā)第4章坐標(biāo)系和投影對象_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第4章 坐標(biāo)系和投影對4.2.5投影變實例4.3圖層數(shù)據(jù)投*地理變換對象:GeoTransformation*實例4.4(基于不同的基準(zhǔn)面綜合練習(xí)(投影對象的使用本章回實例4.3:圖層數(shù)據(jù)投影轉(zhuǎn)新建工程并添加所需要窗體加載時,初CommonDialg控Command1.Caption="導(dǎo)出Command2.Caption="生成Prj文件CommonDialog1.InitDir=App.Path CommonDialog1.DialogTitle="導(dǎo)出經(jīng)過投影后的Shape文件" CommonDialog1.Filter="Shapefiles(.shp)|*.shp"窗體加載時,在下拉列表框中填Mo的投影DimprojCoordAsNewMapObjects2.StringsprojCoord.PopulateWithProjectedCoordSyDimstrCSAsVariantForEachstrCSInprojCoord Combo1.AddItem"ProjCoordSys:"&strCSNextstrCSCombo1.ListIndex= DimdcAsNewMapObjects2.D onnectionDimmlyrDDAsNewMapObjects2.Ma yerdc.Database=App.Pathdc.Connect SetmlyrDD.GeoDataset=dc.FindGeoDataset(" Map1.Layers.AddmlyrDDWithMap1.Layers(0).Symbol.Style=moSolidFill.Color=moDarkGreenEndWith導(dǎo)出坐標(biāo)系的元數(shù)據(jù),生成Prj文csDD.Type=moGeoCS_Beijing1954SetMap1.CoordinateSystem=csDDcsDD.ExportApp.Path&"\ .prj"MsgBox"Ok" .prj文件的內(nèi)自定義函數(shù)PrivateFunctionstripProjection(theProjectionAsString)AsLongDimopenBAsIntegerDimcodelenAsIntegeropenB=InStr(theProjection,"[")'查找字符[theProjectioncodelen=Len(theProjection)-openB-stripProjection=CLng(Left(Right(theProjection,codelen+1),codelen))EndFunction例如字符串a(chǎn)bcde[12345Len(theProjection)=12openB=6codelen=126-1=5框”,指導(dǎo)出文件的位和名CommonDialog1.ShowSaveCommonDialog1.ShowSave IfCommonDialog1.FileName=""ThenExitSub DimnameAsString name=Combo1.List(Combo1.ListIndex) coordSys.Type=Int(stripProjection(name)) newLayer.GeoDataset=Map1.Layers(0).Records.Export(CommonDialog1.FileName,coordSys)IfnewLayer.ValidThenMap2.Layers.ClearMap2.Layers.AddnewLayerWithnewLayer.Symbol.Style=moLightGrayFill.Color=moYellowEndWithElse MsgBox"新圖層無效",vbExclamation,"錯EndIf地理變換對象使用GeoTransformation對象來實屬性Direction:DirectionConstantFromGeoCoordSys:GeoCoordSysToGeoCoordSys:GeoCoordSysMethod:MethodConstantName:StringGeographicTransformationConstantsSecondDirection:DirectionConstantSecondName:StringSecondType:GeographicTransformationConstantsMapObjects實現(xiàn)了符合工業(yè)化標(biāo)準(zhǔn)可以通過將屬性Type設(shè)置為一個合適 數(shù)定義了一系列的基準(zhǔn)面到WGS1984基準(zhǔn)面的變換方法。通過設(shè)置Direction屬性,變換可以定義成向前及相反的方向。因而變換也 為從WGS1984轉(zhuǎn)到其它可*實例4.4幾何圖形對象投影轉(zhuǎn)(基于不同的基準(zhǔn)面 轉(zhuǎn)換7參數(shù)來定義,轉(zhuǎn)換通過相似變換方法實現(xiàn),具 1999年 息系統(tǒng)標(biāo)準(zhǔn)化指南》第76至86頁。假設(shè)Xg、Yg、Zg表示W(wǎng)GS84地心坐標(biāo)系的三坐標(biāo)軸,Xt、Yt、Zt表示當(dāng)?shù)刈鴺?biāo)系的三坐標(biāo)軸,那么自定義基準(zhǔn)面的7參數(shù)分別為:地心坐標(biāo)系平行時,分別繞Xt、Yt、Zt的旋轉(zhuǎn)角;關(guān)鍵PrivateSubMap1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSetfromPt=Map1.ToMapPoint(X, SettoPt=transformPoint(moDirection_Reverse,fromPt)curMap=Map1.TrackingLayer.Refresh(True)Map2.TrackingLayer.Refresh(True)End關(guān)鍵代PrivateFunctiontransformPoint(directionAsMapObjects2.DirectionConstants,ptInAsMapObjects2.Point)AsPoint DimmyGTAsNewMapObjects2.GeoTransformation DimgcsBJ54AsNewMapObjects2.GeoCoordSys DimgcsWGS84AsNewMapObjects2.GeoCoordSysgcsBJ54.Type=moGeoCS_Beijing1954gcsWGS84.Type=關(guān)鍵代碼分 初始化地理變換對象 SetmyGT.FromGeoCoordSys=gcsBJ54SetmyGT.ToGeoCoordSys=gcsWGS84myGT.direction=moDirection_ForwardmyGT.Name="BJ54_To_WGS1984"myGT.Method=moMethod_PositionVectorIfMap1.CoordinateSystem.IsProjectedThenmap1Projected=TrueElsemap1Projected=FalseEndIf關(guān)鍵代碼設(shè)設(shè)定基準(zhǔn)面轉(zhuǎn)換參數(shù)(7參數(shù)myGT.SetParametermoParm_DeltaX,24myGT.SetParametermoParm_DeltaY,-123myGT.SetParametermoParm_DeltaZ,-94myGT.SetParametermoParm_RotationX,-myGT.SetParametermoParm_RotationY,-myGT.SetParametermoParm_RotationZ,-myGT.SetParametermoParm_DeltaScale,關(guān)鍵代碼分實實現(xiàn)基于不同基準(zhǔn)…Ifdirection=moDirection_Forward…ElseIfdirection=moDirection_ReverseIfmap2ProjectedmyGT.ToGeoCoordSys=myGT.ToGeoCoordSys=Map2.CoordinateSystemEndIfmap1ProjectedmyGT.FromGeoCoordSys=myGT.FromGeoCoordSys=Map1.CoordinateSystemEnd SettransformPoint=Map2.CoordinateSystem.Transform(Map1.CoordinateSystem,fromPt,,myGT)End本章回導(dǎo)出為新的數(shù)據(jù)文件(Shpe文件) 第5章數(shù)據(jù)查詢、編數(shù)據(jù)查詢對象 對象值描0值描0無357日8點線點0沒有編輯操作在執(zhí)行12常 值描 通過相關(guān)dBASE 強(qiáng)制相關(guān)dBASE文件中 的字符被處理為OEM字 強(qiáng)制相關(guān)dBASE文件中 的字符被處理為ANSI字 強(qiáng)制相關(guān)dBASE 的字符被處理為ISO Connected:BooleanConnectError:ConnectionErrorConstantsConnection:Long器的連接,Connection屬性返回值為零.Database:StringPassword:StringServer:StringUser:StringGeoDatasets:GeoDatasetsVersion:StringAddGeoDataset(name,shapeType,TableDesc,HasZ,HasM):GeoDatasetFindGeoDataset(name:String):GeoDatasetDeleteGeoDataset(name:String):BooleanFindCoordinateSystem(name:String):ObjectName:坐標(biāo)系投影元數(shù)據(jù)文件(.prj), onnection的DatabaseFindArcInfoCoordinateSystem(name:String):ObjectName:ARC/INFO投影文件的名字Connect:BooleanDisconnectClearConnectErrorReturnVersions:String地理數(shù)據(jù)集對地理數(shù)據(jù)集集合:(GeoDatasets yer對象相關(guān)聯(lián)。這些地理數(shù)據(jù)可以Shape文ARC/INFOSDEVPFStreetMapData(要 HasMeasure:返回一個值以確定地理數(shù)據(jù)集對象是否具HasZ:PrivateSub'Setupthefilebrowsingcontrols.File1.Pattern="*.shp"Drive1.Drive="d:\"Dir1.Path="d:\"File1.Pa

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論