Вода, земля, территориальное деление... Что первично?

Не очень понимаю, при чём тут OSM.
Построена деревня - рисуем деревню. Если земля при этом является особоохраняемой и под строительство деревни не выделена - это не наши проблемы, а тех кто строил деревню и надзорных органов по землепользованию.

там чуть выше я уже написал вопрос главный.

да действительно! серьезные проекты и OSM несовместимы! Вы реально считаете что карты нужны только для “как мне тут проехать на моем жоповозе/велике/самокате?” и еще, главный вопрос вами проигнорирован.
нельзя построить дом даже ближе чем на 20 метров от водоема без особого разрешения. соответственно, эта територия не может быть использована, как жилая территория.

Какое это отношение имеет к карте? Или если дом (посёлок) построен с нарушением закона, его на карте отображать не надо?

ЭцИлоп пишется через И, потому что во время сьемок фильма “Кин-Дза-Дза” эту должность придумали, перевернув слово “police”. Вы спросите, какое это имеет отношение к теме? Точно такое же, как ваши ответовопросы, которыми вы пытаетесь отойти от темы и избежать ответа на четкие вопросы.

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

Сортировка по типу нужна больше в линейных объектах.

В точечных - нужна сортировка по метрике, что брать за метрику - хороший вопрос на обсуждение для генерализаторов.

Если вы думаете, что в коммерческих данных всё иначе, то вы заблуждаетесь.

OSM рисует фактическую карту местности. Если дом стоит ближе 20 метров к водоёму мы рисуем дом, т.к. он там есть. Особым разрешением пусть занимается владелец и надзорные органы.
Если граница микрорайона приходит по берегу, мы рисуем микрорайон по берегу. То что дома не стоят ближе 20 метров - не отменяет границу микрорайона.
OSM каждый рисует как умеет и для тех нужд, которые ему нужны и которые может представить. Про 20 метров я, если честно, первый раз слышу. Но только потому что этим никогда не интересовался. Думаю, как и 99% осмеров.
Признаю, OSM сейчас явно не заточен для использования по землепользованию и т.п. Это не отменяет его серьёзности по прокладке маршрутов. Чтобы использовать OSM по землепользованию нужно чтобы правила корректной разметки местности были в wiki и как минимум один валидатор для контроля. Займётесь?
А если мы захотим рисовать карту по всем законам РФ, то вообще не сможем, т.к. “картами” могут заниматься только уполномоченные организации заниматься, а у нас даже юр.лица в РФ нет.
Что касается главного вопроса - если это “как мне сделать карту, на которой будет отображены природные ресурсы и испоьзование этих земель”, то я ответил выше как сумел, больше добавить нечего.

а я еще раз вас спрошу, вы считаете, что на озерах, реках и прудах повсеместно стоят дома, раз вы предлагаете ВСЕМ и ВСЕГДА включать воду в жилое землепользование? Использование территории естественного водоема - исключение из правил, встречающееся очень редко, искуственные водоемы обозначаются landuse=reservoir, значит включение водоемов в landuse (без реального подтверждения) - неверно.

уже 2 страницы постов по обсуждению, верно или неверно текущее положение дел, а вы говорите, “да, неверно, но мы будем продолжать и дальше”. если вы признаете, что это неверно, значит нужно дописать в вики уточнения, чтобы это не продолжалось, и предпринять меры по исправлению. можно написать бота, который будет искать перекрывающиеся участки.

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

По фильму правильно — ЭцилопП. Это я так, чтоб Вы не думали, что здесь самый умный :slight_smile: Извиняюсь за офф.

Вопроса не понимаю.
Если дома стоят - мы их рисуем.
Если деревня находится с двух сторон реки, полигон деревни рисуется поверх реки.
Воду в жилое землепользованием “всегда” включать не предлагаю.
Если есть информация, что внутри микрорайона находится пруд, то landuse=residental рисуется поверх пруда и мультиполигоном пруд из микрорайона не вырезается. Если есть информация, что граница микрорайона проходит по берегу - значит рисуем по берегу. У кого есть другая информация, например, более точная, - может исправить.

“Неверно” и “не заточено” - разные вещи, ИМХО. Я лично не согласен, с тем что текущие положение неверно, т.к. рисовать landuse по законодательным ограничениям гораздо сложнее (в основном из-за того что информации мало), а результат нужен небольшому % людей. Может быть даже только вам одному.

Пишите. Насколько я понимаю, писать сначала нужно proposal.

простите, а какую задачу у вас не получилось решить сортировкой по площади?
я не нашёл в топике никаких аргументов против, кроме плохо выраженного “мне кажется, это неправильно”.
это правильно, это достаточно точный алгоритмически дешевый способ определения, что во что вложено.

Озерцо в квартале жилой застройки не делает кусок квартала “не кварталом”. Лендъюзы и нечуралы пересекаются, это абсолютно нормально.

Только что было приведено:

С большими шансами, площадь деревни окажется меньше площади реки и река скроется под деревней.
Аналогичная проблема возникнет с любыми частично перекрывающимися полигонами, например болотом и лесом.

Или еще один прикол: некоторые очень крупные полигоны (например леса) любят рисовать “лоскутками” - и тогда сортировка по площадям дает просто замечательные результаты, хорошо знакомые по картам для гармина, где сортировка по площади для автоматически порезанных на клочки полигонам создает практически шахматную доску, из-за того что куски одного полигона то больше кусков другого, то меньше.

В данном случае не “два полигональных объекта, один внутри другого”, а один накладывается на другой.
ИМХО, тут уже нужно привлекать приоритеты; и у воды приоритет.

Сравнивать нужно с учётом погрешности. :wink:

Прежде чем исправлять, нужно понять что именно. Я пока не вижу что именно не так и что можно исправлять.

Если кто-то хочет рисовать исключительно непересекающимися/не накладывающимися полигонами, как gpsmapedit, это утопия.

Если гармину нужно подавать непресекающиеся полигоны, проще Лёшу попросить, может он прикрутит это к осм2мп :slight_smile:

слава богу, хоть кто-то меня понимает.

не-не-не, при чем тут гармин? это я сейчас под гармин рендер настраиваю. Но проблема в том, что landuse обозначает землепользование. А его приравняли к place. На основных сборках сейчас ему не придают особого значения, на том же мапнике он перекрывается почти всем, поэтому проблему не видно. Мне же он наоборот важен, я поставил его сверху и получился просто ужас тихий.

RusFox, ну что я могу предложить - попробуй что ли нарисовать кусочек карты, которую ты хочешь, прямо в фотошопе, чтоб мы поняли, и мы подумаем как твоему горю помочь. Пока же действительно “проблемы не видно”.

=D я выложу, но уже не сегодня.

Рисуем лендьюзы, потом поверх рисуем воду с дырками place=islands.

По такой схеме теряются территории над водой, когда они там действительно есть: дома на пристанях и плавучие “здания”, дома на скалах, нависающих над водой, территории лесозаводов, находящихся на берегу реки и т.д. Перечитайте всю тему.

RusFox, ваши проблемы в том, что вы пытаетесь смешать два понятия - лендюзы и постройки на них. Либо разделяйте, либо у вас так и будет каша в голове.
На территории выделенной под застройку (landuse=residential) вполне могут находится, и вода (ручьи, реки, пруды), и деревья (одиночные, посадки, лес), и постройки (дома, сараи, гаражи и пр). Нельзя тупо рисовать ландюз над водой или лесом. Ручей не прерывается и не течет под территорией, он течет по ней. Деревья не находятся под территорией, они на ней.
Поэтому правильное отображение будет внизу landuse, сверху natural, а еще выше man_made, building и пр.

Дом на пристани/сваях полюбому должен иметь layer=1, т.к. он находится над основной поверхностью воды. Утес над водой сам будет иметь layer=1 и дому на утесе надо будет добавить layer=2.