• CAD输出的局部平面坐标数据配准转换到WGS84坐标系


              

     局部平面坐标                                             平移纠正到常用平面坐标系下的坐标            转换后的地理坐标

    采用两种方法实现局部平面坐标到地理坐标系的转换:

    1.直接进行配准纠正(需要多个控制点,即转换之后点对应的地理坐标);

    2.平移转换纠正方法(需要一个控制点);

    方法1具体步骤如下:

    1.选择控制点,准备配准txt文件;

      选择多个控制点,并找到其原始坐标和对应的经纬度坐标。

         

    2. 用ArcMap中的“空间校正”工具条进行配准;

       矢量数据用“空间校正”,栅格数据用“地理配准”

       首先,在“编辑器”中开始编辑,

       然后,在“空间校正”中找到“连接线”——“打开连接线文件”,

                打开准备好的txt文件。打开txt后如下图:

                

       接着,用“编辑器”中的选择工具选择要配准的要素后,

                点击“空间校正”中的“校正”,实现矢量数据配准。

    3. 把配准后的数据定义为地理坐标系即可。

    方法2具体步骤:

    1.准备一个控制点,即图上某点的原始坐标和对应的经纬度坐标;

       本例中:

       原始坐标:12960496.572  4852183.618

       对应经纬度坐标:116.425972,39.904985

    2.根据所在投影带,计算控制点经纬度坐标的平面坐标系,

       本例中,

       为把116.425972,39.904985转换到esriSRProjCS_WGS1984UTM_50N带的平面坐标系;

       转换后的平面坐标:450933.14974104078,4417369.25260672

       转换代码:   

     1             IGeometry geo;
     2             IPoint pt = new PointClass();
     3             pt.X = 116.425972;
     4             pt.Y = 39.904985;
     5             geo = pt as IGeometry;
     6 
     7             ISpatialReferenceFactory pSRF = new SpatialReferenceEnvironmentClass();
     8             geo.SpatialReference = pSRF.CreateGeographicCoordinateSystem((int)esriSRGeoCSType.esriSRGeoCS_WGS1984);            
     9             geo.Project(pSRF.CreateProjectedCoordinateSystem((int)esriSRProjCSType.esriSRProjCS_WGS1984UTM_50N));//适合北京的wgs84带
    10 
    11             IPoint ptGeo = new PointClass();
    12             ptGeo = geo as IPoint;                
    View Code

    3. 在ArcMap中把原始数据平移到正确的平面坐标值;

        本例中,

        原始点:12960496.572  4852183.618

        要平移到的位置点:450933.14974104078,4417369.25260672

        计算出移动增量:-12509583.8953893, -432971.20876052

        用“编辑器”的“移动”工具实现对原始数据的位置移动,

         

    4. 平移后的数据定义为平面坐标,然后转换为经纬度坐标;

        如:

        定义为

        然后转换为

    没了。

      

  • 相关阅读:
    uGUI知识点剖析之RectTransform
    C#中的结构体要使用new来实例化吗?
    LOL数值分析
    【《Effective C#》提炼总结】提高Unity中C#代码质量的21条准则
    AnimationCurve
    Unity3D 自动添加Fbx Animation Event
    unity 代码添加AnimationEvent
    untiy AnimationEvent添加返回参数
    Windows CreateEvent,SetEvent,WaitForSingleObject的用法
    C++ Socket编程步骤
  • 原文地址:https://www.cnblogs.com/fatherZyl/p/3325988.html
Copyright © 2020-2023  润新知