zoukankan      html  css  js  c++  java
  • PIE SDK 坐标系创建、定义、对比

    1.    坐标系创建

    1.1    WKT字符串导入空间参考

        ISpatialReference接口是一个任何空间参考对象都实现的接口,它包含了所有空间参考对象都公有的方法和属性,如获得空间参考对象的Domain、Name、ExportToWkt等方法和属性等。

        下面对从WKT字符串导入空间参考的方法进行介绍。

    ImportFromWkt方法

    函数原型:

        bool ImportFromWkt(String strWkT);

    函数说明:

        该方法用于从WKT字符串导入空间参考,参数为该WKT字符串。

    参数说明:

    名称

    说明

    strWkT

    目标WKT字符串

    返回值

    导入成功时为true,否则为false

     

    项目路径

    百度云盘地址下/PIE示例程序/05.坐标转换/SpatialReference. SpatialReference

    视频路径

    百度云盘地址下/PIE视频教程/05.坐标转换/坐标系创建、定义、对比avi

    示例代码

    string str_BJ54 = "GEOGCS["GCS_Beijing_1954",DATUM["D_Beijing_1954",SPHEROID
    
    ["Krasovsky_1940",6378245,298.3]],PRIMEM["Greenwich",0],UNIT["Degree",
    
    0.017453292519943295]]";
    
     ISpatialReference spatialReference1 = new GeographicCoordinateSystem();
     spatialReference1.ImportFromWkt(str_BJ54);

    1.2    EPSG编码创建空间参考

        SpatialReferenceFactory类是一个空间参考工厂。下面对从EPSG编码创建空间参考的方法进行介绍。

    CreateSpatialReference方法

    函数原型:

        ISpatialReference CreateSpatialReference  ( int  code );

    函数说明:

        从EPSG编码创建空间参考。

    参数说明:

    名称

    说明

    code

    EPSG编码

    返回值

    空间参考

    示例代码

            //从EPSG编码创建空间参考
    
                ISpatialReference spatialReference_BJ54 = SpatialReferenceFactory.CreateSpatialReference((int)GeoCSType.GeoCSType_WGS1984);

    2.    坐标系定义

        Geometry类是所有几何形体对象的父类,它是一个抽象类,IGeometry接口定义了所有的几何对象都有的方法和属性。

        下面介绍坐标系定义的主要接口。

    SpatialReference属性

        获取或设置空间参考。

    示例代码

     1 // 定义点
     3             IPoint point = new PIE.Geometry.Point();
     5             point.PutCoords(104, 45, 0.0);    
     6 
     9 // 设置空间参考
    11             IGeometry geo = point as IGeometry;
    13             geo.SpatialReference = spatialReference1;

    3. 坐标系对比

    3.1 地理坐标系

        地理坐标系统,也可称为真实世界的坐标系,是确定地物在地球上位置的坐标系。

       下面的代码为北京54地理坐标系的WKT字符串。

    示例代码

    string str_BJ54 = "GEOGCS["GCS_Beijing_1954",DATUM["D_Beijing_1954",SPHEROID
    
    ["Krasovsky_1940",6378245,298.3]],PRIMEM["Greenwich",0],UNIT["Degree",
    
    0.017453292519943295]]";

    3.2 投影坐标系

        投影坐标系统是将三维地理坐标系统上的经纬网投影到二维平面地图上使用的坐标系统。

        下面的代码为北京54(18度带)投影坐标系的WKT字符串。

    示例代码

    string str_BJ54_18 = "PROJCS["Beijing_1954_GK_Zone_18",GEOGCS["GCS_Beijing_1954",DATUM
    
    ["D_Beijing_1954",SPHEROID["Krasovsky_1940",6378245,298.3]],PRIMEM
    
    ["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION
    
    ["Transverse_Mercator"],PARAMETER["False_Easting",18500000],PARAMETER
    
    ["False_Northing",0],PARAMETER["Central_Meridian",105],PARAMETER
    
    ["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1]]";
  • 相关阅读:
    linux中inittab文件详解
    Linux的 test 命令使用
    程序的链接和装入及Linux下动态链接的实现
    linux虚拟内存管理简要总结
    一些vim技巧和经验
    Linux cp mv rm ln 命令对于 inode 和 dentry 的影响
    Linux C编程一站式学习
    虚拟内存管理
    为何cp覆盖进程的动态库(so)会导致coredump
    linux下So覆盖导致coredump问题的分析
  • 原文地址:https://www.cnblogs.com/PIESat/p/10280871.html
Copyright © 2011-2022 走看看