将lat/lng投影到google地图上的x,y像素

2024-09-29 23:19:18 发布

您现在位置:Python中文网/ 问答频道 /正文

在python中,我希望将lat/lng(在epsg4326中)转换为googlemaps像素中的x,y(假设最接近的缩放级别)。在

pyproj允许我使用以下代码在投影空间之间进行转换:

>>> p1 = pyproj.Proj(init='epsg:4326')
>>> p2 = pyproj.Proj(init='epsg:3857')
>>> pyproj.transform(p1, p2, 10, 10)
>>> pyproj.transform(p1, p2, 10, 10)
(1113194.9079327343, 1118889.9748579597)

我不确定的是,用正确的投影来获得x,y像素。在

在这个页面上有一个转换的PHP实现: http://www.appelsiini.net/2008/11/introduction-to-marker-clustering-with-google-maps

^{pr2}$

我宁愿使用pyproj,而不是用python手动编写转换,因为它更灵活,更容易反向转换。在

以下是实现在采样点(10,10)上给出的值:

>>> lon_to_x(10)
283348536.88889694

>>> lat_to_y(10)
253446080.30134577

Tags: toinittransform像素级别epsg投影proj

热门问题