Вариант с outline я вижу как-то так:
way1: part=building + levels=1
way2: part=building + levels=10
way3: building=yes + levels=10 + addr* + outline=yes
в общем всё то же самое что с relation, только вместо отношения еще один полигон. Плюс в совместимости, поскольку все что работало будет дальше работать с building как если бы не было outline и игнорировать part=*, минус в лишней геометрии, и в случае полигонов с дырками придётся делать два мультиполигона.
В общем такая схема не вызывает во мне дикого отвращения, однако я считаю что не гоже людям руками заниматься генерализацией, а получить этот ваш outline объединив полигоны сложности не представляет.
Нет, именно с “остальными”. Я вот пока никому не мешался мапить хоть этажи, хоть отдельные кирпичи - на здоровье.
Но это не значит, что я соглашаюсь с тем, что кирпич должен быть обозначен как здание, или что здание должно быть суммой своих кирпичей, а не самостоятельной геометрией. И там, где это не так - это ошибка, а значит и повод эту ошибку исправить.
Я как раз и предлагаю маппить кирпичи кирпичами, а здания зданиями, при это чтобы один кирпич/здание был отмапплен ровно один раз, и чтобы при этом они были связаны воедино.
Да, максимальное число этажей. Подобно тому как высота здания это его максимальная высота. *высота пирамиды Хеопса - 138 м, а этажность главного здания МГУ - 36 *
Почти все OSM рендеры работают только на тегах building=*. Ели дом превратится в набор объектов типа part. То эти рендеры останутся не у дел. Давайте добавим новый тег который говорит что этот полигон является частью 3D изображения.
Например был девяти этажный дом с одноэтажным магазином. Рисовался одним полигоном с тегами
building=yes
building:levels=9
Мы хотим превратить его в два полигона. 9 этажей для жилого и один этаж для магазина.
Я предлагаю добавить ещё два полигона один для 9 этажей другой для 1го этажа.
Итого будем иметь
cтарый полигон с тегами:
building=yes
3d=no
…addrres…
новый полигон для 9 этажей
3d=yes
building:levels=9
новый полигон для 1 этажа
3d=yes
building:levels=1
Что-то в этом уравнении решения я найти не могу:
Есть здание (если конкретно, то Универсальный спортивно-зрелищный комплекс РГУФК, в Москве, Сиреневый бульвар 2 https://maps.yandex.ru/-/CVDyVKjm). Оно состоит из основной части, надстройки и внутреннего дворика. Чтобы было понятно, вот картинка:
A - основная часть (2эт);
B - надстройка (3эт);
C - внутренний дворик;
D - ну, в качестве усложнения, примыкающая часть, хотя по факту это единое целое с А и можно не рассматривать.
Внимание, вопрос: Как обозначать?
uryevich:
Сначала разрезаете A и D так, чтобы их общая стена была одной линией, а стены, выходящие на улицу - другими.
Делаете мультиполигон для здания. В него входят выходящие на улицу стены A и D в роли outer, и C в роли inner - итого 3 линии в мультиполигоне. Добавляете на мультиполигон теги building=yes, теги адреса и building:levels=3 (максимальную этажность), тег building:parts=mixed
Затем делаете ещё два мультиполигона: только для части A, исключая внутренний двор (всего 3 линии), и для части D (всего 2 линии), добавляете на них теги building:part=yes и этажность только для этих частей (2 для A и что там есть для D).
Надстройку B можно оставить обычным полигоном, на неё добавляете теги building:part=yes; building:levels=3; building:min_level=2