




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
arcgis 投影变换与坐标转换研究arcgis 投影变换与坐标转换研究1 ArcGIS中的投影方法投影的方法可以使带某种坐标信息数据源进行向另一坐标系统做转换,并对源数据中的X和Y值进行修改。我们生产实践中一个典型的例子是利用该方法修正某些旧地图数据中X,Y值前加了带数和分带方法的数值。 字串7 操作方法:运行ArcGIS9中的ArcMap,打开ArcToolBox,打开 Data Management Tools -Projections and Transformations-Feature-Project 项 打开投影对话框。在Input DataSet or Feature Class栏中输入或点击旁边的按钮选择相应的DataSet或Feature Class(带有空间参考),Output DataSet or Feature Class栏中输入或点击旁边的按钮选择目标DataSet或Feature Class,在Output Coordinate System 栏中输入或点击旁边的按钮选择目标数据的坐标系统。最后点OK键即可。 字串9 例如 某点状shape文件中 某点P的坐标为 X 40705012 Y 3478021 ,且该shape文件坐标系统为中央为东经120度的高斯克吕格投影,在数据使用过程中为了将点P的值改为真实值X 705012 Y478021,首先将源数据的投影参数中False_Easting和False_Northing值分别加上40000000和3000000作为源坐标系统,修改参数前的坐标系统作为投影操作的目标坐标系统,然后通过投影操作后生成一新的Shape文件,且与源文件中点P对应的点的坐标为X 705012 Y478021。 字串62 ArcGIS中坐标系统的定义一般情况下地理数据库(如Personal GeoDatabase的 Feature DataSet 、Shape File等)在创建时都具有空间参考的属性,空间参考定义了该数据集的地理坐标系统或投影坐标系统,没有坐标系统的地理数据在生产应用过程中是毫无意义的,但由于在数据格式转换、转库过程中可能造成坐标系统信息丢失,或创建数据库时忽略了坐标系统的定义,因此需要对没有坐标系统信息的数据集进行坐标系统定义。 字串7坐标系统的定义是在不改变当前数据集中特征X Y值的情况下 对该数据集指定坐标系统信息。 字串3操作方法:运行ArcGIS9中的ArcMap,打开ArcToolBox,打开 Data Management Tools -Projections and Transformations-Define Projection 项 打开坐标定义对话框。介下来在Input DataSet or Feature Class栏中输入或点击旁边的按钮选择相应的DataSet或Feature Class;在Coordinate System栏中输入或点击旁边的按钮选择需要为上述DataSet或Feature定义的坐标系统。最后点OK键即可。 字串7 例如 某点状shape文件中 某点P的坐标为 X 112.2 Y 43.3 ,且该shape文件没有带有相应的Prj文件,即没有空间参考信息,也不知道X Y 的单位。通过坐标系统定义的操作定义其为Beijing1954坐标,那么点P的信息是东经112.2度 北纬43.3度。 字串93 编程实现坐标转换和投影3.1 矢量数据投影和坐标转换相关接口 字串53.1.1 IGeometry.Project方法 字串8 该方法声明如下 字串8public void Project ( 字串2 ISpatialReference newReferenceSystem 字串7 ); 字串8 该方法对实现Igeoemtry的对象进行投影操作, 参数为目标空间参考.以下代码中实现了对Point对象从一个空间参考到另一个空间参考的投影操作: 字串9/Create Spatial Reference Factory 字串4 ISpatialReferenceFactory srFactory = new SpatialReferenceEnvironmentClass(); 字串9 ISpatialReference sr1; 字串1 /GCS to project from 字串3 IGeographicCoordinateSystem gcs = srFactory.CreateGeographicCoordinateSystem(int)esriSRGeoCSType.esriSRGeoCS_NAD1983); 字串9 sr1 = gcs; 字串4 sr1.SetFalseOriginAndUnits(-180, -90, 1000000); 字串9 /Projected Coordinate System to project into 字串6 IProjectedCoordinateSystem pcs = srFactory.CreateProjectedCoordinateSystem(int)esriSRProjCSType.esriSRProjCS_NAD1983N_AmericaLambert); 字串2 pcs.SetFalseOriginAndUnits(0, 0, 1000); 字串3 ISpatialReference sr2; 字串2 sr2 = pcs; 字串5 /Point to project 字串8 IPoint point = new PointClass() as IPoint; 字串7 point.PutCoords(-117.17, 34.06); 字串8 /Geometry Interface to do actual project 字串4 IGeometry geometry; 字串8 geometry = point; 字串8 geometry.SpatialReference = sr1; 字串8 geometry.Project(sr2); 字串7 point = geometry as IPoint; 字串1 double x; 字串7 double y; 字串3 point.QueryCoords(out x, out y); 字串1 Debug.Print(X: + x.ToString(); 字串8 Debug.Print(Y: + y.ToString(); 字串5IGeometry接口的Project方法提供的投影操作实现了最基本的坐标转换功能. 实际数据处理过程中, 比较明确数据转换前后空间参考信息情况下一般用此方法作坐标转换,不同投影带之间的坐标转换就是一个典型. 字串9 3.1.2 ITransform2D接口ITransform2D接口不仅提供了图形平移, 旋转和缩放,还提供了更加强大的坐标转换方法Transform. 其定义如下:(C#语法) 字串2 public void Transform ( 字串9 esriTransformDirection direction, 字串8 ITransformation transformation 字串2 ); 字串4在该方法中, 参数direction是转换方向, transformation是一个Itransformation接口, 而Itransformation接口由很多类实现,这意味着不同的实现类,所包含的坐标转换数学公式是不一的, 这里面包括二次多项式转换(AffineTransformation2D), AbridgedMolodensky转换(AbridgedMolodenskyTransformation)等。每一种实现类的转换方法这里不再赘述,可参照ArcObjects联机帮助获得更详细的信息,下面举例来说明该方法的使用:(Delphi 代码) 字串6procedure Transform_(FromPtColl, ToPtColl: IPointCollection; pGeo as IGeometry); 字串3 var 字串1 pAffineTransformation2D: IAffineTransformation2D; 字串5 ControlPtCnt: integer; 字串2 FormPtArray: array of IPoint; 字串1 ToPtArray: array of IPoint; 字串3 i: integer; 字串9 pTransform2D: ITransform2D; 字串6 begin 字串3 /判断给定的控制点是否合法 字串5 if FromPtColl.PointCount ToPtColl.PointCount then 字串7 begin 字串9 /控制点不成对错误 字串8 exit; 字串1 end; 字串3 if FromPtColl.PointCount 4 then 字串9 begin 字串8 /控制点不能少于4个 字串7 exit; 字串4 end; 字串3 ControlPtCnt := FromPtColl.PointCount; 字串6 SetLength(FormPtArray, ControlPtCnt); 字串1 SetLength(ToPtArray, ControlPtCnt); 字串8 for i := 0 to ControlPtCnt -1 do 字串3 begin 字串4 FormPtArray := CoPoint.Create as IPoint; 字串9 FormPtArray.PutCoords(FromPtColl.Point.X, FromPtColl.Point.Y); 字串9 ToPtArray := CoPoint.Create as IPoint; 字串5 ToPtArray.PutCoords(ToPtColl.Point.X, ToPtColl.Point.Y); 字串4 end; 字串7 /创建 AffineTransformation2D 对象 字串9 pAffineTransformation2D := CoAffineTransformation2D.Create as IAffineTransformation2D; 字串8 /设置控制点信息 字串6 pAffineTransformation2D.DefineFromControlPoints(ControlPtCnt, FormPtArray0, ToPtArray0); 字串1 /转到ITransform2D接口 字串1 pTransform2D := pGeo as ITransform2D; 字串1 /坐标转换 字串1 pTransform2d.Transform(esriTransformForward, pAffineTransformation2D); 字串8 end; 字串8 字串6 ITransform接口较Igeoemtry提供了更加丰富的坐标转换方法。 字串93.2 影像数据纠正。影像数据纠正可以通过IrasterGeometryProc接口实现。该接口提供了影像Clip, Filp, Merge, Mirror以及Mosaic等操作。如果通过控制点的方式对影像进行纠正处理可以通过该接口的wrap方法。该方法声明如下:(C#语法) 字串6public void Warp ( 字串1 IPointCollection sourceControlPoints, 字串8 IPointCollection targetControlPoints, 字串4 esriGeoTransTypeEnum transformType, 字串5 IRaster ipRaster 字串9 ); 字串5参数 sourceControlPoints和targetControlPoint定义了控制点信息, transformType定义了坐标转换方法, ipRaster是需要转换的Raster对象. 以下代码是该接口使用的例子: 字串6public static void GeoreferenceRaster(IRasterDataset2 rasterDataset, IPointCollection sourcePoints, IPointCollection targetPoints) 字串9 字串2 /this sample show how to georeference a raster using control points 字串7 / sourcePoints: represents source control points 字串6 / targetPoints: represents target control points IRasterGeometryProc rasterPropc = new RasterGeometryProcClass(); 字串6 IRaster raster = rasterDataset.CreateDefaultRaster(); /set the transformatin 字串2 rasterPropc.Warp(sourcePoints, targetPoin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学毕业典礼活动的策划方案
- 2025年急危重症医学危重症监护护理实践考核答案及解析
- 2025年食管胃肠镜检查解读训练答案及解析
- 2025年放射肿瘤学放疗计划设计知识检测模拟考试卷答案及解析
- 2025年中药制药工艺流程掌握考核模拟试卷答案及解析
- 2025年医学心理学患者心理疏导训练考核答案及解析
- 2025年营养学营养学实践操作规范考核试卷答案及解析
- 服装行业:新质生产力的升级路径
- 新质生产力如何因地制宜
- 2025年外科护士的急救技能评估试卷答案及解析
- 职场礼仪之应酬礼仪
- 小学数学五年级上册《轴对称的再认识(一)》课件
- 《关于加强和改进新时代师德师风建设的意见》培训课件
- 影视广告创意设计和制作PPT完整全套教学课件
- 第十四章滚动轴承相关设计
- GB/T 14456.1-2017绿茶第1部分:基本要求
- 远离电子烟主题班会课件
- 设备维护保养手册
- ZYHZYHC系列自控远红外电焊条烘干炉使用说明书
- 高中政治统编版(2022)必修3(教案)我国法治建设历程(完整文档)
- 市场营销策划(第五版)第08章 促销策划
评论
0/150
提交评论