我在简单的地图上使用OpenLayers的编辑工具栏。一切正常,迄今为止,我可以绘制点,线和多边形。如何在开放层中的绘制线串上绘制点
我有画给定的地图上一个简单的线串以下结果:
我真正想要的是,的OpenLayers自动添加点到线串像这样:
这可能吗?
我在简单的地图上使用OpenLayers的编辑工具栏。一切正常,迄今为止,我可以绘制点,线和多边形。如何在开放层中的绘制线串上绘制点
我有画给定的地图上一个简单的线串以下结果:
我真正想要的是,的OpenLayers自动添加点到线串像这样:
这可能吗?
您需要将在绘图功能将循环在新创建的线的每个顶点并创建一个点的年底发射的功能(在新的层,我建议)。你想保存在某个地方吗?
map.layers[1].events.register('sketchcomplete', this, extractVertex);
//f is an object sketched
function extractVertex(f) {
var arrayOfPointsInWKT = [];
var vert = f.feature.geometry.getVertices();
for(var i = 0; i < vert.length; i++) {
arrayOfPointsInWKT.push(vert[i].toString());
}
//ajax call to the script that will save a table it in the database
}
你应该看看功能样式文件(StyleMaps,Rulebased样式等),你可以找到here。它会给你你所需要的。
编辑
当我想起它,分获路线]的一部分,看来我错了......我现在看到,这是你要找的点,超过他们的造型。对不起,错误的答案。
我在GIS网站上找到了一篇文章,看起来您可以使用它。祝你好运!
https://gis.stackexchange.com/questions/28242/show-a-collection-of-linestrings-with-labels
请评论任何downvote。我误解了这个问题吗? –
我会检查这个网站上的解决方案并很快发布我的经验 – mgr
是的,创建所需的几何图形后,所有点和线的坐标应保存在数据库中。如何在绘制一条线后触发点绘图功能? – mgr
请参阅修改。 map.layers [1]必须替换为你的矢量图层。我保存到数据库发送坐标为WKT字符串到PHP脚本,然后在SQL中:ST_GeomFromText(my_wkt_string) – Odoakr
谢谢,这真的帮助我 – mgr