Утилита для генерации тайлов низкого зума из высокого

Я тут между делом закончил сабж. Позволяет, например, имея набор тайлов 8 зума, сгенерировать тайлы меньших зумов, а также и наложить на них полупрозрачные слои (например, подписи или 3D здания).

Позволяет создавать вот таки обзорные карты http://lowzoom.osm.rambler.ru/ , а если взять тайлы без подписей и полупрозрачный слой с подписями, то вполне полноценные lowzoom тайлы, вообще не используя рендер.

Описание: http://wiki.openstreetmap.org/wiki/Tiletool

Исходники: https://github.com/AMDmi3/tiletool

Красота! А модуль автообновления LowZoom в этой штуке есть? (перерендеринг всей папки после обновления файлов)

Всмысле? Просто запустить ещё раз.

Интересно, а какое применение может найти эта утилита?

в josm’е бы такую штуку поиметь.

На малых зумах tiletool показывает географическую карту, по крайней мере, Европы. Osm на тех же зумах показывает политическую карту. Это первое, что пришло мне в голову.

Гм.
Я спрашивал, “какое применение может найти эта утилита?” А Вы на какой вопрос отвечаете?

  1. Видны суровые косяки типа прямоугольного “затопления” в Карелии
  2. Видно где не отрисованы леса
  3. Видна гидрография в деталях
  4. Видна плотность растительности (при условии, что она отрисована)

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

Если бы это было бы так просто, не пришлось делать такую прогу :slight_smile:

Загнётся рендерер - кол-во данных на тайл слишком большое становится.

Понятно.
Т.е. просто пошли по пути наимельшего сопротивления.

С какой это стати он загнется?
На одном уровне наивысшей подробности тайлов в 3 раза больше, чем на всех остальных уровнях вместе взятых. Поэтому с точки зренмя экономии ресурсов (без разницы - рендера или хранилища данных) генерить тайлы с меньшим разрешением из тайлов большего разрешения абсолютно бкссмысленно.
Единственное разумное объяснение - написать такую программу проще, чем разбираться в настройках рендера.
(разумеется, при условии, что мы игнорируем надписи на каире, но, как я понял, это и не требуется)

Ты никогда не думал, почему вообще зумы до 12 обновляются только эпизодически? Почему редко обновляются костлайны и вообще зачем их придумали? Почему на мапнике не на всех масштабах видно леса?

У месье наверное своё облако завалялось в Amazon :slight_smile:

:smiley:

Нкужели все так плохо?

У меня даже в мыслях не было, что разработчикам рендера неведомо такое понятие как генерализация.

Рендереры не имеют отношения к генерализации.

Нет, если рассматривать сферический рендер в вакууме, то - конечно.
А если взять систему генерации изображений в целом, то вполне логично было бы встроить в нее и генерализацию.
Как-нмкак, а система, которая должна нормально работать с диапазоном масшабов порядка миллиона - это не просто рендер.

Подумал…
Тепернь не понимаю, почему блок изготовления тайлов низкого разрешения из высокого не входит в систему рендера. :roll_eyes:

Масштабировать растр на порядок проще, чем качественно генерализовать. Если есть академический интерес в написании векторного генерализатора — милости просим.

Спасибо. Я пришел к тому же выводу (cм. постом выше).
А интерес к генерализатору в том объеме, который меня интересовал, уже ужовдетворен. Кстати, время обработки программой, в которую помимо прочего входит и генерализатьр, составляет менее 10 минут для данных local.osm.
Это к тому, что даже ежедневная генерализация planet.osm - не такое уж затратное занятие. Зато в принципе не возникает проблем в надписями.