Приглашаем протестировать набор инструментов AGETools
Добавлено: 09 окт 2010, 22:31
Обрезка полигонов и получение координат с помощью AGETools в ArcGIS
Собственно, начало - здесь Расширения для ArcView 3 - переписать для ArcGIS 9 (ArcMap)
1) Инструментарий для создания сплошных полигональных геометрий
2) Инструментарий для снятия координат
При установке возможен выбор любого из 2 наборов инструментов, по умолчанию устанавливаются оба.
Собственно, начало - здесь Расширения для ArcView 3 - переписать для ArcGIS 9 (ArcMap)
1) Инструментарий для создания сплошных полигональных геометрий
Спойлер
Для создания сплошных полигональных покрытий, чаще всего - дешифровочных схем и оцифровки тематических карт/планов. Насколько мне известно, в этих случаях чаще идут следующими путями:
а) созданием единого полигона на всю область работы и "резкой" его на куски. На мой взгляд, медленно и не всегда удобно.б) использованием инструментов, обеспечивающих автоматическую пристыковку вновь созданного полигона (ArcView 3, инструмент Stream Digitize). Недостатки - на сложных границах вешает систему вплоть до крушения, "дырки" внутри создаваемого полигона, если там уже есть объекты, все равно не прорезает.
в) созданием линейного слоя границ и конвертацией в полигональный. Недостаток - сразу не видно созданных контуров в виде именно полигонов, поэтому часто требуется дополнительная "резка".
Мне всегда было как-то удобнее рисовать "всплошную", то есть новый полигон рисуется поверх уже имеющихся и по ним обрезается. Специально для этого sim-ом было создано расширение для ArcView ( Заполнение пустого пространства ограниченного полигонами), с которым я и работал до последнего времени. Этот метод имел конечно недостатки - как правило в созданном таким образом слое присутствовало множество топологических ошибок. Но их исправление - дело в целом достаточно простое, а выигрыш в скорости работы полностью компенсировал этот требующий дополнительных операций недостаток (без ложной скромности скажу - таким образом я отрисовывал до 3000 контуров дешифровки в сутки ). В настоящее время на современных системах, однако, стало достаточно комфортно работать в ArcGIS - ArcMap. Почему я и опубликовал свою просьбу переписать нужные для повседневнолй работы расширения, на котрую любезно откликнулся Bishop.
а) созданием единого полигона на всю область работы и "резкой" его на куски. На мой взгляд, медленно и не всегда удобно.б) использованием инструментов, обеспечивающих автоматическую пристыковку вновь созданного полигона (ArcView 3, инструмент Stream Digitize). Недостатки - на сложных границах вешает систему вплоть до крушения, "дырки" внутри создаваемого полигона, если там уже есть объекты, все равно не прорезает.
в) созданием линейного слоя границ и конвертацией в полигональный. Недостаток - сразу не видно созданных контуров в виде именно полигонов, поэтому часто требуется дополнительная "резка".
Мне всегда было как-то удобнее рисовать "всплошную", то есть новый полигон рисуется поверх уже имеющихся и по ним обрезается. Специально для этого sim-ом было создано расширение для ArcView ( Заполнение пустого пространства ограниченного полигонами), с которым я и работал до последнего времени. Этот метод имел конечно недостатки - как правило в созданном таким образом слое присутствовало множество топологических ошибок. Но их исправление - дело в целом достаточно простое, а выигрыш в скорости работы полностью компенсировал этот требующий дополнительных операций недостаток (без ложной скромности скажу - таким образом я отрисовывал до 3000 контуров дешифровки в сутки ). В настоящее время на современных системах, однако, стало достаточно комфортно работать в ArcGIS - ArcMap. Почему я и опубликовал свою просьбу переписать нужные для повседневнолй работы расширения, на котрую любезно откликнулся Bishop.
Спойлер
Расширение инсталлятора заменить на .exe и запустить. Запустить ArcMap. В списке задач Task появятся 2 новых пункта - "Усечь геометрию слоем" и "Усечь слой геометрией", в меню Other Tasks (Другие задачи), в Editor-Options-Edit-Tasks - это выглядит так :
Усечение только по редактируемому слою - Усечение по всем слоям, доступным для выборки - "Усечь слой геометрией" - наоборот, вырезает вновь создаваемый полигон из всех нижележащих, а при нажатом Ctrl - и из других полигональных слоев, доступных для выборки. Также доступен параметр, выделять ли последний созданный полигон, он включается-выключается через новую вкладку в Editing Options флажком "Выделить геометрию после операции"
если они не появились - Editor-Options-Edit-Tasks - Add - пункты будут там, добавить их в задачи и стрелками переместить в удобное место.
Инструменты работают так же, как и Create NewFeature - создают полигон, можно переключатся в потоковой режим и рисовать freehand. "Усечь геометрию слоем" - автоматом обрезает вновь созданный полигон по всем нижележащим. При нажатом Ctrl - обрезка производится по всем полигональным слоям, доступным для выборки, без - только по редактируемому.Усечение только по редактируемому слою - Усечение по всем слоям, доступным для выборки - "Усечь слой геометрией" - наоборот, вырезает вновь создаваемый полигон из всех нижележащих, а при нажатом Ctrl - и из других полигональных слоев, доступных для выборки. Также доступен параметр, выделять ли последний созданный полигон, он включается-выключается через новую вкладку в Editing Options флажком "Выделить геометрию после операции"
Спойлер
Для быстрого, без рассчетов и (или) ручных перебиваний координат нужных точек на карте в любые приложения, как в виде текста, так и в виде 2 полей таблицы, в различных форматах. В моем случае, например - быстрый перенос координат нужных точек в базу данных (для последующего построения точечных слоев типа Event) или переноса координат в текстовый документ.
Спойлер
После установки приложения в контекстном меню настройки появится новая панель инструментов:
1) Список выбора формата вывода.
2) Собственно инструмент ("перекрестье прицела") снятия координат
3)Добавление пользовательских форматов. Открывает окно :
Форматы с разделителем [tab] предназначены для вставки в таблицы в 2 смежные выделенные ячейки по горизонтали, с разделителем [ret] - по вертикали, форматы с [W] содержат также обозначения - с.ш., в.д. Маска ввода ясна из приведенных примеров. В случае некорректных масок или пустого значения - будет выдано сообщение об ошибке.
4) Очистка списка снятых координат (см. след.инструмент)
5) Отображение окна со снятыми координатами. Инструмент не только снимает координаты одной точки, но может и их накпливать, а также добавлять в имеющиеся в проекте таблицы (списки выбора таблиц и полей в ней внизу окна). Координаты по умолчанию добавляются в последнюю запись таблицы, если есть выделенная запись - в выделенную, если выделено несколько записей - в первую из выделенных.
В окне дублированы кнопки очистки хранящегося в памяти списка координат и и замены порядка X-Y координат.
Примечание - данная функция - в стадии тестирования, мне пока удается добавлять координаты только в DBF-таблицы и таблицы "родных" геобаз ArcGIS, пока не удалось найти способ открыть таблицы MS ACCESS в ArcGIS кроме как только на чтение.
При изменении формата списком 2 все координаты в этом окне также поменяют формат, записанные в таблицу - останутся в ней как вводились.
6) Поменять местами X и Y координаты (также работает для всего списка снятых координат).
Или идем в Tools-Customize-Toolbars" (Настройка-Панели инструментов) - поставить флажок на "Pick coordinates"
Или идем в Tools-Customize-Commands (Инструменты-Настроить-Команды), наблюдаем там группу "Координаты" и соответствующие ей 6 кнопок, перетаскиваем их в удобное место на любую панель инструментов.
Панель инструментов имеет следующий вид:
Назначение кнопок (слева направо)1) Список выбора формата вывода.
2) Собственно инструмент ("перекрестье прицела") снятия координат
3)Добавление пользовательских форматов. Открывает окно :
Форматы с разделителем [tab] предназначены для вставки в таблицы в 2 смежные выделенные ячейки по горизонтали, с разделителем [ret] - по вертикали, форматы с [W] содержат также обозначения - с.ш., в.д. Маска ввода ясна из приведенных примеров. В случае некорректных масок или пустого значения - будет выдано сообщение об ошибке.
4) Очистка списка снятых координат (см. след.инструмент)
5) Отображение окна со снятыми координатами. Инструмент не только снимает координаты одной точки, но может и их накпливать, а также добавлять в имеющиеся в проекте таблицы (списки выбора таблиц и полей в ней внизу окна). Координаты по умолчанию добавляются в последнюю запись таблицы, если есть выделенная запись - в выделенную, если выделено несколько записей - в первую из выделенных.
В окне дублированы кнопки очистки хранящегося в памяти списка координат и и замены порядка X-Y координат.
Примечание - данная функция - в стадии тестирования, мне пока удается добавлять координаты только в DBF-таблицы и таблицы "родных" геобаз ArcGIS, пока не удалось найти способ открыть таблицы MS ACCESS в ArcGIS кроме как только на чтение.
При изменении формата списком 2 все координаты в этом окне также поменяют формат, записанные в таблицу - останутся в ней как вводились.
6) Поменять местами X и Y координаты (также работает для всего списка снятых координат).