ГИС: преобразование нескольких многоугольников в несколько функций

StackOverflow https://stackoverflow.com/questions/2759849

  •  02-10-2019
  •  | 
  •  

Вопрос

Я участвую в проекте ГИС. У меня есть файл базовой карты (файл формы), который содержит дорожный слой для большой части города. Проблема заключается в том, что файл формы содержит только две функции, каждая из которых содержит около 500000 баллов каждая. Особенности представляют собой мультиполигоны, содержащие большие полигоны внутри. Я хочу преобразовать его в многочисленные функции, каждый из которых содержит не более одного многоугольника. Является ли это возможным? Если да, как?

Это было полезно?

Решение

Похоже, что у вас здесь есть функция нескольких частей. Если вы используете ArcGIS, вам необходимо добавить панель инструментов Advance Editor в свой ArcMap. Запустите сеанс редактирования и используйте инструмент для множественных функций Explode, а затем у вас будет одна геометрия для каждой записи.

Другие советы

Если у вас есть информация о подключении (например, у вас есть многоугольные полигоны, а не только точки), не так уж и сложно выполнить достойную работу по снижению многоугольника.

То, что я сделал в прошлом, состояло из двух шагов.

  1. Любая вершина, которая окружена многоугольниками, все из которых являются копланар, может быть удалена. Я сделал это, «скользив» вершину до соседской вершины, что сосед, получающий всех соседей тестовой вершины и любых треугольников, которые становятся вырожденными (например, любые треугольники, разделяемые между двумя вертиками).

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


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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top