4

可能重复:
东向北到纬度经度

我在数据库中有许多北移/东移数据(例如:)n 15217, e 88911,我需要Lat/long使用 T-SQL 将其转换为。

我该怎么做?

4

2 回答 2

7

这里有一个开源 dll 库(geocoordconversion),可以将东/北转换为纬度/经度。因此,您可以敲出一些东西以将其用于原始转换。

或者,可能有用的是,我在 GitHub 上有一个项目,该项目使用此 DLL 将完整的军械调查邮政编码数据集导入 SQL Server,将东/北转换为纬度/经度。这可作为命令行可执行文件使用。如果这与您想要的完全一致,那么您也许可以使用它。或者至少,有代码强调如何使用 DLL 执行转换。

更新 从我的项目中,.NET 片段使用 dll 转换为纬度/经度:

/// <summary>
/// Converts northing and easting coordinates into Longitude/Latitude coordinates in the WGS84 coordinate system.
/// </summary>
/// <param name="northing">northing coordinate</param>
/// <param name="easting">easting coordinate</param>
/// <returns>converted coordinates</returns>
protected PolarGeoCoordinate ConvertToLonLat(double northing, double easting)
{
    // Use GeoCoordConversion DLL to convert the Eastings & Northings to Lon/Lat
    // coordinates in the WGS84 system. The DLL was pulled from: http://code.google.com/p/geocoordconversion/
    // and is available under the GNU General Public License v3: http://www.gnu.org/licenses/gpl.html
    GridReference gridRef = new GridReference((long)easting, (long)northing);
    PolarGeoCoordinate polarCoord = GridReference.ChangeToPolarGeo(gridRef);
    return PolarGeoCoordinate.ChangeCoordinateSystem(polarCoord, CoordinateSystems.WGS84);
}
于 2012-12-13T10:45:23.257 回答
0

如果您看到此页面显示了您可以应用更改此 UTM 格式的算法,请更改它们。您下载的页面上有一个示例电子表格,并查看计算结果。我怀疑它应该很容易抓住查找表并使用它们加入您的数据。

于 2012-12-13T10:38:32.037 回答