gpt4 book ai didi

python - 墨卡托投影略有偏差

转载 作者:行者123 更新时间:2023-11-28 21:52:53 30 4
gpt4 key购买 nike

我正在构建一个需要大量谷歌地图图像的项目。我将这些函数定义为在另一个自动收集图像的函数中使用。纬度变化很好,但我注意到经度略有偏差。那是近似墨卡托投影法的产物吗?我的印象是我使用的转换非常准确,除了接近两极。

import math
import os
import DLMaps
#Finds the distance covered in a Static Maps image pixel
def PixDist(zoom,scale=2):
earthCirc = 40075.0 #in Km's
base = 256 #size of google maps at zoom = 0
return earthCirc/(base*scale*(2**zoom))

#Finds the Km distance to the next google static maps image based on size of images,
# and distance per pixel
def DistNextImage(distpp, scale=2, size=640):
return distpp*scale*size

#returns a new Lat, Lon co-ordinate given a starting point, km distance change and
# a NESW direction, values 1-4 being used to represent corresponding direction.
def NewLatLon(lat,lon, dist, direction):
if direction==1:
dist = dist/110.54 #approximate change in latitude mercator projection
lat = lat + dist #heading north
elif direction == 2:
dist = dist/(110.32 * math.cos(math.pi*lat/180.0)) #approx change in lon
lon = lon + dist
elif direction==3:
dist = dist/110.54 #approximate change in latitude mercator projection
lat = lat - dist #heading south
elif direction ==4:
dist = dist/(110.32 * math.cos(math.pi*lat/180.0)) #approx change in lon
lon = lon - dist
return lat, lon

最佳答案

地球不是一个真正的椭球体,有很多坐标系,从一个系统到另一个系统远非易事。你可以看看pyproj众所周知的 proj.4 库的 Python 接口(interface),用于从 Lat-Lon(我假设 WGS84 ...)转换为几乎任何其他坐标,当然包括 Mercator。您可以尝试自己滚动,但有很多注意事项,例如不同的原点子午线、引用椭球的细微差异,您几乎没有希望获得正确和准确的结果。

但是您在 wikipedia 上有一些关于 WGS84 的引用资料|

关于python - 墨卡托投影略有偏差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27598753/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com