Подписи в OpenLayers+MapServer
-
- Участник
- Сообщения: 54
- Зарегистрирован: 18 мар 2010, 16:58
- Репутация: 0
Подписи в OpenLayers+MapServer
Столкнулся с такой проблемой: при отображении map-файла через openlayers отрисовка происходит большими квадратами. И если подпись попадает на границу квадратов - она дублируется при каждом следующем увеличении масштаба... Каким образом можно это убрать? Заранее спасибо.
- dobeer
- Активный участник
- Сообщения: 199
- Зарегистрирован: 25 дек 2009, 21:54
- Репутация: 1
- Откуда: Чита
- Контактная информация:
Re: Подписи в OpenLayers+MapServer
Код: Выделить всё
PROCESSING "LABEL_NO_CLIP=1"
-
- Участник
- Сообщения: 54
- Зарегистрирован: 18 мар 2010, 16:58
- Репутация: 0
Re: Подписи в OpenLayers+MapServer
Однако, работает, Спасибо.
- Mavka
- Гуру
- Сообщения: 2060
- Зарегистрирован: 14 мар 2008, 17:36
- Репутация: 9
Re: Подписи в OpenLayers+MapServer
А вообще то ситуация довольно странная. Есть как минимум 3 опции на разных уровнях:
Про PROCESSING только размыто сказано "директивы бывают разные". Вопрос на форуме уже поднимали. Поскольку у меня нет под рукой исходных кодов, то сделаю предположение, что директивы обработки передаются напрямую или драйверу (пример) или рендеру (пример). (Поправка. Драйвер/рендер при желании сам спрашивает - а мне никаких указаний не оставляли?)
Для создания полей вокруг тайла можно использовать "labelcache_map_edge_buffer" (пример конфигурации). Он отодвигает все надписи внутрь на указанное число пикселей. Что делает он в разделе WEB METADATA и почему отсутствует в документации? См. на трэкере #1353.
- WEB: "labelcache_map_edge_buffer" "-10" (размер полей в пикселях)
- LAYER: PROCESSING "LABEL_NO_CLIP=ON" (как вариант - "LABEL_NO_CLIP=1")
- LABEL: PARTIALS TRUE
Про PROCESSING только размыто сказано "директивы бывают разные". Вопрос на форуме уже поднимали. Поскольку у меня нет под рукой исходных кодов, то сделаю предположение, что директивы обработки передаются напрямую или драйверу (пример) или рендеру (пример). (Поправка. Драйвер/рендер при желании сам спрашивает - а мне никаких указаний не оставляли?)
Для создания полей вокруг тайла можно использовать "labelcache_map_edge_buffer" (пример конфигурации). Он отодвигает все надписи внутрь на указанное число пикселей. Что делает он в разделе WEB METADATA и почему отсутствует в документации? См. на трэкере #1353.
Последний раз редактировалось Mavka 07 сен 2010, 09:56, всего редактировалось 1 раз.
лангольеры под окном жрали время ом-ном-ном
- Mavka
- Гуру
- Сообщения: 2060
- Зарегистрирован: 14 мар 2008, 17:36
- Репутация: 9
Re: Подписи в OpenLayers+MapServer
Как я и предполагал, опция LABEL_NO_CLIP зафиксирована в файле mapdraw.c. Поскольку это функции общего порядка, то должно работать и со всеми специализированными рендерами.
Больше недокументированных опций processing в коде я не обнаружил.
Больше недокументированных опций processing в коде я не обнаружил.
лангольеры под окном жрали время ом-ном-ном
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость