Статьи

3D-рендеры для данных OpenStreetMap

2024-06-20 15:29 ГИС Полезные ресурсы
Время прочтения: 5 минут
OpenStreetMap — это открытая база данных, которую может редактировать и дополнять любой пользователь. Многим она знакома в самом стандартном виде, в рендере Carto, который открывается на сайте osm.org. Но данные OpenStreetMap можно отображать по-разному, в том числе и в 3D.
Многие картографические приложения сейчас стремятся к 3D — и правда, когда мощности устройств и библиотеки это позволяют, почему бы и не посмотреть на результаты в красивом трехмерном виде? И в OSM тоже есть схема хранения 3D-данных, а значит, есть и красивые 3D-рендеры.

Как 3D-данные хранятся в OSM

Здания в OpenStreetMap можно нарисовать по схеме Simple 3D: в самом простом виде его можно собрать по кусочкам из building:part=*. Так можно показать здание из двух частей разной этажности:
Чтобы увидеть разные возможности 3D OSM, посмотрите на хорошо отмапленные демо-районы, особенно если захотите протестировать рендеры ниже.

Для чего нужны 3D-рендеры

  • Отслеживать, где не хватает данных. В трехмерном виде удобно смотреть, где элементы отмаплены неверно или где не проставлено количество этажей. А количество этажей в OSM — важная информация для городских исследований.
  • Любоваться результатом работы. Одно из главных удовольствий OpenStreetMap — увидеть красивый результат своих трудов на рендере. Трехмерные рендеры покажут городскую инфраструктуру красиво, объемно и даже с фонарями, которых нет на стандартном стиле Carto.
Открытость OSM позволяет разработчикам собирать разные рендеры, поэтому для отображения 3D-данных OSM есть множество разных приложений. Их настолько много, что не все они вошли в статью: в этом тексте мы решили рассказать про самые примечательные и активные, но на OSM Wiki есть и другие примеры. А здесь мы посмотрим на трехмерные рендеры OpenStreetMap и сравним их визуально, как обычные пользователи.

Полноценные 3D-рендеры

В этом разделе собраны приложения, основная цель которых — показать данные OSM в красивом трехмерном виде.

F4map

F4map — это самый известный 3D-рендер OpenStreetMap. Приложение создано компанией по разработке видеоигр F4 Group.
Цель этого проекта — отобразить данные из базы OSM в виде трехмерных моделей зданий и других объектов, добавив к ним рельеф и реалистичные визуальные эффекты. Кроме данных OSM для некоторых объектов используются дополнительные 3D-модели (как в примере с Эйфелевой башней выше).

Плюсы и особенности F4map:

  • высокая точность моделей;
  • частое обновление;
  • есть эффекты времени суток: утра, дня, вечера и ночи;
  • в реальном времени можно наблюдать текущее положение солнца;
  • можно подключить эффекты дождя и снега;
  • есть анимации водотоков, фонтанов, ветряных турбин, транспорта;
  • есть мобильное приложение.

Streets GL

Проект Streets GL тоже существует, чтобы показать данные OSM в виде реалистичных 3D-сцен и дать пользователям удобный инструмент для оценки полноты данных в OpenStreetMap. В отличие от F4Map, Streets GL создал один человек — разработчик с ником StrandedKitty.
Для Streets GL использованы три источника данных: векторные тайлы, созданные на основе данных OSM с помощью Planetiler, набор тайлов Terrain 3D от Esri для визуализации рельефа и водные объекты, которые заполняются с помощью шейп-файлов с сайта osmdata.openstreetmap.de.

Плюсы Streets GL:

  • можно менять время дня: утро, день, вечер;
  • клик по объекту позволит посмотреть на его теги в OpenStreetMap;
  • легкий по карте на базе Nominatim;
  • можно наблюдать за воздушным трафиком в реальном времени.

Минусы Streets GL:

  • из-за того, что у StreetsGL один разработчик, проект двигается медленно, и могут быть ошибки.
  • обновление данных не в реальном времени, и в последнее время они случаются редко;
  • есть только веб-версия приложения, она достаточно медленная, может долго грузиться и подойдет не для всех устройств.
Еще более подробно про это приложение можно прочитать в статье Streets GL – новый трехмерный вид для OpenStreetMap.

Esri OpenStreetMap 3D Scene Layers

Esri OpenStreetMap 3D Scene Layers — проект от команды ArcGIS, цель которого — повысить полезность базы данных OSM для визуализации городов, навигации, градостроительства и других приложений. 3D-слои проекта можно посмотреть онлайн, но еще и использовать в Scene Viewer, ArcGIS Pro и других приложениях ArcGIS, поддерживающих трехмерную визуализацию.

Плюсы и особенности Esri OpenStreetMap 3D Scene Layers:

  • кроме зданий на карте есть характеристики различных деревьев: род и высота;
  • можно менять базовую карту (много вариантов выбора);
  • можно менять время дня, включить анимацию движения солнца;
  • можно подключить осадки и облачность;
  • в приложении есть различные инструменты: измерения расстояния, площади, профили рельефа.

OSM Buildings

OSM Buildings — веб-просмотрщик 3D-зданий с открытым исходным кодом. Автор проекта — Jan Marsch. Некоммерческие картографические приложения могут использовать данные из OSM Buildings бесплатно. Важный момент: если сайт не открывается, это может быть связано с регионом.
OSM Buildings значительно уступает другим приложениям по выбору настроек и функций, зато привлекательная палитра Open Humanitarian Map придает вид, чем-то напоминающий комикс.
Еще вы можете встретить трехмерный вид OSM в Mapbox, Maplibre и в Cesium, но про них не будем писать подробнее, так как это скорее инструменты для работы, а не отдельные приложения-рендеры.

Другие приложения, где есть 3D

В этом разделе кратко расскажем о приложениях, которые показывают высоту зданий на основе OpenStreetMap, но у которых нет полноценного 3D. У этих проектов другая цель, здесь не найти фонтанов и отдельных деревьев, но они тоже отображают трехмерные здания, и поэтому мы включаем их в обзор.

Organic Maps

Organic Maps — это полноценное приложение для навигации на основе данных OpenStreetMap. Реализация 3D в нем — приятный бонус, который к тому же может помочь и в навигации.

VK Карты

VK Карты (бывшие Карты Mail.ru) тоже основаны на данных OSM, и их рендер тоже показывает высоту и форму частей зданий.

Shademap и Shadowap

Год назад мы писали статью про интерактивные карты теней, чтобы найти место для комфортных летних прогулок. Обе эти карты основаны на OpenStreetMap, и, конечно, высчитать тени нельзя без подключения данных о высоте зданий, а это уже 3D.

Что нам дают 3D-рендеры

Пока мы вдвоем собирали этот мини-обзор и решали, про какие проекты стоит рассказать, сами подробнее узнали про разные приложения на основе OSM и про то, как разработчики и пользователи используют открытые данные. При этом задумались, что время актуальности этого обзора ограничено. Если смотреть на историю 3D в OSM и на все существующие когда-либо рендеры, становится грустно за проекты, которые перестали существовать. Но поэтому и стоит делиться информацией про хорошие открытые приложения — может, это поможет им существовать дольше.
А еще этот обзор — дополнительный повод подобавлять данные в OSM, чтобы ваш город в существующих рендерах был наполнен красивыми зданиями, фонарями и скамейками :)
Источники и полезные ссылки:
P.S. 3D-рендер Streets GL как случайное искусство:
Материал подготовили Алия Кутуева и Юлия Федорова

Интересно читать про карты, ГИС и все связанное? Подписывайтесь на Telegram-канал Картетики с регулярными постами, полезными советами и новостями ☀️