Поиск и объединение дублирующих точек в ArcGIS Desktop?


15

У меня есть два точечных шейп-файла: красный и синий. Каждый шейп-файл точек имеет значение z, которое представляет радиус (т.е. представлен в качестве буфера в примере). Двойная точка определяется как точка, которая находится на расстоянии Z от другой точки, которая может находиться в диапазоне от 2 до 10 м. В этом примере десять пар дублирующих точек - семь пар перекрываются идеально, а три пары перекрываются, попадая в значение Z другой точки.

Я хотел бы сохранить только один из каждого дубликата в Z и объединить два шейп-файла вместе в ArcGIS Desktop.

Как я могу найти и объединить дубликаты точек?

введите описание изображения здесь


1
У меня есть решение, но сначала, как вы собираетесь выбрать, какой пункт сохранить?
nagytech

Поскольку обе точки могут считаться правильными сами по себе, хотя и не вместе, случайный выбор этих двух будет идеальным.
Аарон

1
Будет ли приемлемым среднее из двух баллов?
nagytech

@ Geoist: Да, в среднем может работать.
Аарон

Если у вас есть две синие [или красные] точки в их мерах расстояния, вы хотите две точки в выходных данных? Или как насчет более двух точек [любого цвета]? Как насчет того, если A перекрывает B, перекрывает C, перекрывает D, но A не перекрывает D? Выведите одну точку или две [одну из A & B и одну из C & D]?
Spacedman

Ответы:


11

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

1. Объедините данные в один класс / шейп-файл

Просто запустите инструмент Merge для каждого существующего класса / шейп-файла, пока у вас не будет только одного для работы.

2. Рассчитать Z геометрию

Если геометрия Z-включена, вам необходимо вычислить значение Z в таблице атрибутов, чтобы применить его к команде буфера.

Примечание: вам нужно будет сослаться на этот процесс также на более позднем этапе.

2.1. Добавить поле

введите описание изображения здесь

2.2. Установить тип поля

введите описание изображения здесь

2,3. Рассчитать геометрию

введите описание изображения здесь введите описание изображения здесь

3. Геообработка

3.1. Буферизуйте свои точки, используя поле Z_Value в качестве ссылки. Обязательно проверьте соответствующую функцию растворения.

введите описание изображения здесь

3.2. Выполните инструмент Multipart to Singlepart, чтобы разбить данные.

3.3. С разнесенными данными добавьте два новых поля с именами 'Centroid_X' и 'Centroid_Y'.

3.4. Используйте процесс, определенный на шаге 2, чтобы извлечь координаты X и Y в только что созданные столбцы Centroid.

3.5. Экспортируйте таблицу атрибутов в файл DBF. (Обязательно установите тип файла DBF.)

введите описание изображения здесь

введите описание изображения здесь

3,6. Импортируйте файл DBF в карту и добавьте данные X, Y во фрейм карты.

введите описание изображения здесь

4. Готово

введите описание изображения здесь


8

Инструменты Интегрировать (Управление данными) и Удалить идентичные (Управление данными) в ArcGIS решают эту проблему. Просто добавьте шейп-файл точки и выберите XY Tolerance. Все точки в пределах расстояния допуска XY будут считаться одинаковыми. Результирующая точка - это среднее расстояние между двумя исходными точками.

Интеграция используется для поддержания целостности общих границ объектов, делая их совпадающими, если они попадают в указанный допуск x, y. Элементы, попадающие в указанный допуск x, y, считаются идентичными или совпадающими.


Как бы вы присвоили допуск на точку, учитывая, что радиус является переменным?
nagytech

В этом случае допуск равен максимальному радиусу 10 м. На скриншоте видно, что дубликаты имеют одинаковый радиус, и в радиусе друг друга всегда находятся только две точки.
Аарон

Возможно, вы должны перефразировать свой вопрос тогда ..
nagytech

@ Geoist Спасибо за ваш интерес. Что именно вам неясно? Я был бы рад обновить пост с вашими предложениями.
Аарон

2

Вы пробовали "Ближний" инструмент в непосредственной близости с радиусом 10м. Используйте КРАСНЫЙ как входной объект, а Синий - как ближний объект. Он даст синий идентификатор, который падает с КРАСНЫМ буфером точек 10 м. Основываясь на этом идентификаторе (в выводе инструмента рядом), вы можете удалить их синим цветом, а затем использовать инструмент слияния, чтобы объединить КРАСНЫЙ и оставшийся синий.


2
@vadivelan Это не поможет, учитывая, что радиус не является статичным.
nagytech

Да Geoist, я пропустил, что радиус является переменным. Может быть, он может попытаться нарисовать буфер на основе значения радиуса (есть возможность выбрать поле, которое имеет значение радиуса, но поле должно быть заполнено значением z) .. тогда инструмент пересечения / пространственного соединения поможет .... к сожалению, это приводит к большому количеству ручной работы на начальном этапе ..
vadivelan
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.