Как организовать проверку топологии
-
- Завсегдатай
- Сообщения: 324
- Зарегистрирован: 14 фев 2010, 20:42
- Репутация: 0
Как организовать проверку топологии
Дано: полигональный слой (лесные кварталы)
между полигонами есть зазоры и перехлест +-10 м (по границам лесничеств)
Как рациональнее всего организовать проверку и исправление топологии?
между полигонами есть зазоры и перехлест +-10 м (по границам лесничеств)
Как рациональнее всего организовать проверку и исправление топологии?
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Как организовать проверку топологии
загрузить в ГИС, которая умеет искать такие ошибки. Рациональность - это уже вопрос стратегии алгоритмов. И с дырками и с перехлестами проблема одна и та же - неочевидность их присвоения - к какому из двух (как минимум) соседей они должны перейти.
Если не путаю, то и EasyTrace (бесплатный) имеет проверку топологии. Точно умеет MapInfo, и видимо ArcGIS. Должны и открытые-бесплатные ГИС делать, хотя с помощью дополнительных модулей.
Если не путаю, то и EasyTrace (бесплатный) имеет проверку топологии. Точно умеет MapInfo, и видимо ArcGIS. Должны и открытые-бесплатные ГИС делать, хотя с помощью дополнительных модулей.
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Как организовать проверку топологии
В защиту своб. ГИС: по мне так лучше всего запихнуть данные в GRASS (при импорте векторов автоматически строится топология, полигоны проверяются на "зазоры" и "перекрытия"). Дальнейшая чистка -- модуль v.edit. Вот сферический в вакууме пример (вектора были нарисованы в грассе "от руки", далее v.edit):
Редактор материалов, модератор форума
-
- Гуру
- Сообщения: 4168
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1107
- Ваше звание: программист
- Откуда: Казань
Re: Как организовать проверку топологии
у меня предложение традиционное, простое и надежное - растеризовать. Поскольку делать все это в векторе - умножать сущности без надобности.
А потом векторизовать, прямо по "квадратикам" растра - нормальный студент пишет такой автомат за пару дней. Особенно, если нет "дырок" (полигоны односвязные). Скорее всего, векторизаторы есть и во всяких GRASS. Наверное, можно и ET приспособить, непонятно только, как ей ID с растра подавать, шибко много цветов нужно.
При растеризации сразу вылезут перекрытия, их можно выделить отдельным кодом при векторизации. А также области, не получившие значений. При современных вычислительных мощностях растр можно взять с шагом метр.
А потом векторизовать, прямо по "квадратикам" растра - нормальный студент пишет такой автомат за пару дней. Особенно, если нет "дырок" (полигоны односвязные). Скорее всего, векторизаторы есть и во всяких GRASS. Наверное, можно и ET приспособить, непонятно только, как ей ID с растра подавать, шибко много цветов нужно.
При растеризации сразу вылезут перекрытия, их можно выделить отдельным кодом при векторизации. А также области, не получившие значений. При современных вычислительных мощностях растр можно взять с шагом метр.
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Как организовать проверку топологии
Вы меня просто пугаете. От слов "автоматически строится топология" веет каким-то всеобщим счастьем. Помниться я пытался понять логику одного товарища, который в лесу поляны рисовал как отдельные объекты. На вопрос "зачем ты так сделал?" Он мне ответил, что так делает ArcINFO это - правильно. Попытки объяснить ему что существуют сущности, вне пределов "примыкают без перекрытий и зазоров", к успеху не привели. Даже пример, что тогда площади лесов искажаются не произвел на него должного впечатления.amuriy писал(а):В защиту своб. ГИС: по мне так лучше всего запихнуть данные в GRASS (при импорте векторов автоматически строится топология, полигоны проверяются на "зазоры" и "перекрытия").[/attachment]
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Как организовать проверку топологии
Boris писал(а):Вы меня просто пугаете.amuriy писал(а):В защиту своб. ГИС: по мне так лучше всего запихнуть данные в GRASS (при импорте векторов автоматически строится топология, полигоны проверяются на "зазоры" и "перекрытия").[/attachment]
Жить вообще страшно, знаете ли. Не бойтесь, я не предлагаю "запихивать" все подряд данные в грасс, только необходимые в этом случае. Я не имел в виду, что грасс сделает всё за нас с вами, просто при импорте векторов действительно автоматом строится топология в грассовском формате (устраивает она нас или нет -- уже следующий вопрос). Можно опционально отключить построение топологии или построить её потом спец. модулем (v.build).
Хотя да, может быть, мне и стоит для понимания сути почитать учебник по дифф.геометрии и топологии (а лучше -- умных книжек по ГИС, раз я такой наивный)

P.S.
А я вот до сих пор отойти не могу, правда.Даже пример, что тогда площади лесов искажаются не произвел на него должного впечатления.
Редактор материалов, модератор форума
-
- Завсегдатай
- Сообщения: 324
- Зарегистрирован: 14 фев 2010, 20:42
- Репутация: 0
Re: Как организовать проверку топологии
ArcGIS ArcInfo (toolbox) - при future to coverage зазоры не удаляет а только довавляет артифактов.
EasyTrase - при импорте полигонов и проверке топологических ошибок выдает ошибки на всех границах полигонов и корректных и нет. При импорте вектора пропущенного через Grass выдает меньше ошибок но посмотреть толком нельзя так как не хватает увеличения.
AutoCAD Map вылетает из-за большого количества полигонов.
MapInfo пока не пробовал
c Grass надо дальше разбираться. С какими параметрами применять v.edit?
Или все таки поставить ArcInfo Workstation и возится с параметрами clean/build?
EasyTrase - при импорте полигонов и проверке топологических ошибок выдает ошибки на всех границах полигонов и корректных и нет. При импорте вектора пропущенного через Grass выдает меньше ошибок но посмотреть толком нельзя так как не хватает увеличения.
AutoCAD Map вылетает из-за большого количества полигонов.
MapInfo пока не пробовал
c Grass надо дальше разбираться. С какими параметрами применять v.edit?
Или все таки поставить ArcInfo Workstation и возится с параметрами clean/build?
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Как организовать проверку топологии
Было бы хорошо увидеть пример ваших данных и более чёткие требования к результату.c Grass надо дальше разбираться. С какими параметрами применять v.edit?
Редактор материалов, модератор форума
- nadiopt
- Гуру
- Сообщения: 4744
- Зарегистрирован: 29 янв 2009, 13:27
- Репутация: 495
- Ваше звание: хрюкало
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Как организовать проверку топологии
а как ты клиг-билдом зазоры уберешь? у тя образуется куча мелких полигонишек, которые будет непонятно, к какому выделу относить, и все равно придедтся чистить вручную
ин гроссен фамилен нихт клювен клац клац
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 15 янв 2010, 11:00
- Репутация: 1
Re: Как организовать проверку топологии
Почему-то все говорят про "проверку топологии" в ET, и никто не разу не сказал про специальную утилиту предназначенную именно для этой задачи - утилиту "Проверка полигонального покрытия". Утилита есть и в бесплатной 7.99, в результате ее работы строятся полигоны на отдельном слое в местах дырок/перекрытий. Не помню, есть ли в ET 7.99 режим быстрого построения полигонов, но вырезать полигоны один из другого (в случае перекрытия) или сшивать (в случае с дыркой) - точно можно.
Утилита серьезно не менялась уже много лет. А сами мы ей пользуемся постоянно.
Если зазоры/дырки небольшие, то можно попробовать автоматически устранить их с помощью коррекции топологии (стягивание вершин в опеределенном радиусе).
Утилита серьезно не менялась уже много лет. А сами мы ей пользуемся постоянно.
Если зазоры/дырки небольшие, то можно попробовать автоматически устранить их с помощью коррекции топологии (стягивание вершин в опеределенном радиусе).
-
- Завсегдатай
- Сообщения: 324
- Зарегистрирован: 14 фев 2010, 20:42
- Репутация: 0
Re: Как организовать проверку топологии
Умерил аппетиты: отрезал от данных маленький, наиболее важный кусок. Вроде полегче работать.
Пробовал проверку полигонов в Easy Trace 7.99: Результат странный: подсвечены все внешние границы.
Прилепил 2 картинки: сильно увеличенную типичную ошибку на стыке кварталов и результат проверки полигонов в Easy Trace
Пробовал проверку полигонов в Easy Trace 7.99: Результат странный: подсвечены все внешние границы.
Прилепил 2 картинки: сильно увеличенную типичную ошибку на стыке кварталов и результат проверки полигонов в Easy Trace
- Вложения
-
- типичная_ошибка.png (4.67 КБ) 14860 просмотров
-
- результат_проверки_полигонов.png (51.35 КБ) 14860 просмотров
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 15 янв 2010, 11:00
- Репутация: 1
Re: Как организовать проверку топологии
Не могли бы вы выложить проект Easy Trace? Действительно, странное поведение, но по картинке предположить в чем дело не могу.
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 15 янв 2010, 11:00
- Репутация: 1
Re: Как организовать проверку топологии
К сожалению, действительно ET 7.99 к тому времени еще не научили справляться с подобными материалами. Извиняюсь, что ввел в заблуждение.
-
- Завсегдатай
- Сообщения: 324
- Зарегистрирован: 14 фев 2010, 20:42
- Репутация: 0
Re: Как организовать проверку топологии
А 8.7 корректно исправляет?
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 15 янв 2010, 11:00
- Репутация: 1
Re: Как организовать проверку топологии
Небольшая иллюстрация работы утилиты Коррекция топологии
Это версия 9.0 ( так что была под рукой), но 8.7 должна работать не хуже.
Таких ошибок было найдено порядка 300 на вашем материале. После коррекции осталось 30.
PS: Извиняюсь за неряшливость иллюстрации, делал на скорую руку.
Это версия 9.0 ( так что была под рукой), но 8.7 должна работать не хуже.
Таких ошибок было найдено порядка 300 на вашем материале. После коррекции осталось 30.
PS: Извиняюсь за неряшливость иллюстрации, делал на скорую руку.
- Вложения
-
- polygons.png (13.65 КБ) 14826 просмотров
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя