есть пропозал на релейшн “здание”. Вернее, “строение” (building)
логично всё сделать мультиполигоном (со множественными outer) и повесить теги на отношение (а не на линии).
Jekader
Достаточно хороший пример, но я бы еще и башенки внутренние добавил, которые, судя по фотографии, на крыше имеются.
У гугла можно посмотреть аналогичный пример
http://maps.google.com/maps?f=q&source=s_q&hl=ru&geocode=&q=empire+state+building&sll=54.729388,20.508195&sspn=0.035734,0.077162&ie=UTF8&hq=Empire+State+Bldg&hnear=Empire+State+Bldg,+350+5th+Ave,+New+York,+10001&ll=40.748143,-73.985281&spn=0.00586,0.009645&z=17
Немного хочу пояснить как сейчас отрисовываются псевдотрехмерное здания.
А именно, если здание представляется из себя список полигонов, то эти полигоны сначала сортируются по Y, чтобы исключить перекрывание ближнего дальним, затем каждый из них экструдируется на определенную высоту и рисуются грани, после чего рисуются видимые грани и крыша.
Есть просьба поддержать http://wiki.openstreetmap.org/wiki/User:Jongleur/MultiLevel
Суть: рисовать экструдирование не от земли, а от building:minlevel. Тогда можно рисовать балконы и прочие арки.
да, тоже хотел этот пример привести - очень наглядно видно, как они рисуют.
ну эти дубликаты ведь всё равно указывают в одни и те-же координаты, так что не особо страшно на первый взгляд.
Но официальное отношение building было-б хорошо, конечно. Хотя можно и в мультиполигон загнать - я так делаю для зданий с “дырками”
Хотеть рендер с поддержкой 3D-моделей. А то я как-то делал несколько штук домов, в т.ч. два типовых.
Со стороны OSM нужна нода для указания опорной точки и вей для поворота модели. То бишь, вей из двух нод с тегами типа model=http://modelsrepository.net/kt313.dae
Читаю здесь: http://wiki.openstreetmap.org/wiki/RU:Relation:multipolygon
Например, для здания с двумя уровнями, делаем отношение Multipoligon с двумя outer полигонами, навешиваем на отношение все тэги, адрес, название и прочее, а на каждый полигон building=yes, building:levels=*
Я правильно понимаю?
Вроде как да. У меня есть одно такое тестовое здание:
http://www.openstreetmap.org/browse/relation/539919
Но нормально рисует это только osmarender. Правда, building тоже на мультиполигоне, на частях только этажи.
Хорошее решение, жаль, мапсёрфер такого не понимает http://www.mapsurfer.net/?lat=55.872425&lon=37.670472&zoom=18&layers=M. Наверное, надо building=yes на части отношения ставить, это и семантически правильно.
Я знаю, я им уже в соседней теме про это написал. Не исключено, что если building=yes спустить на части, то поймёт - попробую испытать на соседней школе.
Нет. building на кусках означает что это разные здания, объединенные в один адрес. А это не так.
Тоже начал обозначать разноэтажные дома, делаю это тремя мультиполигонами. Всё что можно пока ставлю на общий мультиполигон, а на два других только этажность. Вот пример:
http://www.openstreetmap.org/browse/relation/1289044
http://www.openstreetmap.org/browse/relation/1289040
http://www.openstreetmap.org/browse/relation/1289045
Но корректно ли указание building:levels без building? С другой стороны, здание одно и не хочется дублировать теги. Так что боюсь, что это временное решение и придётся что-то другое придумывать.
Думаю, нет. И вообще, имхо накладывающиеся полигоны плохо - пропадает связь между кусками и целым.
По-моему всё уже придумано - building:levels на кусках и всё остальное на мультиполигоне.
Прекратите насиловать 2D-движок. Как doom-мапперы, ей богу. :3
Что, этажи не рисовать?
У вас полигоны не замкнуты? Это вроде бы неправильно?
Кстати да. Так совсем плохо.
Всё там замкнуто, посмотрите внимательнее. А вот MapSurfer скорее всего не поймёт такое, склоняюсь к переделке с дублированием building.
P.S. Это при масштабировании карты в маленьком окне часто теряются куски мультиполигонов, поэтому кажется что они не замкнуты.
Относительно мультиполигонов для зданий замечу, что движок не поймет разные таги для каждого полигона из мульти, потому что из базы постгреса (osm2pgsql) берется одно геометрическое поле MultiPolygon и список тагов к нему.