C# 使用GDAL 将3857坐标系转给4326坐标系的代码
时间: 2023-10-03 15:07:20 浏览: 237
以下是使用GDAL库在C#中将3857坐标系转换为4326坐标系的示例代码:
```csharp
using OSGeo.OGR;
using OSGeo.OSR;
public void Convert3857To4326(double x, double y)
{
// 打开4326坐标系的空间参考对象
SpatialReference sr4326 = new SpatialReference("");
sr4326.ImportFromEPSG(4326);
// 打开3857坐标系的空间参考对象
SpatialReference sr3857 = new SpatialReference("");
sr3857.ImportFromEPSG(3857);
// 创建转换器
CoordinateTransformation ct = new CoordinateTransformation(sr3857, sr4326);
// 构建点对象
Point point = new Point(x, y);
// 使用转换器进行坐标转换
ct.TransformPoint(point);
// 输出转换后的坐标
Console.WriteLine("转换后的坐标: " + point.GetX() + ", " + point.GetY());
}
```
在上述代码中,我们首先打开了需要转换的两个坐标系的空间参考对象,然后创建了一个转换器并使用该转换器进行了坐标转换。最后,我们输出了转换后的坐标。
注意:在使用GDAL库进行坐标转换时,需要确保你已经正确地安装了GDAL库并已将其添加到项目引用中。
阅读全文