Отрисовка подписей поверх остальных слоёв

Здесь нужно сообщать об ошибках в QGIS, с подробным описанием шагов и версии ПО.
Ответить
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9
Репутация: 526
Ваше звание: Author
Контактная информация:

Отрисовка подписей поверх остальных слоёв

Сообщение Denis Rykov » 14 фев 2010, 19:09

Если в векторном слое активированы подписи, а поверх этого слоя добавлен, например, растр, то подписи оказываются поверх этого растра. Ошибка ли это?
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Komяpa
Интересующийся
Сообщения: 16
Зарегистрирован: 13 сен 2009, 11:24
Репутация: 0
Откуда: Minsk
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Komяpa » 14 фев 2010, 19:13

наблюдал. считаю, бага.
[OSM BY Team]
[http://latlon.org/] [jabber: me@komzpa.net] [mobile: +375257407159]

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9035
Зарегистрирован: 06 окт 2003, 20:20
Статьи: 231
Проекты: 12/6
Репутация: 712
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Максим Дубинин » 14 фев 2010, 23:02

я не уверен, что это ошибка
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9
Репутация: 526
Ваше звание: Author
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Denis Rykov » 14 фев 2010, 23:06

Ведь подписи относятся к конкретному слою, а если он лежит на нижнем уровне, почему вдруг они появляются наверху.
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9035
Зарегистрирован: 06 окт 2003, 20:20
Статьи: 231
Проекты: 12/6
Репутация: 712
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Максим Дубинин » 14 фев 2010, 23:18

подписи - не геометрия и хранятся в "верхнем" слоев.

допустим у тебя полигоны стран (внизу) и дороги (вверху), ты подписал страны, по твоей логике ты будешь ожидать, что названия стран будут "изрезаны" дорогами?
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9
Репутация: 526
Ваше звание: Author
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Denis Rykov » 14 фев 2010, 23:41

С векторными слоями понятно. А если вектор полностью перекрывается растром, то от вектора никакой информации не сохраняется (при непрозрачном растре), в этом случае подписи как бы не к месту?
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9035
Зарегистрирован: 06 окт 2003, 20:20
Статьи: 231
Проекты: 12/6
Репутация: 712
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Максим Дубинин » 14 фев 2010, 23:43

а зачем в этом случае подписи вообще тогда показывать? да и сам вектор тоже.
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9
Репутация: 526
Ваше звание: Author
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Denis Rykov » 15 фев 2010, 00:01

Я считаю, что подписи слоев, находящихся под другими слоями могут быть видны только при условии прозрачности перекрывающих их слоев, или как в случае с дорогами - не полного перекрытия - тогда прозрачность просто не к чему. А так как растр непрозрачен, то и подписей нижележащих слоев не должно быть.

Сейчас же получается, что подписи как бы виртуально выносятся на один общий самый верхний слой вне зависимости от порядка слоев к которым они принадлежат. Да, скорее всего, это не ошибка, а особенность программы.
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9035
Зарегистрирован: 06 окт 2003, 20:20
Статьи: 231
Проекты: 12/6
Репутация: 712
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Максим Дубинин » 15 фев 2010, 00:37

не совсем понял, как ты предлагаешь быть в случае с дорогами?
пристегивайтесь, турбулентность прямо по курсу

manisha
Завсегдатай
Сообщения: 410
Зарегистрирован: 24 авг 2006, 17:35
Статьи: 2
Проекты: 1
Репутация: 10

Re: Отрисовка подписей поверх остальных слоёв

Сообщение manisha » 15 фев 2010, 01:39

По-моему, подписи поверх всех слоев - это привычно и удобно, в общем не бага.

Аватара пользователя
Komяpa
Интересующийся
Сообщения: 16
Зарегистрирован: 13 сен 2009, 11:24
Репутация: 0
Откуда: Minsk
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Komяpa » 15 фев 2010, 08:11

Это бага, потому что такое поведение невозможно обойти.
Если надписи относятся к слою, и я хочу его частично перекрыть полупрозрачной wms (допустим) - у меня нет способа сделать так, чтобы оказалась перекрыта только часть надписей.
Если же надписи рендерятся вместе со слоем - можно имитировать поведение рендеринга надписей исключительно вверху, к примеру, положив наверх такой же слой и не показывая от него геометрию, только надписи.
[OSM BY Team]
[http://latlon.org/] [jabber: me@komzpa.net] [mobile: +375257407159]

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9035
Зарегистрирован: 06 окт 2003, 20:20
Статьи: 231
Проекты: 12/6
Репутация: 712
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Отрисовка подписей поверх остальных слоёв

Сообщение Максим Дубинин » 15 фев 2010, 08:28

Komяpa писал(а):Если же надписи рендерятся вместе со слоем - можно имитировать поведение рендеринга надписей исключительно вверху, к примеру, положив наверх такой же слой и не показывая от него геометрию, только надписи.
Но ты понимаешь, что твоё решение звучит скорее как хак.

Если тебе нужно скрыть половину подписей слоя, почему тебе не сделать это сразу при их отрисовке, на базе атрибутики, а не полупрозрачным WMS'ом?
пристегивайтесь, турбулентность прямо по курсу

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Статьи: 4
Проекты: 3
Репутация: 55
Откуда: Королев

Re: Отрисовка подписей поверх остальных слоёв

Сообщение yellow-sky » 16 фев 2010, 15:22

Не считаю это багом. Лейблинг всегда происходит отдельно от рендеринга. Это позволяет произвести более быструю и качественную проверку на коллизии пересечений.
Вариант Котяры - действительно выглядит как хак. Если вы знаете что часть надписей не должна быть видна, то зачем вообще их отрисовывать?

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Статьи: 4
Проекты: 3
Репутация: 55
Откуда: Королев

Re: Отрисовка подписей поверх остальных слоёв

Сообщение yellow-sky » 16 фев 2010, 15:24

_DR_ писал(а): Сейчас же получается, что подписи как бы виртуально выносятся на один общий самый верхний слой вне зависимости от порядка слоев к которым они принадлежат. Да, скорее всего, это не ошибка, а особенность программы.
АркГИС работает точно так же.

Аватара пользователя
chet2
Интересующийся
Сообщения: 32
Зарегистрирован: 08 дек 2016, 09:46
Репутация: 0

Re: Отрисовка подписей поверх остальных слоёв

Сообщение chet2 » 23 авг 2017, 07:49

Здравствуйте.
У меня есть два векторных слоя.
Верхний слой с линиями не содержит подписей.
Слой ниже содержит линии с подписями.
Подписи с нижнего слоя накладываются поверх линий с верхнего слоя.
Мне нужно, чтобы не накладывались.
Я понял что это не баг, но мне нужно, чтобы так не было.
Подскажите пожалуйста, как мне не отображать подписи, которые накладываются на линии с верхнего слоя. Догадываюсь, что с помощью конструктора выражений, но как конкретно - знаний не хватает.

Ответить

Вернуться в «Ошибки QGIS»

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

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