Как получить доступ к функциям загруженного файла GML в OpenLayers? - PullRequest
4 голосов
/ 01 июня 2011

Я не могу получить доступ к функциям загруженного файла GML.Я буду использовать базовый пример OpenLayers, чтобы продемонстрировать, что я хочу сделать:

http://jsfiddle.net/AUbZn/14/

var map;

map = new OpenLayers.Map('map');
var wms = new OpenLayers.Layer.WMS("OpenLayers WMS", "http://vmap0.tiles.osgeo.org/wms/vmap0", {
    layers: 'basic'
});

var layer = new OpenLayers.Layer.Vector("GML", {
    strategies: [new OpenLayers.Strategy.Fixed()],
    protocol: new OpenLayers.Protocol.HTTP({
        url: "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D'http%3A%2F%2Fopenlayers.org%2Fdev%2Fexamples%2Fgml%2Fpolygon.xml'",
        format: new OpenLayers.Format.GML(),
    }),

});

console.log("Layer features # = " + layer.features.length) //a
console.log("Layer features = " + layer.features) //b

map.addLayers([wms, layer]);
map.zoomToExtent(new OpenLayers.Bounds(-3.92, 44.34, 4.87, 49.55));

Что бы я ни делал, я получаю только a = 0 и b = "" ..Что я не так делаю?

Спасибо!

1 Ответ

2 голосов
/ 03 июня 2011

Я нашел решение в опции 'eventListeners.featuresadded' объекта OpenLayers.Layer.Vector.

eventListeners: {
    "featuresadded": dataLoaded
},

вот рабочий jsfiddle: http://jsfiddle.net/AUbZn/16/

...