Вычислить площадь покрытую точками.

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
Сергей.М
Новоприбывший
Сообщения: 12
Зарегистрирован: 03 фев 2015, 12:49
Репутация: 0

Вычислить площадь покрытую точками.

Сообщение Сергей.М » 03 фев 2015, 13:40

Здравствуйте.
Помогите пожалуйста решить задачу.
Есть точечные данные (геодезическая съемка), нужно вычислить площадь, отдельно в каждый из дней съемки. Другими словами, есть массив точек и нужно создать полигоны на основе этих точек. Полигоны должны содержать точки с определенным атрибутом, т.е. датой съемки. При том границы этих полигонов должны непременно стыковаться, т.е. между полигонами не должно быть пустот.

Прикладываю картинку для полноты понимания.
Если кто то, знает инструменты для подобного разделения буду очень признателен за помощь.
Вложения
Снимок.JPG
Снимок.JPG (169.55 КБ) 4562 просмотра

dime1
Гуру
Сообщения: 939
Зарегистрирован: 29 май 2011, 19:41
Репутация: 94
Откуда: Киев

Re: Вычислить площадь покрытую точками.

Сообщение dime1 » 03 фев 2015, 14:06

Сначала сделать выборку точек с одной датой съемки в отдельный слой.
Потом можно попробовать Points to Line, дальше Feature to Polygon.

Или вот тулза Minimum Bounding Geometry (параметр Convex Hull) http://resources.arcgis.com/en/help/mai ... 003q000000

Или вот есть какой-то стандартный скрипт Hawth's Analysis Tools for ArcGIS http://www.spatialecology.com/htools/createmcp.php

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Вычислить площадь покрытую точками.

Сообщение giser » 03 фев 2015, 16:14

Приведенные выше варианты, как мне кажется, не смогут сделать полигоны стык в стык.
Предлагаю следующий вариант (хотя тот еще костыль):
-имеем слой, в котором есть поле с датой съемки, далее нужно создать новое поле (short), в котором для дат назначить какие-то уникальные значения (я делал по примеру: 2 февраля - 1, 3 января -2 и тд до n, n - количество дней съемки будет, соответственно).
-далее сделать интерполяцию по этому полю (я делал Natural Neighbour);
-полученный растр классифицировать на n интервалов;
-далее сделать переклассификацию данного растра (Reclassify) - там автоматически для интервалов будут опять же порядковые номера;
-полученный растр - Raster to polygon.
Сразу скажу, что это не универсальное решение. Это как один из векторов. Нужно смотреть на ситуацию. В моем частном случае получилось (порядок номеров дней слева-направо). В общем, нужно еще подумать :)
Вложения
2015-02-03_161253.png
2015-02-03_161253.png (120.09 КБ) 4495 просмотров
Последний раз редактировалось giser 03 фев 2015, 17:22, всего редактировалось 1 раз.

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Вычислить площадь покрытую точками.

Сообщение giser » 03 фев 2015, 16:50

Еще вариант. Для точечного слоя "создать полигоны Тиссена" с сохранением всех атрибутов. Затем сделать Dissolve по общему атрибуту (дата или присвоенный номер). Есть косяк, что геометрия немного некорректна после этой операции, придется топологию проверять или вручную просто убрать лишние узлы (проще всего сделать операцию Integrate с каким-нибудь небольшим допуском). Потом еще обрезать по общему буферу всех точек и сгладить для красоты :)
Вложения
2015-02-03_164927.png
2015-02-03_164927.png (85.79 КБ) 4470 просмотров

Сергей.М
Новоприбывший
Сообщения: 12
Зарегистрирован: 03 фев 2015, 12:49
Репутация: 0

Re: Вычислить площадь покрытую точками.

Сообщение Сергей.М » 04 мар 2015, 14:26

Спасибо большое.
Что то такое я и искал.

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя