• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于ArcGIS Engine的地圖投影與坐標(biāo)轉(zhuǎn)換的研究與實(shí)現(xiàn)

      2012-05-31 11:11:28李恒民陳永波李娜張照杰
      城市勘測(cè) 2012年5期
      關(guān)鍵詞:控制點(diǎn)投影坐標(biāo)系

      李恒民,陳永波,李娜,張照杰

      (山東正元地理信息工程有限責(zé)任公司,山東濟(jì)南 250101)

      1 引言

      空間地理數(shù)據(jù)庫(kù)一般都具有空間參考屬性,空間參考定義了該數(shù)據(jù)集的地理坐標(biāo)系統(tǒng)或投影坐標(biāo)系統(tǒng),沒(méi)有坐標(biāo)系統(tǒng)的地理數(shù)據(jù)在生產(chǎn)應(yīng)用過(guò)程中是毫無(wú)意義的[1]。由于數(shù)據(jù)在使用過(guò)程中,不同坐標(biāo)系統(tǒng)的數(shù)據(jù)無(wú)法同時(shí)在一個(gè)系統(tǒng)中予以加載,數(shù)據(jù)轉(zhuǎn)換必然涉及坐標(biāo)系統(tǒng)的統(tǒng)一,需要對(duì)現(xiàn)有數(shù)據(jù)進(jìn)行坐標(biāo)系統(tǒng)定義或進(jìn)行坐標(biāo)系統(tǒng)及投影轉(zhuǎn)換,針對(duì)不同精度要求,對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的地圖投影和坐標(biāo)轉(zhuǎn)換在實(shí)際應(yīng)用中顯得尤其重要。

      2 坐標(biāo)轉(zhuǎn)換與地圖投影的基本概念

      2.1 坐標(biāo)轉(zhuǎn)換的基本概念

      坐標(biāo)系統(tǒng)之間的坐標(biāo)轉(zhuǎn)換包括:不同參心坐標(biāo)系之間的轉(zhuǎn)換;參心坐標(biāo)系與地心坐標(biāo)系之間的轉(zhuǎn)換;相同坐標(biāo)系內(nèi)坐標(biāo)形式如:直角坐標(biāo)、高斯平面坐標(biāo)與大地坐標(biāo)之間的轉(zhuǎn)換。兩個(gè)坐標(biāo)系轉(zhuǎn)換時(shí),如果原點(diǎn)相同,只需要做3次旋轉(zhuǎn)即可完成轉(zhuǎn)換;如果原點(diǎn)不同,則需要對(duì)坐標(biāo)軸進(jìn)行平移和旋轉(zhuǎn);如果坐標(biāo)系的尺度不同,只要增加一個(gè)尺度變化因子即可;而大地坐標(biāo)和高斯投影平面坐標(biāo)之間的轉(zhuǎn)換,僅需要進(jìn)行高斯投影正反算,通過(guò)設(shè)置中央子午線經(jīng)度和參考橢球、投影面來(lái)實(shí)現(xiàn)[2]。

      常用的坐標(biāo)轉(zhuǎn)換方法為七參數(shù)轉(zhuǎn)換法,即3個(gè)平移因子(X平移,Y平移,Z平移),3個(gè)旋轉(zhuǎn)因子(X旋轉(zhuǎn),Y旋轉(zhuǎn),Z旋轉(zhuǎn)),一個(gè)比例因子(也叫尺度變化K),參數(shù)的獲取為地區(qū)測(cè)繪部門提供或通過(guò)已知點(diǎn)求解[3]。也有的采用三參數(shù)、四參數(shù)轉(zhuǎn)換法,需要根據(jù)轉(zhuǎn)換要求的精度和已知點(diǎn)的數(shù)量或已知轉(zhuǎn)換參數(shù)的個(gè)數(shù)確定采用何種轉(zhuǎn)換方式。

      2.2 ArcMap中的動(dòng)態(tài)投影

      動(dòng)態(tài)投影是ArcMap中一種對(duì)Data Frame(工作區(qū))空間參考或?qū)尤階rcMap工作區(qū)中數(shù)據(jù)的投影變換。動(dòng)態(tài)投影是對(duì)數(shù)據(jù)顯示形態(tài)的改變,未使用坐標(biāo)轉(zhuǎn)換參數(shù),未修改數(shù)據(jù)文件存儲(chǔ)的實(shí)際數(shù)據(jù)坐標(biāo)值,要想保存動(dòng)態(tài)投影的設(shè)置,需要采用輸出時(shí)保存框架坐標(biāo)的方法,精度要求不高時(shí),可以使用動(dòng)態(tài)投影進(jìn)行坐標(biāo)轉(zhuǎn)換[4]。

      2.3 ArcCatalog中的坐標(biāo)系統(tǒng)描述

      在ArcCatalog中定義數(shù)據(jù)的坐標(biāo)系統(tǒng)描述,操作方法為:在數(shù)據(jù)上鼠標(biāo)右鍵→Properties→XY Coordinate System,其中定義坐標(biāo)系統(tǒng)描述的方法有 New、Modify、Select、Import,對(duì)于系統(tǒng)中未預(yù)先定義的坐標(biāo)系,一般采用New、Modify的方式,輸入自己設(shè)定的坐標(biāo)投影參數(shù),系統(tǒng)中預(yù)定義的坐標(biāo)系可以采用Select的方式,對(duì)于已有相同坐標(biāo)系統(tǒng)數(shù)據(jù)的情況,可以直接用Import導(dǎo)入已知坐標(biāo)系統(tǒng)數(shù)據(jù)的坐標(biāo)系,作為此次設(shè)置的坐標(biāo)系統(tǒng)描述。但在這里定義了數(shù)據(jù)的坐標(biāo)系統(tǒng)信息后,數(shù)據(jù)坐標(biāo)系統(tǒng)信息都對(duì)應(yīng)到與該數(shù)據(jù)同名而后綴名為.prj的文件當(dāng)中,數(shù)據(jù)本身并未發(fā)生投影變換,這里改的僅僅是對(duì)數(shù)據(jù)坐標(biāo)系統(tǒng)信息的一個(gè)描述。但這個(gè)描述也是非常重要的,對(duì)數(shù)據(jù)的投影變換、量測(cè)等操作均需要已知橢球參數(shù)及投影方法[4]。

      2.4 投影變換

      投影變換與動(dòng)態(tài)投影不同,是真正意義上的坐標(biāo)變換,如果數(shù)據(jù)沒(méi)有任何空間參考信息,則ArcCatalog坐標(biāo)系統(tǒng)描述顯示為Unknown,對(duì)數(shù)據(jù)進(jìn)行投影變換的方法為:利用Define Projection工具,定義坐標(biāo)系統(tǒng)Coordinate System,(這個(gè)坐標(biāo)系統(tǒng)可以是系統(tǒng)自帶,可以是自己定義,也可以是已知數(shù)據(jù)的坐標(biāo)系);再利用Feature→Project或 Raster→Project Raster工具來(lái)對(duì)數(shù)據(jù)進(jìn)行投影變換。

      不同的坐標(biāo)投影所基于的橢球體及Datum不同,需要在坐標(biāo)投影時(shí)制定轉(zhuǎn)換參數(shù),我們國(guó)家使用的1954年北京坐標(biāo)系和1980西安坐標(biāo)系,在變換到其他坐標(biāo)系統(tǒng)時(shí),需要提供一個(gè)Geographic Transformation,即提供轉(zhuǎn)換參數(shù)。這種變換方法可以根據(jù)已知的轉(zhuǎn)換參數(shù)個(gè)數(shù)選擇變換方法,完成對(duì)數(shù)據(jù)的投影變換,數(shù)據(jù)本身坐標(biāo)值隨著發(fā)生變化。

      2.5 創(chuàng)建投影變換模板并實(shí)現(xiàn)投影變換

      在 ArcGIS應(yīng)用中,通過(guò) ArcToolBox→Data Management Tools→ Projections and Transformations→ Feature→Project或Raster→Project來(lái)實(shí)現(xiàn)兩個(gè)矢量數(shù)據(jù)或影像數(shù)據(jù)坐標(biāo)系之間的數(shù)據(jù)轉(zhuǎn)換。首先選擇要轉(zhuǎn)換的文件或數(shù)據(jù)集,如果文件或數(shù)據(jù)集已有坐標(biāo)系統(tǒng),將自帶顯示此坐標(biāo)系,然后選擇轉(zhuǎn)換后的坐標(biāo)系統(tǒng),并選擇地理變換模板(Geographic Transformation)下拉框中自動(dòng)加載可用的模板。如果沒(méi)有可選項(xiàng),需要用戶自定義[5]。地理變換模板通過(guò) ArcToolBox→ Data Management Tools→ Projections and Transformations→ Create Custom Geographic Transformation來(lái)創(chuàng)建。

      3 ArcGIS Engine接口實(shí)現(xiàn)矢量數(shù)據(jù)地圖投影與坐標(biāo)轉(zhuǎn)換

      3.1 IGeometry.Project方法

      Public void Project(string FeaturePath,int FromXYName,int ToXYName);

      該方法對(duì)實(shí)現(xiàn)IGeoemtry的對(duì)象進(jìn)行投影操作,參數(shù)為所要轉(zhuǎn)換的要素路徑、轉(zhuǎn)換前坐標(biāo)空間參考EPSG整數(shù)值,如WGS-84坐標(biāo)對(duì)應(yīng) 4 326,1980西安坐標(biāo)系3°帶120°對(duì)應(yīng)2 385等,也可以在系統(tǒng)中直接采用ESRI坐標(biāo)求整得到,如設(shè)置:

      以下代碼中實(shí)現(xiàn)了對(duì)Igeoemtry對(duì)象從一個(gè)空間參考到另一個(gè)空間參考的投影操作:

      定義好轉(zhuǎn)換坐標(biāo)參考后,需要對(duì)轉(zhuǎn)換的要素進(jìn)行讀取,首先獲取系統(tǒng)打開文件的路徑FilePath及文件名FileName.文件打開后,需要設(shè)置工作空間,并對(duì)空間數(shù)據(jù)的每個(gè)要素進(jìn)行遍歷處理,此處實(shí)現(xiàn)對(duì)打開的SHP文件進(jìn)行轉(zhuǎn)換,SDE數(shù)據(jù)Feature類似。

      IGeometry接口的Project方法提供的投影操作實(shí)現(xiàn)了最基本的坐標(biāo)轉(zhuǎn)換功能.實(shí)際數(shù)據(jù)處理過(guò)程中,比較明確數(shù)據(jù)轉(zhuǎn)換前后空間參考信息情況下一般用此方法作坐標(biāo)轉(zhuǎn)換,不同投影帶之間的坐標(biāo)轉(zhuǎn)換就是一個(gè)典型。

      3.2 ITransform2D接口方法

      ITransform2D接口不僅提供了圖形平移,旋轉(zhuǎn)和縮放,還提供了更加強(qiáng)大的坐標(biāo)轉(zhuǎn)換方法Transform.其定義如下:

      在該方法中,參數(shù)direction是轉(zhuǎn)換方向,transformation是一個(gè)Itransformation接口,而Itransformation接口由很多類實(shí)現(xiàn),這意味著不同的實(shí)現(xiàn)類,所包含的坐標(biāo)轉(zhuǎn)換數(shù)學(xué)公式是不一樣的,這里面包括二次多項(xiàng)式轉(zhuǎn)換(AffineTransformation2D),AbridgedMolodensky轉(zhuǎn)換(AbridgedMolodenskyTransformation)等。

      下面代碼簡(jiǎn)單實(shí)現(xiàn)了利用已知控制點(diǎn)進(jìn)行坐標(biāo)轉(zhuǎn)換的過(guò)程:

      3.3 矢量數(shù)據(jù)地圖投影與坐標(biāo)轉(zhuǎn)換實(shí)現(xiàn)

      作者采用IGeometry.Project方法實(shí)現(xiàn)的矢量數(shù)據(jù)的轉(zhuǎn)換程序界面如圖1所示。

      點(diǎn)擊打開文件,可以選擇需要轉(zhuǎn)換的矢量文件,選擇好后將放在轉(zhuǎn)換前文件列表中,坐標(biāo)轉(zhuǎn)換前需要設(shè)定原坐標(biāo)及其投影帶、目標(biāo)坐標(biāo)及其投影帶以及東偏移量,選擇好轉(zhuǎn)換前后的坐標(biāo)系以及投影帶之后,點(diǎn)擊確定轉(zhuǎn)換就可以實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換。

      圖1 矢量數(shù)據(jù)坐標(biāo)轉(zhuǎn)換

      4 ArcGIS Engine接口實(shí)現(xiàn)柵格數(shù)據(jù)地圖投影與坐標(biāo)轉(zhuǎn)換

      4.1 影像坐標(biāo)轉(zhuǎn)換

      利用ArcGIS Engine自帶的接口,能夠?qū)崿F(xiàn)簡(jiǎn)單的影像數(shù)據(jù)坐標(biāo)轉(zhuǎn)換,首先需要定義坐標(biāo)轉(zhuǎn)換空間參考:

      下面的代碼,針對(duì)影像數(shù)據(jù).tif和.img格式的數(shù)據(jù),實(shí)現(xiàn)坐標(biāo)系統(tǒng)的轉(zhuǎn)換:其中,參數(shù)為源坐標(biāo)系代碼和目標(biāo)坐標(biāo)系代碼,定義如3.1矢量數(shù)據(jù)投影變換中的坐標(biāo)代碼定義;將柵格數(shù)據(jù)的存放位置與文件名分布定義為:FilePath和FileName。

      4.2 影像糾正

      影像數(shù)據(jù)糾正可以通過(guò)IrasterGeometryProc接口實(shí)現(xiàn)。該接口提供了影像Clip,F(xiàn)ilp,Merge,Mirror以及Mosaic等操作。如果通過(guò)控制點(diǎn)的方式對(duì)影像進(jìn)行糾正處理可以通過(guò)該接口的wrap方法。該方法聲明如下:

      參數(shù) sourceControlPoints和 targetControlPoint定義了轉(zhuǎn)換前后坐標(biāo)系統(tǒng)中的控制點(diǎn)信息,transformType定義了坐標(biāo)轉(zhuǎn)換方法,ipRaster是需要轉(zhuǎn)換的Raster對(duì)象。

      以下代碼是該接口使用的例子,實(shí)現(xiàn)了利用控制點(diǎn)對(duì)柵格數(shù)據(jù)進(jìn)行重投影的過(guò)程:參數(shù)rasterDataset為需要轉(zhuǎn)換的數(shù)據(jù)集,sourcePoints為源坐標(biāo)系控制點(diǎn),targetPoints為目標(biāo)坐標(biāo)系控制點(diǎn):

      其中,有兩種方式保存轉(zhuǎn)換后的柵格數(shù)據(jù):改變?cè)瓥鸥駭?shù)據(jù)集或建立新的數(shù)據(jù)集。需要注意的是當(dāng)選擇不同的轉(zhuǎn)換類型時(shí)(參數(shù)transformType取值不同時(shí)),對(duì)控制點(diǎn)的對(duì)數(shù)也有不同的要求.此外,使用Iraster-GeometryProc.Wrap方法,會(huì)略微改變影像圖的色彩值,當(dāng)對(duì)一幅影像圖前后轉(zhuǎn)換作對(duì)比時(shí)會(huì)發(fā)現(xiàn)這種色彩的變化情況。

      4.3 影像數(shù)據(jù)地圖投影與坐標(biāo)轉(zhuǎn)換實(shí)現(xiàn)

      作者根據(jù)上述坐標(biāo)轉(zhuǎn)換方法實(shí)現(xiàn)的影像數(shù)據(jù)的轉(zhuǎn)換程序界面如圖2所示。

      圖2 影像數(shù)據(jù)坐標(biāo)轉(zhuǎn)換

      點(diǎn)擊打開文件,可以選擇需要轉(zhuǎn)換的影像文件,選擇好后將放在轉(zhuǎn)換前文件列表中,坐標(biāo)轉(zhuǎn)換前需要設(shè)定源坐標(biāo)及其投影帶、目標(biāo)坐標(biāo)及其投影帶以及東偏移量,選擇好轉(zhuǎn)換前后的坐標(biāo)系以及投影帶之后,點(diǎn)擊確定轉(zhuǎn)換就可以實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換。

      5 結(jié)語(yǔ)

      文中詳細(xì)闡述了坐標(biāo)轉(zhuǎn)換和地圖投影的基本概念,介紹了坐標(biāo)轉(zhuǎn)換在ArcGIS中的實(shí)現(xiàn)方法,并通過(guò)代碼列舉,給出了利用ArcGIS Engine接口實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換的實(shí)現(xiàn)方法及過(guò)程,實(shí)現(xiàn)了常見坐標(biāo)系統(tǒng)之間的轉(zhuǎn)換,但轉(zhuǎn)換過(guò)程中,對(duì)控制點(diǎn)求參數(shù)的應(yīng)用全部封裝,用戶無(wú)法自主選擇參數(shù)轉(zhuǎn)換方式,需要在后續(xù)的程序中添加這些選項(xiàng)。

      [1]王虎文.WGS-84坐標(biāo)系與任意坐標(biāo)系坐標(biāo)轉(zhuǎn)換[J].內(nèi)蒙古石油化工,2004,5(30):18~19.

      [2]孫雙磊,翟甡,陳若飛等.基于ArcEngine的林火監(jiān)測(cè)云圖坐標(biāo)轉(zhuǎn)換及配準(zhǔn)功能的研發(fā)[J].測(cè)繪與空間地理信息,2008,31(2):26 ~31.

      [3]徐仕琪,張曉帆,周可法等.關(guān)于利用七參數(shù)法進(jìn)行WGS-84和BJ-54坐標(biāo)轉(zhuǎn)換問(wèn)題的探討[J].測(cè)繪與空間地理信息,2007,30(5):33 ~42.

      [4]王解先,王軍,陸彩萍.WGS-84與北京54坐標(biāo)的轉(zhuǎn)換問(wèn)題[J].大地測(cè)量與地球動(dòng)力學(xué),2003,23(3):70~73.

      [5]郭金運(yùn),朱明法,徐泮林.地圖數(shù)據(jù)幾何糾正時(shí)仿射變換與相似變換的對(duì)比分析[J].測(cè)繪通報(bào),2001(4):23~27.

      猜你喜歡
      控制點(diǎn)投影坐標(biāo)系
      解變分不等式的一種二次投影算法
      基于最大相關(guān)熵的簇稀疏仿射投影算法
      找投影
      找投影
      解密坐標(biāo)系中的平移變換
      坐標(biāo)系背后的故事
      NFFD控制點(diǎn)分布對(duì)氣動(dòng)外形優(yōu)化的影響
      基于重心坐標(biāo)系的平面幾何證明的探討
      基于風(fēng)險(xiǎn)管理下的項(xiàng)目建設(shè)內(nèi)部控制點(diǎn)思考
      相似材料模型中控制點(diǎn)像點(diǎn)坐標(biāo)定位研究
      金坛市| 延寿县| 桐柏县| 新兴县| 民县| 桓台县| 舞阳县| 乌拉特前旗| 高唐县| 金阳县| 神农架林区| 旬邑县| 通渭县| 东乡族自治县| 阿拉善左旗| 宣城市| 海口市| 贵港市| 和平区| 灵石县| 秦皇岛市| 沁水县| 田东县| 内乡县| 北宁市| 开鲁县| 广平县| 米泉市| 北流市| 乌海市| 临洮县| 鸡西市| 禄劝| 儋州市| 科尔| 郓城县| 曲靖市| 磐石市| 彭州市| 穆棱市| 清远市|