【发布时间】:2014-06-20 21:29:39
【问题描述】:
我见过一些标题相似的问题,但它们似乎指的是x 和y 像素坐标。
我从谷歌地图getTile() 函数中询问x 和y 的实际图块编号:
澄清问题...
给定 getTile() 函数中的 x、y 和缩放参数,我如何找到图块的纬度和经度边界?
CoordMapType.prototype.getTile = function(coord, zoom, ownerDocument) {
var x = coord.x,
y = coord.y,
url = "http://mt1.google.com/vt/lyrs=y&x="+x+"&y="+y+"&z="+zoom;
//other stuff
}
目前我需要这个的唯一原因是我想确定这个平铺投影的最大缩放级别。从这个链接:Maximum Zoom,它指出为了找到最大缩放,我需要使用getMaxZoomAtLatLng() 的纬度和经度值。因此,如果我可以得到界限,那么我可以使用界限内的任何纬度和经度点来找到我的最大缩放。
我想到的替代方案是创建图像并检查 src url 是否有错误(这对我来说似乎是一个糟糕的主意,因为我会提出许多错误的请求来检查图像是否存在)。
var img = new Image;
img.onload = function() {/*imagery exists*/ }
img.onerror = function() {/*past maximum zoom*/ }
img.src = url;
编辑:
经过进一步调查,我意识到getMaxZoomAtLatLng() 函数正在使用不符合我的计划的 ajax 调用。但我仍然对如何找到给定图块的纬度和经度边界感兴趣(这可能对其他应用程序有用)。
【问题讨论】:
-
为什么投反对票?我在措辞和准备这个问题方面非常努力。
标签: javascript google-maps google-maps-api-3