Wie bekommt man einen layer aus einem feature in Openlayers 3?
Ich kann nicht einen Weg finden, um zu gehen von einem feature in ein Auswahl-Ereignis, um eine Ebene, kann es sein, dass ein Teil ohne Traversierung alle Funktionen von alle meine Karten-Layer oder zum speichern einer künstlichen layer-ID die in jeder Funktion bei der Bildung. Ist dies einfach noch nicht möglich?
ol.js 3.7.0
ol.die Interaktion.Auswahl -> Klick -> callback( event ){ event.ausgewählt[0] }
In einem anderen Teil von meiner app, ich möchte gerne von der Funktion der Schicht zu bestimmen, der Stil, die auf der Funktion, insbesondere, ob oder nicht, es ist sichtbar.
ol.Funktion.getStyle() || ol.Feature -> (Schicht?) -> getStyle()
- Jonatas Antwort für die Auswahl, Verwendung der filter, funktioniert mit dem zusätzlichen VORBEHALT, dass ich speichern Sie alle Elemente Durchlaufen, 'filter' - Funktion in einem lokalen array, und wählen Sie im event-handler (callback), und ordnen Sie die ausgewählte Funktion mit einem dieser array-Elemente und deaktivieren Sie das array.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie versuchen, mit der filter-Funktion:
UPDATE
Ich kam mit dieser prototypied Methode, es macht den job:
http://jsfiddle.net/jonataswalker/r242y7ke/
In Openlayers 4 -
map.forEachFeatureAtPixel
können verwendet werden, um auf die übergeordnete Ebene der einzelnen Funktion.Siehe code-snippet hier: https://stackoverflow.com/a/50415743/2288488
In OL 5.3.0, die Interaktion Auswählen Objekt hat getLayer() - Funktion, um die zugehörigen layer der zuletzt ausgewählten Funktion. Beispiel: