0

I'm trying to import map tiles into polymaps using the following directory path:

http://pelagios.dme.ait.ac.at/tilesets/imperium/{z}/{x}/{y}/.png

but I'm getting a 404 error. Here's my code:

   var po = org.polymaps;

   var map = po.map().container(document.body.appendChild(po.svg("svg")));

   map.add(po.image()
      .url(po.url
          ("http://pelagios.dme.ait.ac.at/tilesets/imperium/{z}/{x}/{y}/.png")));

The png files definitely exist, as they're visible at http://pelagios.dme.ait.ac.at/tilesets/imperium/. What's more, I've seen this same syntax used in various polymaps examples.

Any advice as to how to import these tiles?

4

1 回答 1

0

首先,您需要将变量转换为大写并删除 URL 中的最后一个斜杠字符。正确的网址是:

http://pelagios.dme.ait.ac.at/tilesets/imperium/{Z}/{X}/{Y}.png

我将您的代码复制到一个空的 HTML 文件中,并且至少使用默认容器大小,地图缩放级别设置为 12。您的地图图块服务器似乎只包含缩放级别为 3 到 11 的地图图块。

除此之外,您应该将地图中心设置为有意义的东西,这样您就可以在地图上查看找到地图图块的位置。

以下修改后的代码似乎可以工作并显示来自地中海地区的一些地图图块:

var po = org.polymaps;

var map = po.map()
 .container(document.body.appendChild(po.svg("svg")))
 .zoomRange([3, 11])
 .zoom(5)
 .size({x: 800, y: 600})
 .center({lat: 40, lon: 10})
 .add(po.image().url(po.url("http://pelagios.dme.ait.ac.at/tilesets/imperium/{Z}/{X}/{Y}.png")));
于 2013-11-23T22:36:51.257 回答