【问题标题】:Map tiles for Openstreetmaps (OSM) and Google Maps (satellite view)Openstreetmaps (OSM) 和 Google Maps(卫星视图)的地图图块
【发布时间】:2010-06-07 04:17:15
【问题描述】:

Openstreetmap (OSM) 的图块兼容 Google 地图的图块(卫星视图)吗? 我的意思是兼容 - 是否可以使用为读取 OSM 切片而编写的代码/逻辑从 Google 地图加载切片?

有人可以指出可以对此主题进行更多解释的好资源。

【问题讨论】:

    标签: google-maps tiles openstreetmap


    【解决方案1】:

    如果通过兼容,您的意思是“是否存在覆盖完全相同区域、特定缩放级别的等效磁贴”,那么是的,OpenStreetMap 磁贴与 Google 地图甚至 Bing 地图兼容。

    如果您想使用 Google Maps API 将 OSM 地图图块添加为图层,则可以使用如下代码:

    var copyOSM = new GCopyrightCollection("<a href=\"http://www.openstreetmap.org/\">OpenStreetMap</a>");
    copyOSM.addCopyright(new GCopyright(1, new GLatLngBounds(new GLatLng(-90,-180), new GLatLng(90,180)), 0, " "));
    
    var tilesMapnik     = new GTileLayer(copyOSM, 1, 17, {tileUrlTemplate: 'http://tile.openstreetmap.org/{Z}/{X}/{Y}.png'});
    var mapMapnik     = new GMapType([tilesMapnik],     G_NORMAL_MAP.getProjection(), "Mapnik");
    
    map = new GMap2(document.getElementById("map_canvas"), { mapTypes: [mapMapnik, G_SATELLITE_MAP] });
    map.setCenter(new GLatLng(32.08, 34.82), 12);
    
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    

    【讨论】:

    • 感谢您的回复。目前,我有一些代码(Java)使用 OSM API 将某个区域的地图图块下载到磁盘。是否可以使用相同的代码从 Google 地图获取图块?
    • 不合法,但过去有几个人使用过 Fiddler/Firebug,发现 X、Y 和 Z 参数相同,只是 URL 格式略有不同。
    • 可以使用类似的过程在 iPhone 上加载磁贴吗?
    • @Aaron 要做到这一点,您需要拦截浏览器的缓存,这将是更具挑战性的一步。或者,我建议使用原生平铺渲染器,而不是网络应用程序。
    • 这就是我要问的...我不想使用网络浏览器
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-31
    • 2010-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多