有一个 Python 库(utm)“用于 Python 的双向 UTM-WGS84 转换器”,可以管理单个坐标点或系列。
将 (latitude, longitude) 元组转换为 UTM 坐标:
>>> utm.from_latlon(51.2, 7.5)
结果
(395201.3103811303, 5673135.241182375, 32, 'U')
返回有形式(EASTING, NORTHING, ZONE_NUMBER, ZONE_LETTER)
。
如果使用系列,结果 EASTING 和 NORTHING 将具有相同的形状。
>>> utm.from_latlon(np.array([51.2, 49.0]), np.array([7.5, 8.4]))
结果
(array([395201.31038113, 456114.59586214]), array([5673135.24118237, 5427629.20426126]), 32, 'U')
相反,将 UTM 坐标转换为 (latitude, longitude) 元组:
>>> utm.to_latlon(340000, 5710000, 32, 'U')
(51.51852098408468, 6.693872395145327)
用语法utm.to_latlon(EASTING, NORTHING, ZONE_NUMBER, ZONE_LETTER)
。如果要使用系列,在这种情况下也是如此。根据文档,传递一系列比对函数的多次单点调用更快。