ZIndex слоев и объектов. Кто выше, кто ниже?...

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
Alone
Интересующийся
Сообщения: 31
Зарегистрирован: 20 дек 2011, 23:32
Репутация: 0

ZIndex слоев и объектов. Кто выше, кто ниже?...

Сообщение Alone »

Добрый день, коллеги.
Помогите понять, как работает Y-ordering слоев и объектов. Вроде и понятно все, но тем не менее заблудился :oops:

Непонятка номер раз:
Есть четыре слоя. Опущу подробности кода.

Код: Выделить всё

map.addLayer(nodes);
nodes.setZIndex(300);

map.addLayer(vectors1);
vectors1.setZIndex(310);

map.addLayer(vectors2);
vectors2.setZIndex(320);

map.addLayer(vectors3);
vectors3.setZIndex(330);
Исходя из вышестоящего кода, я ожидал получить такой порядок слоев:
===самый верх
vectors3
vectors2
vectors1
nodes
===самый низ

а получил такой:
===самый верх
vectors2
vectors1
nodes
vectors3
===самый низ


Непонятка номер два:
Какую роль играет graphicZIndex в описании стилей?
Как graphicZIndex корелирует с zindex-ом слоя? Общий ли это порядок или для правил стиля я должен указывать значения не менее zindex текущего слоя слоя и не более zindex следующего слоя?

Например, корректно ли так:
vectors1(zindex=310)
style_rule11(zindex=400)
style_rule12(zindex=450)

vectors2(zindex=320)
style_rule21(zindex=500)
style_rule22(zindex=550)

Или же правильно так?:
vectors1(zindex=310)
style_rule11(zindex=311)
style_rule12(zindex=312)

vectors2(zindex=320)
style_rule21(zindex=321)
style_rule22(zindex=322)

Спасибо...
ericsson
Гуру
Сообщения: 3321
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 748
Ваше звание: Вредитель полей

Re: ZIndex слоев и объектов. Кто выше, кто ниже?...

Сообщение ericsson »

Поскольку речь идет о веб-картографии, то есть о результате в HTML+CSS, ознакомьтесь, пожалуйста, вот с этой статьей http://habrahabr.ru/post/166435/ она поставит многое на место.
Возможно, придется еще посмотреть на код Firebug-ом или аналогичным средством, чтобы увидеть, какие структуры генерируются скриптами. Наглядность - мать глубокого понимания вопроса.
Alone
Интересующийся
Сообщения: 31
Зарегистрирован: 20 дек 2011, 23:32
Репутация: 0

Re: ZIndex слоев и объектов. Кто выше, кто ниже?...

Сообщение Alone »

ознакомьтесь, пожалуйста, вот с этой статьей http://habrahabr.ru/post/166435/ она поставит многое на место
Да это я прекрасно знаю...
Насчет дебага вы правы, буду смотреть по месту. Хотя вот сейчас припоминаю (кода нет под рукой), что в style_rules есть у меня правила с прозрачностью...
И все таки... Поможет кто то внести ясность, как првильнее описывать zindex для слоев и в style_rules
Или просто это я один так заморочился? :)
Alone
Интересующийся
Сообщения: 31
Зарегистрирован: 20 дек 2011, 23:32
Репутация: 0

Re: ZIndex слоев и объектов. Кто выше, кто ниже?...

Сообщение Alone »

Хм... Сейчас вот обнаружилось, что после появления popup окна, zIndex слоев сбрасываются в дефолтные значения, начиная с 100 для Mapnik и 330 для слоев, с шагом в 5...

Код: Выделить всё

$.each(map.layers, function(k,v){logger(v.name+' '+v.getZIndex())})
Mapnik 100
layer1 330
layer2 335
layer3 340
layer4 345 
WTF???


UPD:
Проштудировав исходники, стало понятно, несколько вещей.
1. Есть разные типы слоев, типа базовый, оверлеи, попап, итд.
2. для каждого типа слоя есть свой начальный zIndex. Base(100), overlay(325), popup(725)
3. добавление слоев ведет к дерганию метода map.resetLayersZIndex(), который переустанавливает параметр ZIndex для каждого слоя.

Осталось непонятным, в какой момент создается новый слой для попапов, и почему он не удаляется при закрытии/удалении попапа.
Помимо этого, объекты самого верхнего слоя почему то оказываются самыми нижними, хотя zindex для них установлен, как самый высокий.
Причем, если удалить слой попапов, то эти объекты сразу же перемещаются на передний план, где и должны быть изначально... Вот такая катавасия... :(
Alone
Интересующийся
Сообщения: 31
Зарегистрирован: 20 дек 2011, 23:32
Репутация: 0

Re: ZIndex слоев и объектов. Кто выше, кто ниже?...

Сообщение Alone »

Капец... Сменил версию с 2.11 на 2.12 - все симптомы исчезли... :shock:
Вопросы сняты... :( Извините.
Ответить

Вернуться в «Веб-картография»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя