2017-03-03 97 views
0

OpenLayers 3中有一个功能,当您绘制某个对象并仅点击某个几何体的顶点时,该顶点就会消失。因此,例如,具有三个顶点的线条可能会变成具有两个顶点的线条。我的一个用户称这个功能为核武器,因为它可能会将整个地图的交互变成一团糟 - 比如说,您正在一个靠近另一个的地方绘制某些特征,并且无意中点击了一个顶点。在这种情况下,整个功能被破坏。那么,我们如何防止这种行为呢?绘制交互。如何防止点击它们时去除顶点

回答

1

通过点击一个矢量特征去除顶点是一个正常的行为,来自ol.interaction.Modify。其默认条件是:当发生一次单击时。在这里看到:in the modify.js source code。请参阅documentation of the modify interaction。请参阅deleteCondition。这对你来说是第一个可能的解决方案。您可以设置一个条件,以便触发此功能所需的不仅仅是简单的单击操作。这将解决你的问题。

你说这发生了,而绘图。在绘制时,也可能不是一个有效的修改交互活动。这对你来说是第二个很好的解决方案。我个人也会高度建议采用这种方法。在地图中,一次只能有一个工具处于活动状态。绘图和修改功能不应同时处于活动状态。

+0

如果我还可以添加,请彬彬有礼。这不是一个“可怕的”行为。相反,它是高度可定制的。你所描述的故事是你自己错误的结果。用礼貌的方式描述你的问题最终总会让人们更愿意提供帮助。干杯。 –

+0

非常感谢!这真的很有帮助 – Jacobian

+0

修正了它。现在没有更可怕的行为:) – Jacobian