0

首先:我尝试重新制作一个名为 regionkarten.com 的网站 它是一家德国地图出版商。此页面使用 Google API v2 来显示我们的自定义地图。

我的工作是将页面更新到 API v3。现在我找到了 jQuery GoMap 插件并尝试使用它,但它似乎不支持自定义地图

我试图用自定义地图定义一个 Overly

var ehsTypeBOptions =
{
    getTileUrl: function(coord, zoom)
    {
        var x = coord.x;
        var y = coord.y;
        return "http://regionalkarten.com/_map/ehs_village_maps/is_maps/z"+zoom+"/"+coord.y+"/"+coord.x+".png";
    },
    tileSize: new google.maps.Size(256, 256),
};

并将其加载到地图中:

map.overlayMapTypes.insertAt(0, new google.maps.ImageMapType(ehsTypeBOptions));

没有 GoMap 也能正常工作。所以我尝试了:

$.goMap.overlayMapTypes.insertAt(0, new google.maps.ImageMapType(ehsTypeBOptions));

你猜怎么着,它没有用:(

GoMaps 网页和谷歌不是很有帮助。请记住,我必须将自定义地图加载到叠加层中。我需要覆盖层后面的真实谷歌地图,因为我们的地图不是无缝的。我希望你对 GoMap 有一些想法或经验。

谢谢你。

4

1 回答 1

1

$.goMap不返回本机google.maps.Map实例,因此您不能在那里使用 Maps-API-methods。

google.maps.Map-instance 可以通过$.goMap.map.

除此之外:我建议不要使用这个库,自 1 年以来没有任何更新,这一切都可以在没有任何额外库的情况下完成。

更重要的是:在您继续使用 之前ImageMapType,这不是适合您的 MapType,因为 TileServer 似乎不为整个世界提供图块。

当用户平移或缩放以使视口中的某个区域没有可用的平铺时,该区域将显示为灰色空间。您最好使用 aOverlay MapType并将叠加层的背景图像设置为 TileUrl(此外,您可以使用检查 Tile 是否可用的条件来减少对 tile-server 的不必要请求)

于 2013-02-07T13:52:59.520 回答