1. 程式人生 > >PIE SDK 坐標系創建、定義、對比

PIE SDK 坐標系創建、定義、對比

reat 所有 from cti aci 幾何 ring div idt

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]]";

PIE SDK 坐標系創建、定義、對比