我是打开街道地图和 GIS 的新手。是否有可用于开放街道地图的 java API?据我所见,它们是针对编辑地图的,我只想检索数据并显示它。如果我理解正确,我应该:发送一个 http 请求接收 XML 解析这个 XMl(不知何故?)将它渲染为一个地图(任何图书馆推荐?)
谢谢
我是打开街道地图和 GIS 的新手。是否有可用于开放街道地图的 java API?据我所见,它们是针对编辑地图的,我只想检索数据并显示它。如果我理解正确,我应该:发送一个 http 请求接收 XML 解析这个 XMl(不知何故?)将它渲染为一个地图(任何图书馆推荐?)
谢谢
您是否可以简单地显示预渲染图块,或者您是否需要将数据处理成一些新的可视化格式?如果是前者,您可以从 Tileserver获取 PNG 。如果是后者,是的,你会从Overpass之类的东西中查询 XML 数据,然后由你来解析 XML 数据并用它做事。
我发现 XSLT 是一种很好的方式来指定如何将原始 XML 转换为更适合的形式(这是我提供的一个简单的 OSM XSLT)。
你试过 JOSM 吗?它是开源桌面应用程序,主要目的是编辑 OSM 数据,但我用它在我自己的 GUI 中显示地图。我已经对 JOSM ( https://github.com/zmau/josm ) 做了一个分支,并且在那里我启用了禁用它自己的 GUI,并进行了一些其他调整。之后,我将他们的 MapView 控件放到了我的摇摆窗口上(在我的项目中,它引用了这个分叉的 JOSM 变体),并成功地在上面显示了一张地图。(如果您查看我的 fork 中的提交,您会发现比您需要的更改更多,因为我使用 josm 在某些非常特定的设备上显示地图,而您不需要。)