以下处理程序(行话中的草图)显示可缩放的世界地图。我从this site复制了它。这是我第一次去这个图书馆,后来我希望开发一个程序,在可缩放和可上映的地图上绘制GPS位置数据。
import de.fhpotsdam.unfolding.*;
import de.fhpotsdam.unfolding.geo.*;
import de.fhpotsdam.unfolding.utils.*;
UnfoldingMap map;
void setup() {
size(800, 600);
map = new UnfoldingMap(this);
MapUtils.createDefaultEventDispatcher(this, map);
}
void draw() {
map.draw();
}
它最初显示世界地图并立即发出此警告:
Unfolding Map v0.9.6
No OpenGL renderer. Using Java2DMapDisplay.
log4j:WARN No appenders could be found for logger
(de.fhpotsdam.unfolding.mapdisplay.AbstractMapDisplay).
log4j:WARN Please initialize the log4j system properly.
我可以非常精确地放大到大约1:50,000的比例,但是试图放大更近会带来这么长的错误列表。我假设他们详细地依赖于我正在看哪个区域,但它们总是非常相似。
Unfolding Map v0.9.6
No OpenGL renderer. Using Java2DMapDisplay.
log4j:WARN No appenders could be found for logger
(de.fhpotsdam.unfolding.mapdisplay.AbstractMapDisplay).
log4j:WARN Please initialize the log4j system properly.
The file "http://a.www.toolserver.org/tiles/bw-mapnik/18/130751/86722.png" is missing or
inaccessible, make sure the URL is valid or that the file has been added to your sketch
and is readable.
The file "http://a.www.toolserver.org/tiles/bw-mapnik/18/130751/86723.png" is missing or
inaccessible, make sure the URL is valid or that the file has been added to your sketch
and is readable.
.... (cut out about 30 similar warnings)
The file "http://a.www.toolserver.org/tiles/bw-mapnik/15/16320/10950.png" is missing or
inaccessible, make sure the URL is valid or that the file has been added to your sketch
and is readable.
所以,我的问题是:拜托,这一切意味着什么,我可以或者应该对此做些什么。网上有很多关于此的帖子,但这些建议非常令人困惑,他们都认为你已经了解了正在发生的事情。
答案 0 :(得分:3)
在这里展开地图开发者。
消息面板中的前两行为您提供有关正在使用的展开版本和处理渲染器的一些信息。您可以通过在Processing的尺寸方法中指定渲染器来切换渲染器,例如, size(800, 600, P2D);
下一个警告通知您未正确设置日志系统log4j。这不应该发生在几个版本之后,所以我想知道为什么你会看到这个。 (你能说出OS,Java和Processing版本吗?)
关于您的主要问题:是的,默认地图图块提供程序(bw-mapnik)仅提供最多18个缩放级别。您可以切换到其他一些提供最多19个的地图提供程序,但它们更少见。 (有关示例,请参阅OSM wiki)查看我们的教程,了解如何set or switch map tile providers和此list of available Unfolding providers。
但是,使用默认地图,您应该已经可以缩放到提供最高1:2000的地图分辨率的级别(比较OSM wiki on zoom levels and resolutions)。 如果您需要高于此值的分辨率(例如1:500),则必须创建自己的地图提供程序。例如,TileMill允许创建最大为22级的切片,这可能足以满足您的需求。然后导出的地图可以与展开一起使用。