这条JavaScript线是做什么的(Google Maps API)?

时间:2016-01-20 15:57:38

标签: javascript google-maps google-maps-api-3

var bounds = {
17: [[20969, 20970], [50657, 50658]],
18: [[41939, 41940], [101315, 101317]],
19: [[83878, 83881], [202631, 202634]],
20: [[167757, 167763], [405263, 405269]]
};

(在此处找到:https://developers.google.com/maps/documentation/javascript/examples/maptype-image-overlay

我从谷歌地图Javascript API中找到了这个,我试图找出它与地图和叠加本身的关系。对我来说,这似乎是一个对象,它将17,18,19和20声明为由两个子数组组成的数组。

编辑:我真正想知道的是边界如何与我链接的其余代码进行交互。这些坐标是否位于叠加层的位置?

1 个答案:

答案 0 :(得分:0)

if (zoom < 17 || zoom > 20 ||
      bounds[zoom][0][0] > coord.x || coord.x > bounds[zoom][0][1] ||
      bounds[zoom][1][0] > coord.y || coord.y > bounds[zoom][1][1]) {
    return null;
}
return ['http://www.gstatic.com/io2010maps/tiles/5/L2_',
      zoom, '_', coord.x, '_', coord.y, '.png'].join('');

bounds根据缩放显示图像(17,18,19,20是缩放级别),具体取决于您在地图上的位置(x&amp; y)。数组包含坐标x和y(最小值和最大值),具体取决于缩放。

如果您在坐标之外(在地图上滚动时)或者如果缩放级别太大,则不会显示图片。