admin管理员组

文章数量:1414605

Here there is an overlay feature example.

It doesn't work on 3.13 OpenLayers version because of no more supported ol.FeatureOverlay.

How can be it replaced? Could you give me an example?

Here there is an overlay feature example.

It doesn't work on 3.13 OpenLayers version because of no more supported ol.FeatureOverlay.

How can be it replaced? Could you give me an example?

Share Improve this question asked Mar 7, 2016 at 12:30 Sefran2Sefran2 3,58813 gold badges73 silver badges108 bronze badges
Add a ment  | 

3 Answers 3

Reset to default 7

Copied & Pasted from changelog/v3.7.0.md

Instead of an ol.FeatureOverlay, we now use an ol.layer.Vector with an ol.source.Vector. If you previously had:

var featureOverlay = new ol.FeatureOverlay({
  map: map,
  style: overlayStyle
});
featureOverlay.addFeature(feature);
featureOverlay.removeFeature(feature);
var collection = featureOverlay.getFeatures();

you will have to change this to:

var collection = new ol.Collection();
var featureOverlay = new ol.layer.Vector({
  map: map,
  source: new ol.source.Vector({
    features: collection,
    useSpatialIndex: false // optional, might improve performance
  }),
  style: overlayStyle,
  updateWhileAnimating: true, // optional, for instant visual feedback
  updateWhileInteracting: true // optional, for instant visual feedback
});
featureOverlay.getSource().addFeature(feature);
featureOverlay.getSource().removeFeature(feature);

I had the same issue. There is an updated example on OpenLayers website for the latest version (Vector Layer - v3.14.2) where features are highlighted on mouseover.

For OL 6.3.1 Vector Layer demonstrates the highlighting on mouseover

本文标签: javascriptOpenLayers how can be olFeatureOverlay replaced in 313vStack Overflow