【发布时间】:2009-12-29 23:00:35
【问题描述】:
我想要一个世界的矢量图层,用英文显示国家边界、州及其名称。是否存在我可以控制颜色的图层?
Cloudmade 不让我完全这样做,openstreetmap 和其他一堆也不让我这样做。我想我可能需要创建一个光栅图像并覆盖它,除非我不知道在哪里可以获得可以编辑和覆盖的准确 EPS/矢量地图。
选项用完了!
【问题讨论】:
标签: vector map openlayers
我想要一个世界的矢量图层,用英文显示国家边界、州及其名称。是否存在我可以控制颜色的图层?
Cloudmade 不让我完全这样做,openstreetmap 和其他一堆也不让我这样做。我想我可能需要创建一个光栅图像并覆盖它,除非我不知道在哪里可以获得可以编辑和覆盖的准确 EPS/矢量地图。
选项用完了!
【问题讨论】:
标签: vector map openlayers
根据您的需要,您有不同的选择:
最简单的方法是使用公共 WMS 服务提供 您需要的信息。你可以检查 this one 之类的目录或 谷歌搜索像this。如果 你很幸运能找到服务 适合您,只需将其添加为 WMS OpenLayers 中的层,如中所述 这个example。
如果您找不到公共服务,您将不得不为 自己的地理数据。你有 找到世界的数据集 国家(最常见的格式 是 ESRI shapefile 和 KML)。
如果您找到 shapefile (try here),您将 必须通过地图服务器服务它 MapServer 或 Geoserver。 两者都非常简单 设置,但选择最适合您的一个(MapServer 是 CGI,Geoserver 是基于 Java 的)。使用国家/地区数据配置 WMS 服务后,您可以按照前面的示例将其添加到您的 OpenLayers 应用程序中。
如果您不能或不想使用地图服务器并且您拥有世界各国的 KML 文件,您还可以将矢量图层从 KML 文件添加到 OpenLayers,如 @ 中所述987654327@。请小心,因为所有几何图形都将在用户的浏览器中呈现(使用 SVG 或 VML),对于大型数据集,这可能是一个性能问题。检查 this example 以查看它的实际效果。
我希望这能给你一些线索。
【讨论】: