Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 选择&;hightlight我自己在OpenLayers上绘制3_Javascript_Openlayers 3 - Fatal编程技术网

Javascript 选择&;hightlight我自己在OpenLayers上绘制3

Javascript 选择&;hightlight我自己在OpenLayers上绘制3,javascript,openlayers-3,Javascript,Openlayers 3,我正在尝试添加一个选择交互,以高亮显示我在本例中绘制的功能,但我自己绘制: 要高亮显示功能,我使用ol.events.condition.pointerMove var highlighter = new ol.interaction.Select({ layers: [featureOverlay], condition: ol.events.condition.pointerMove }); 在我的示例中,当我绘制一个多边形时,启动“Hightlighter”并进入“

我正在尝试添加一个选择交互,以高亮显示我在本例中绘制的功能,但我自己绘制:

要高亮显示功能,我使用ol.events.condition.pointerMove

var highlighter = new ol.interaction.Select({
     layers: [featureOverlay],
     condition: ol.events.condition.pointerMove
});
在我的示例中,当我绘制一个多边形时,启动“Hightlighter”并进入“drawed”功能,它看起来像是选择切换开关

我认为这段代码适用于3.13.1版本


这是一个

您正在使用
FeatureOverlay.setMap(map)将绘制的要素添加到一个非托管的图层(旧的
ol.FeatureOverlay
。我不确定您为什么需要这个以及为什么这个会闪烁,但如果您更改为管理的
ol.layer.Vector
,则此行为将消失:

var featureOverlay = new ol.layer.Vector({
  source: new ol.source.Vector(),
  style: featureStyle
});
map.addLayer(featureOverlay);

var drawPolygon = new ol.interaction.Draw({
  source: featureOverlay.getSource(),
  type: 'Polygon'
});

谢谢Jonatas,您的代码运行良好。添加向量层不是我喜欢的,因为现在我在我的应用程序的layersTree上看到它们,它们并不总是在顶部,但我认为我可以修改它并避免这种情况behavior@A.Bahi因此,您可以发布解决方案并将其标记为正确,然后完成此主题。