Трёхмерные здания в Mapnik

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

Кстати, а фигурки из гугловского warehouse под какой лицензией?

Да нафиг нам такое чудо. Там через один файл тонна уродских текстур с Google streets и снимков карты, а на эти текстуры уже есть ограничения.

Блин, всё плохо. Скетчап умеет экспорт в kmz/dae (это почти одно и то же), но при этом теряется информация о материалах (в частности, название, куда я хотел засовывать процедурное описание).

Хочу подытожить многочисленные обсуждения … Всё - IMHO, но на моём живом опыте (цифры относятся к спальному району а не к центру исторического города).

  1. Этажность и силуэт здания - важные элементы при ориентации на местности (а для чего карта нужна?)
  2. Режим плоской карты первичен, т.е. все красивости не должны усложнять стандартную отрисовку зданий.
  3. В 95% случаев контура по фундаменту и этажности - достаточно. Даже если этажность слегка колеблется +/- 1 этаж - не так это заметно на 12-и этажном здании
  4. Из оставшихся 4% вполне хорошо прорисовываются с применением разновысотных объёмов
  5. И только 1-2% зданий требуют чего-то большего.

Лично я не собираюсь прорисовывать каждый дом - этот очень и очень трудоёмкая задача. Особенно если учесть, что при обычном zoom level ничего тольком не видно. Прорисовывать ручками нужно реально доминанты - здания видные издалека и на которые нужно ориентироваться. А вот этажность + разновысотные части позволяют достаточно хорошо решить проблему.

Т.е. я за псевдо-3D но без излишеств. Но и перфекционистам можно дать поле для работы.

На правах шутки :slight_smile: Лет так через пять все улицы (скажем в Москве или Екатеринбурге) будут замаплены и тогда люди начнут прорисовывать все деревья или скажем мусорные бачки. Может тогда идея внешнего вида зданий будет более близка к массам :slight_smile: Излишества нарастают по мере совершенствования карт :wink:

Полностью поддерживаю пост fserges.

Из обновлений:

  • поправлена прозрачность. это отразилось и на валидаторе одиноких деревень http://latlon.org/v/lonely
  • добавлена парочка зум-левелов, чтобы рассматривать поближе
  • ширина заборов теперь берется из тега width=, заполняется в метрах, разделитель-точка.

А крыши? Крыши будут?

Выкинуть пункт 4, и я тоже его поддержу

http://maps.google.ru/?ie=UTF8&ll=40.706405,-74.00838&spn=0.001582,0.00232&z=19 - судя по тому, как они рендерят сложные здания это именно экструды из контура

ох, сколько флуду!

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

Есть один товарищ у меня, 3D художник. Нарисовал тут недавно здание для google earth, постарался. Вышло 98 000 полигонов… Потом упростили кое-как, вложились в 10 000 полигонов. Это на одно здание, повторюсь. Доступно к просмотру в google earth.

Это я к чему… а к тому, что если продолжать вырисовывать в подробностях домики, то очень скоро и у нас будет по 10000 полигонов на здание. Я считаю, что подобное нужно хранить как минимум в отдельной базе, иметь отдельные инструменты редактирования, и при желании - просто накладывать поверх OSM. Либо переделывать базу OSM под парадигму “трёхмерная модель планеты Земля”, тогда можно будет каждый атом на планете описать в OSM вместе с координатами и тегами :wink:

Разумеется, в отдельном. Думаю, никто не сомневается, что тысячи объектов на здание слишком много для OSM.

Котяра продолжает своё шествие :slight_smile:

По-моему, у вас база рассинхронизировалась. Здания, которые были созданы примерно во время вчерашнего отключения базы ОСМ, не рендерятся, а более новые появляются почти моментально.

Там можно через /dirty запросить обновление - иногда помогает.

Так оно обновляется, я вижу, что, например, заборы подвинул - они передвинулись и в 3д, а здания - нет.

Вот проблемное место, вот здания, которые не рендерятся: 54851312, 89550148, 89550149, 35063549, 35063548.

Там ошибка в тегах: buildind

Обожаю такие ошибки! Можно неделю их искать :slight_smile:

Спасибо!

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

osm2pgsql не поддерживает этого - там в БД в результате для мультиполигона образуется только один геометрический объект типа “мультиполигон”.

Мультиполигон - это тоже всего лишь полигон. Один.