将 x、y、区域坐标转换为纬度和经度

Converting x,y,zone coordinates to Latitude and Longitude

我想在 c# 中将我的 x、y、区域坐标转换为经纬度。我该怎么做??? 我在网上找到了一些功能,但它们不起作用 properly.plz 帮助我。 如果我的国家很重要,我住在伊朗。

例如:我给这个 x,y,zone: 271740.00,3250740.00,40

它给了我这个 [this site]: long,lat:54.648498425894694,29.36515026502202,0

一个非常好的坐标转换器是这个:Proj4 它是用 C 编写的,为了在 C# 中使用它,您可以使用这个包装器:.NET wrapper for Proj4

另一个用 C# 编写的非常好的库是 DotSpatial

其他项目是Proj4Net and Proj.Net,但是我不知道他们的质量,也许他们只是其他项目的copy/paste。可以肯定的是,它们都受到了原始 Proj4 项目的启发。

CoordinateSharp 进行这样的转换。

例子

 UniversalTransverseMercator utm = new UniversalTransverseMercator("T", 32, 233434, 234234);
 Coordinate c = UniversalTransverseMercator.ConvertUTMtoLatLong(utm);

您的 lat/long 值可以在 Coordinate 对象中找到