无法合并两个不同的对象

时间:2018-09-27 14:00:59

标签: vector openmaptiles

我正在尝试将基于this教程的矢量图块(由shapefile生成)与特定国家/地区的另一个mbtile文件组合在一起,该文件是我从openmaptiles下载的。 我将mbtiles托管在本地的tileserver中,该服务器位于无所事事的机器中。然后使用OL3在映射客户端上显示它们。通过使用以下用于定义来源的参数,我可以毫无问题地显示第二个对象(国家)。

"data_vector":{
    "type": "vector",
    "tiles": [
      "http://localhost:8080/data/v3/{z}/{x}/{y}.pbf"]
  }

我想用另一个mbtile文件添加另一个源。根据{{​​3}}教程,我可以通过添加更多源来合并mbtile文件。 我尝试执行以下操作:

"mymaptiles": {
      "type": "vector",
      "url": "mbtiles:///Users/dkar/workspaces/other/workshops/osmfoundation_workshop/opt/maps/wld_poi_warehouses_wfp.mbtiles"
  }

但是当我尝试从浏览器访问地图时,出现以下错误:

TileJSON.js:85 Failed to load mbtiles:///Users/dkar/workspaces/other/workshops/osmfoundation_workshop/opt/maps/wld_poi_warehouses_wfp.mbtiles: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

这是使其正常工作的正确方法吗?如果是,该如何使该mbtile出现在地图上?

1 个答案:

答案 0 :(得分:1)

据我所知,您的问题是您需要在Web服务器上的///Users/dkar/workspaces/other/workshops/osmfoundation_workshop/opt/maps/wld_poi_warehouses_wfp.mbtiles上提供自定义mbtile。您的浏览器不允许您访问本地文件存储。