首页 文章

可以将Google流量图层添加到OpenLayers 2 Map ,而不显示Google基本 Map

提问于
浏览
2

我知道我可以将一张谷歌 Map 作为OpenLayers.Layer.Google(.v3)图层添加到OpenLayers 2 Map 中,并可以使用以下代码将流量图层添加到包含的 Map 中:

var map;

function init() {
    map = new OpenLayers.Map('map');
    map.addControl(new OpenLayers.Control.LayerSwitcher());

    var gphy = new OpenLayers.Layer.Google(
        "Google Physical",
        {type: google.maps.MapTypeId.TERRAIN}
    );
    var gmap = new OpenLayers.Layer.Google(
        "Google Streets", // the default
        {numZoomLevels: 20}
    );

    map.addLayers([gmap, gphy]);

    var trafficLayer = new google.maps.TrafficLayer();
    trafficLayer.setMap(gmap.mapObject);

    map.setCenter(new OpenLayers.LonLat(-2, 50.9).transform(
        new OpenLayers.Projection("EPSG:4326"),
        map.getProjectionObject()
    ), 10);

}

但是,我们的网站使用一组标准基本 Map ,我们希望能够在这些 Map 上显示交通图层 . 这可能吗?

我们也有兴趣以类似的方式显示Google天气和Streetview叠加层 .

我们的网站已经使用了球形墨卡托投影,所以这不是问题 .

1 回答

  • 3

    来自Google Map 服务条款:

    (h)没有谷歌 Map 就不使用内容 . 除非您在Maps API文档中明确允许,否则您不得在没有相应Google Map 的情况下使用或显示内容 . 在任何情况下,您都不得在非谷歌 Map 上使用或显示内容 . 例如,您不得将通过服务获得的地理编码与非Google Map 结合使用 . 另外一个示例是,您不得在非谷歌 Map 旁边显示街景图像,但您可以在没有相应谷歌 Map 的情况下显示街景图像,因为Maps API文档明确允许您这样做 .

    简而言之,您不能将谷歌 Map 内容与非Google Map 一起使用,但您可以使用它 without Map ,具体取决于API文档所说的内容 .

相关问题