2016-03-07 2 views

ответ

6

скопированны & Pasted из changelog/v3.7.0.md

Вместо ol.FeatureOverlay, мы теперь используем ol.layer.Vector с ol.source.Vector. Если ранее было:

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

вам придется изменить это:

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); 
+1

Я использовал также 'featureOverlay.getSource(). Clear();' вместо 'featureOverlay.getFeatures(). Clear();' – Sefran2

2

Я была такая же проблема. На веб-сайте OpenLayers приведена обновленная версия для последней версии (Vector Layer - v3.14.2), где функции выделены при наведении указателя мыши.

Смежные вопросы