Страница 1 из 1
ответ GetFeature в разные слои. Как?
Добавлено: 08 июн 2012, 12:29
Alone
Добрый день всем.
Есть у меня контрол getFeature. Мне нужно что бы возвращаемые сервером объекты раскладывались по разным слоям.
Можно ли как то реализовать подобную задумку?
Можно ли в gml ответа внедрить информацию о слое, на который должен быть помещен объект?
Или же писать свой обработчик и инкапсулировать его в обработку ответа GetFeature?
Re: ответ GetFeature в разные слои. Как?
Добавлено: 08 июн 2012, 17:32
Alone
Отчасти понимаю, что как то должен юзаться евент beforefeaturesadded...
пролейте свет, плиз...
Re: ответ GetFeature в разные слои. Как?
Добавлено: 08 июн 2012, 18:29
Denis Rykov
Для начало неплохо было бы озвучить используемое ПО.
[ Сообщение с мобильного устройства ]
Re: ответ GetFeature в разные слои. Как?
Добавлено: 11 июн 2012, 14:08
Alone
Пардон, OpenLayers
Re: ответ GetFeature в разные слои. Как?
Добавлено: 13 июн 2012, 07:14
Denis Rykov
Ни разу не использовал в своих проектах этот контрол, поэтому в качестве примера возьмем пример из OpenLayers:
WFS GetFeature Example (GeoServer). Открываете консоль и вводите следующий код:
Код: Выделить всё
states = new OpenLayers.Layer.Vector('states');
map.addLayer(states);
lSwitcher = new OpenLayers.Control.LayerSwitcher();
map.addControl(lSwitcher);
lSwitcher.maximizeControl();
map.layers[1].setVisibility(false);
map.layers[2].setVisibility(false);
control.events.register("hoverfeature", this, function(e) {
feat = e.feature;
if (feat.fid.split('.')[0] === 'states') {
states.addFeatures([feat]);
}
});
Теперь по hover-у фича будет добавляться в новый слой states.
Re: ответ GetFeature в разные слои. Как?
Добавлено: 13 июн 2012, 15:29
Alone
Денис, спасибо.
Примерно таким путем и я пошел.
Переопределил у getFeature его реквест, и разбирая ответ, ложу объекты на нужный мне слой.