Как разрезать полигональную тему - темой линейной?

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2568
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 37
Ваше звание: /

Как разрезать полигональную тему - темой линейной?

Сообщение Natalia Novoselova » 16 апр 2017, 23:27

Каким инструментом в ArcGIS можно разрезать полигональную тему линейной темой?

То есть множество полигонов слоя А должны быть разрезаны множеством линий слоя Б.

кажется, был такой, никак не могу вспомнить.. :( Хелп говорит только о ручном способе..

5Nap
Участник
Сообщения: 60
Зарегистрирован: 21 ноя 2010, 17:36
Репутация: 22

Re: Как разрезать полигональную тему - темой линейной?

Сообщение 5Nap » 17 апр 2017, 00:08

Natalia Novoselova писал(а):Каким инструментом в ArcGIS можно разрезать полигональную тему линейной темой?

То есть множество полигонов слоя А должны быть разрезаны множеством линий слоя Б.

кажется, был такой, никак не могу вспомнить.. :( Хелп говорит только о ручном способе..
из коробки - никак. взять полигональный и линейный слои, собрать из них один линейный, потом linesToPolygons, результату через spatial join подтянуть атрибутику.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2568
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 37
Ваше звание: /

Re: Как разрезать полигональную тему - темой линейной?

Сообщение Natalia Novoselova » 17 апр 2017, 01:16

5Nap писал(а):
Natalia Novoselova писал(а):Каким инструментом в ArcGIS можно разрезать полигональную тему линейной темой?

То есть множество полигонов слоя А должны быть разрезаны множеством линий слоя Б.

кажется, был такой, никак не могу вспомнить.. :( Хелп говорит только о ручном способе..
из коробки - никак. взять полигональный и линейный слои, собрать из них один линейный, потом linesToPolygons, результату через spatial join подтянуть атрибутику.

То есть ваша идея превратить полигональный слой "А" в линейный. И потом разрезать его линейным слоем "Б"? А каким это можно сделать инструментом?


Странно, что нет прямых инструменов. Это же ясная простая задача. Разрезать полигоны линиями.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2568
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 37
Ваше звание: /

Re: Как разрезать полигональную тему - темой линейной?

Сообщение Natalia Novoselova » 17 апр 2017, 01:19

Может быть, в QGIS это можно сделать?


По ArcGIS есть custom tool http://www.arcgis.com/home/item.html?id ... 896670a431
Но что-то он у меня виснет... не работает. :(

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2568
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 37
Ваше звание: /

Re: Как разрезать полигональную тему - темой линейной?

Сообщение Natalia Novoselova » 17 апр 2017, 04:53

5Nap писал(а):
из коробки - никак. взять полигональный и линейный слои, собрать из них один линейный, потом linesToPolygons, результату через spatial join подтянуть атрибутику.

Получилось в ArcGIS сделать прямым способом. В два шага.
Делю полигональную тему «А» линейной темой «Б» из множества объетов.

1. Feature to polygon (Data Management). Кладем туда вместе линейную тему и полигональную. На выходе получаем полигональную тему «В», в которой все полигоны разделены линиями, НО к ней добавлены полигоны, которые образовались из-за наложения линий (т.е. все пустоты между линиями и полигонами стали теперь полигонами.
2. Чтобы убрать эти пустоты – используем инструмент Intersect (Data Management)
Пересекаем старую тему полигонов «А» и новую тему полигонов «В». На выходе получаем тему с желаемой геометрией – все лишние полигоны обрезались, итоговый полигон разделен линейной темой.

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

Аватара пользователя
nadiopt
Гуру
Сообщения: 4598
Зарегистрирован: 29 янв 2009, 13:27
Статьи: 4
Репутация: 432
Ваше звание: хрюкало
Откуда: Москва-Питер
Контактная информация:

Re: Как разрезать полигональную тему - темой линейной?

Сообщение nadiopt » 17 апр 2017, 06:48

подсоединить атрибуты spatial join ом можно
ин гроссен фамилен нихт клювен клац клац

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2568
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 37
Ваше звание: /

Re: Как разрезать полигональную тему - темой линейной?

Сообщение Natalia Novoselova » 17 апр 2017, 20:06

nadiopt писал(а):подсоединить атрибуты spatial join ом можно
Вопрос актуальный, 20078 просмотров, не считая аналогичных тем.
https://gis.stackexchange.com/questions ... lines-usin

Добавила туда свое решение. Не могу почему-то размещать там это ответом. Статуса что-ли не хватает..Сделала комментарий. Пока его там не отмодерировали - подержу здесь копию. Запись решения.
Hi, I can’t add the new answer here. How I can do it?
But I had the same task and found a way to solve it directly in ArcGIS by ordinary tools. It needs 3 steps. If it is ok, maybe you can move it as answer here? I suppose this method is very simple and useful.
Task: Divide the polygonal theme (“A”) by the linear theme (“B”).
1. At first use the Feature to Polygon Tool (Data Management - Features). Put there both polygonal and linear themes (A and B). In the output polygonal theme ("C") all the polygons are divided by lines of theme “B”, BUT it has the unwanted polygons that formed between lines and polygons.
2. To remove these “unwanted polygons”, we need to use the Intersect Tool (Analysis Tools - Overlay). Put there the polygonal theme “C” and the initial polygonal theme "A". The resulting output polygonal theme (”D”) has the polygons with the desired geometry (i.e. all the polygons of this theme are divided by lines of the linear theme “B”. It doesn’t have the “unwanted polygons”.
3. However, it lost their attributes. For attached the attributes we can use the Spatial Join function (directly inside the polygonal theme “D”) to join the attributes of initial polygonal theme “A” to new polygonal theme “D”.

Ответить

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