Обнаружение пересечений программно
-
- Новоприбывший
- Сообщения: 1
- Зарегистрирован: 06 фев 2023, 13:38
- Репутация: 0
- Откуда: Чкалов
Обнаружение пересечений программно
Всем привет!
Наверняка я не первый, кто сталкивается с проблемой обнаружения всех возможных пересечений границ земельных участков (ЗУ) при внесении сведений о границах населенных пунктов (НП) в ЕГРН.
Примерный алгоритм:
1. получаем КПТ;
2. анализируем на пересечения / перекрытия;
3. формируем документ
Если с многоконтурными ЗУ еще просто, т.к. после конвертации xml файла многоконтурные ЗУ представляют единый блок, то с единым землепользованием (ЕЗП) сложнее - геометрически это отдельные элементы.
Поделитесь, пожалуйста, своими способами автоматизации поиска пересечений, возможно особое ПО.
Наверняка я не первый, кто сталкивается с проблемой обнаружения всех возможных пересечений границ земельных участков (ЗУ) при внесении сведений о границах населенных пунктов (НП) в ЕГРН.
Примерный алгоритм:
1. получаем КПТ;
2. анализируем на пересечения / перекрытия;
3. формируем документ
Если с многоконтурными ЗУ еще просто, т.к. после конвертации xml файла многоконтурные ЗУ представляют единый блок, то с единым землепользованием (ЕЗП) сложнее - геометрически это отдельные элементы.
Поделитесь, пожалуйста, своими способами автоматизации поиска пересечений, возможно особое ПО.
-
- Активный участник
- Сообщения: 103
- Зарегистрирован: 09 окт 2009, 16:49
- Репутация: 10
Re: Обнаружение пересечений программно
>Поделитесь, пожалуйста, своими способами автоматизации поиска пересечений
Мы написали и дорабатывали в течение нескольких лет адский комбайн для поиска пересечений. Там же сложность в том, что есть допуски, нельзя с точностью до точки все пересечения показывать (точнее можно, но исправлять такое может быть даже дольше, чем глазами все просматривать). Ну и в мапинфо много особенностей при работе геометрических функций (глючат они по страшному).
Сейчас еще пытаемся прикрутить к комбайну искусственный интеллект, чтобы автоматически все ошибки исправлял, осталось немножко. И тогда стоимость работ по постановке зон и границ упадет совсем до нуля, там и так то бедные люди за еду работают.
Мы написали и дорабатывали в течение нескольких лет адский комбайн для поиска пересечений. Там же сложность в том, что есть допуски, нельзя с точностью до точки все пересечения показывать (точнее можно, но исправлять такое может быть даже дольше, чем глазами все просматривать). Ну и в мапинфо много особенностей при работе геометрических функций (глючат они по страшному).
Сейчас еще пытаемся прикрутить к комбайну искусственный интеллект, чтобы автоматически все ошибки исправлял, осталось немножко. И тогда стоимость работ по постановке зон и границ упадет совсем до нуля, там и так то бедные люди за еду работают.
-
- Активный участник
- Сообщения: 139
- Зарегистрирован: 17 окт 2016, 16:37
- Репутация: 14
Re: Обнаружение пересечений программно
Уже наверное освоили R и питон?
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
https://pro.arcgis.com/ru/pro-app/lates ... atures.htm
На мапинфо еще есть кнопочки как в прицепе.
А модули для кад инженеров на мапинфо как МИ сервис, полигон, технокад разве эти проблемы не решают?
- Вложения
-
- Снимок.JPG (25.35 КБ) 2789 просмотров
-
- Гуру
- Сообщения: 4056
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1054
- Ваше звание: программист
- Откуда: Казань
Re: Обнаружение пересечений программно
- Мапинфа неполохая программа для раскрашивания карт. Для работы с точной геометрией она мало пригодна, например в силу целочисленного редставления координат с перемнной разрядностью от карты к карте (может нынче поменяли, но вряд ли).
- Автоматически исправлять ошибки нельзя по чисто формально-организционным причинам, ошибки должны исправлять те, кто порождает данные. Им нужно предоставить средства поиска ошибок, и вывода их на экран.
- В 90-е годы писали программу поиска ошибок для земельщиков, без всяких библиотек. Сначала убирается мусор типа повторных точек в линиях, а затем все объекты разваливаются на сегменты. Сегментам приписывается начало, конец, id объекта, номер части (например, кольца в сложном полигоне), и номер сегмента в части. Потом ищется пересечение/касание всех сегментов - сначала находим кандидатов на пересечение (например, за счет пространственного индекса или перекрытия проекций на оси координат), потом проверяем пересечение (даже на старых машинах это занимало минуты). Допустимым является только касание последовательных сегментов в месте соединения. Касание сегмента в середине другого сегмента - пропущенная абрисная точка, и т.д. Список всех "неправильных мест" выводится в виде векторного слоя (обводя эти места красным кружком). Мы еще строили топологию, чтобы проверить, что вся зона покрыта участками (искали пропущенные земли, иногда еле видимые "клинья", иначе баланс не бился). С нынешним готовым функционалом типа GEOS/GRASS соорудить подобное можно быстро.
- Список (с указанием, кто, с кем, где и как вступил в незаконную связь) печался на бумаге, в которую заворачивалась дискета с порожденным слоем, и передавалась геодезистам для исправления.
- Автоматически исправлять ошибки нельзя по чисто формально-организционным причинам, ошибки должны исправлять те, кто порождает данные. Им нужно предоставить средства поиска ошибок, и вывода их на экран.
- В 90-е годы писали программу поиска ошибок для земельщиков, без всяких библиотек. Сначала убирается мусор типа повторных точек в линиях, а затем все объекты разваливаются на сегменты. Сегментам приписывается начало, конец, id объекта, номер части (например, кольца в сложном полигоне), и номер сегмента в части. Потом ищется пересечение/касание всех сегментов - сначала находим кандидатов на пересечение (например, за счет пространственного индекса или перекрытия проекций на оси координат), потом проверяем пересечение (даже на старых машинах это занимало минуты). Допустимым является только касание последовательных сегментов в месте соединения. Касание сегмента в середине другого сегмента - пропущенная абрисная точка, и т.д. Список всех "неправильных мест" выводится в виде векторного слоя (обводя эти места красным кружком). Мы еще строили топологию, чтобы проверить, что вся зона покрыта участками (искали пропущенные земли, иногда еле видимые "клинья", иначе баланс не бился). С нынешним готовым функционалом типа GEOS/GRASS соорудить подобное можно быстро.
- Список (с указанием, кто, с кем, где и как вступил в незаконную связь) печался на бумаге, в которую заворачивалась дискета с порожденным слоем, и передавалась геодезистам для исправления.
-
- Активный участник
- Сообщения: 103
- Зарегистрирован: 09 окт 2009, 16:49
- Репутация: 10
Re: Обнаружение пересечений программно
Ооо, у нас чертов зоопарк - mapbasic, delphi и python
Стандартная проверка/коррекция топологии есть во всех нормальных ГИС.А модули для кад инженеров на мапинфо как МИ сервис, полигон, технокад разве эти проблемы не решают?
Просто для кад инженеров этого не достаточно, там же у разных участков разная точность, и из-за этого они могут (немного) накладываться друг на друга. Да и есть виды участков которые могут пересекать какие-то объекты, а другие не могут. В общем все не так просто!
Да, в этом ее сильная сторона!
Теоретически да, а практически - очень даже нужно, в данной сфере работа принимается если нет формальных ошибок (пересечений, нарушений топологии) и/или тот кто проверяет согласен с вашими доводами, что объект можно ставить на учет
![Smile :)](./images/smilies/icon_smile.gif)
Ну да, весь этот функционал оттуда и идет. Я тоже в конце 90-х писал проверку топологии, увязки площадей...Сейчас это есть в любой ГИС, но и требования гос органов становятся все выше и безумнее, приходится все больше накручивать разных проверок/обработок, чтоб бедные операторы меньше работалиВ 90-е годы писали программу
![Smile :)](./images/smilies/icon_smile.gif)
-
- Активный участник
- Сообщения: 103
- Зарегистрирован: 09 окт 2009, 16:49
- Репутация: 10
-
- Активный участник
- Сообщения: 139
- Зарегистрирован: 17 окт 2016, 16:37
- Репутация: 14
-
- Гуру
- Сообщения: 4056
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1054
- Ваше звание: программист
- Откуда: Казань
-
- Активный участник
- Сообщения: 103
- Зарегистрирован: 09 окт 2009, 16:49
- Репутация: 10
Re: Обнаружение пересечений программно
В ми-сервисе точно таких модулей нет, в остальных программах - не видел и не слышал о таком. Вы наверное путаете стандартные средства проверки/коррекции топологии и специализированные инструменты.
Я не уверен, что тому же Полигону вообще имеет смысл настолько глубоко закапываться в предметную область, их обычный клиент - кадастровый инженер, который умеет 2 кнопки нажимать и заполнять поля межевого плана
![Smile :)](./images/smilies/icon_smile.gif)
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 29 гостей