Вот это утверждение непонятно.
Если посмотреть любой населенный пункт (проще всего открыть в JOSM любую из Missing streets из верхушки списка),
можно заметить, что до половины одинарных домиков, имеющих номер на растре Maa-amet, не импортированы в базу OSM.
Как так?
I think its because the validator only shows the streets, that is into address tag of houses in the OSM database, but missing on the location near the houses. In Kaagvere küla the Maa-amet map has no houses with address, respectively, OSM database also has no houses with addresses. Therefore, there is no reason to trigger the validator - there is no discrepancies.
очень часто, есть большой контур и уже импортинованы с наложением несколько маленьких. Вот я про это, что потом их как-то удалят или в надежде что когда-то, кто-то увидеть это и сотрет лишнее.
SviMik, т.е. ты как бы снимаешь с себя ответственность за то, что не снабдил Импортер Зданий инструкцией в картинках ?
Ты извини, но ты явно всех меряешь по себе - очевидно, умному и способному разобраться в чем угодно (что подтверждается написанными тобой инструментами).
То, что для тебя, как для автора - очевидно, остальным требует разжевывания, причем, каждому индивидуально в картинках (а не один раз на форуме).
Ты забываешь, что минимум половина - не читают по английски (как минимум, без привлечения Google Translate), часть не читает технические инструкции (или не способна понять написанное) даже на русском, никто не отслеживает обсуждение вопросов здесь в форуме (это подтверждается по третьему-четвертому разу поступающими вопросами), часть не понимает самого процесса (в основном, потому что не читали форум и не знают, как и зачем это все делалось и работает) и т.д.
Английские строчки внизу экрана Импортера Зданий - не работают! (точнее, работают для 10% участников).
Можно просто удалить одно из зданий, если оно принадлежит моему импорту. Тут вопросов никаких - сам залил, сам удалил, в итоге карта впорядке, конфликтов нет.
Можно написать интерфейс для выбора, какое здание удалять (может при импорте контуры точнее?). Но анализ достаточно сложный (надо хорошо рассмотреть и контур, и снимок, и теги, чтобы понять, что оставлять). Не знаю, будет ли этим кто заниматься (а если и будет - то теперь не уверен в качестве такой работы).
Alexandr Zeinalov, а чего список такой короткий? Пару страниц назад приводил данные своих попыток обнаружения пересекающихся зданий.
Метод определения: для каждого замкнутого домика (проверял только вейные, мультиполиноны не смотрел) создавался полигон geometry из postgis (для этого писалась psql функция), далее находилось расстояние между полученными полигонами, если = 0, значит здания пересекаются. Ручная проверка пару десятков домиков проблем с алгоритме не выявило. Стандартный postgis оператор “&&”, в свою очередь, работал значительно быстрее, но часто выдавал рядом стоящие здания за пересекающиеся (возможно, сверка по bbox полигона?).
Повесить бы это дело с тригерами на базу SviMik, дабы расчет велся на лету. Но есть пару нюансов. Вычисление полигона достаточно долгий процесс. Да даже вычисление расстояния не блещет скоростью, но при наличии полигонов в базе тригеры изменений справятся. Однако хранение полигонов для всех домиков, думается, жирновато для базы. Мне кажется, наиболее быстрым и менее жрущим вариантов будет джойнить домики по нодам в некоторой округе от проверяемого, и только для этой части уже на лету вычислять геометрию и сверять на пересечения. Ну и храить все пересечения в отдельной таблице, которую и будут апдейтить тригеры after update/insert/delete на вейных полигонах, и в последствии, мультиполигонах.
Мне эта идея не очень нравится. Но зданий таких не очень много, около полутора тысяч (правда, надо будет завтра повторно сгенерировать, когда очередной EE.osm выйдет). Вероятно, имеет смысл написать интерфейс “для себя”, никому его не показывать и самому обработать. Например, если в maaamet здание разрезано на много частей с разными адресами, то может иметь смысл снести “большое” здание. А после всего этого очистить у всех зданий conflict и пустить их по второму кругу.
Это плохая мысль, а особенно она плоха для зданий, которые совпадают.
Для начала хорошо бы слить здания с symdiff=0, их немного, и им достаточно только разумно слить тэги. Ну или выписать эти тэги и определиться вручную, без написания интерфейса.
Проблема предварительного фильтра. Углы оказались слишком острые, срезались. В итоге, контур вышел незамкнутым, ну и дальше результат трассировки был не понят.
Чинить не буду, т.к. ортогонализатор всё равно не поймёт зданий с острыми углами. Будет заведомо плохой контур.