我可以在Inkscape中使用多边形绘制自定义形状。我的目标是将这些形状显示在美国地图上方的固定位置。地图和多边形将显示在具有放大和缩小和平移功能的网页上。我想知道是否可以使用OpenLayers在这些地图上放置这些多边形。怎么样?哪里有例子?我对OpenLayers不够熟悉,如果可以满足我的要求,我会学到更多。我需要以编程方式能够用颜色填充服务器或客户端的每种形状。我还想基于lon / lat坐标在地图上放置标记。 OpenLayers是否支持所有这些?
这是我想做的一个例子。橙色区域在Inkscape中定义,橙色可以通过编程设置为其他颜色。这是显示在网页上的简单svg文件。
最佳答案
您应该能够将导出的SVG视为常规图像叠加层。 Here is the OpenLayers API for image overlays和here is another SO answer with a very basic image overlay example。 OpenLayers支持标记,尽管如果您将SVG嵌入为平面图像,我不确定OpenLayers是否允许您直接使用样式设置SVG元素...
顺便说一句,Polymaps是一个替代的映射库,它稍微偏向于SVG。它特别适合诸如基于数据动态转换SVG图层,为SVG元素操纵样式和类等之类的事情。根据您的示例,here's their example用于非常简单地将图像(带有定义的右上/左下坐标)投射到一张地图。
关于javascript - 如何绘制可与OpenLayers一起使用的多边形?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20112089/