Пересечение (Intersect) (Покрытие)
Резюме
Вычисляет геометрическое пересечение двух покрытий. В выходном покрытии будут сохранены только те объекты, которые попадают в общую для двух покрытий область.
Более подробно о том, как работает инструмент Пересечение (Intersect)
Рисунок
Использование
-
Пересекающее покрытие должно иметь полигональную топологию.
-
Входное, пересекающее и выходное покрытия должны иметь отличающиеся имена, даже если находятся в разных рабочих областях.
-
При использовании опции POLY в каждом полигоне выходного покрытия создаются точки меток. Идентификационные номера User-ID новых полигонов получаются вычетом единицы из внутренних номеров полигонов.
-
При использовании опции LINE cистемы маршрутов входного покрытия будут сохранены в выходном покрытии. Однако применение INTERSECT к самим маршрутам и секциям не допускается.
-
При использовании опции POLY подклассы регионов из входного и пересекающего покрытий сохраняются. Подклассы с одинаковыми именами и атрибутивными схемами присоединяются. Выходные регионы вырезаются по экстенту выходного покрытия.
-
Аннотация входного покрытия копируется и сохраняется в выходном покрытии.
-
Точность координат выходного покрытия определяется параметром среды Точность для вычисляемых покрытий (Precision for Derived Coverages).
-
Файлы проекций сравниваются на предмет подобия с использованием степени сравнения, заданной в параметре среды Сравнить проекции (Compare Projections).
-
Выходное покрытие наследует элементы таблицы точечных атрибутов, меток и содержимого модели данных файла проекции из входного покрытия.
-
Если входное покрытие содержит линейные данные, относящиеся к разным плановым графам (planar graphs), то эти данные будут сохраняться в выходном покрытии. Например, в случае с совпадающими или коллинеарными дугами, представляющими силовые кабели на различных уровнях или дорогу вдоль ручья, будут сохранены совпадающие и коллинеарные отрезки линий. Однако могут быть добавлены дополнительные вершины. В случае пересекающихся дуг, например - когда дорога проходит через реку, узлы в видимом месте пересечения добавляться не будут.
Синтаксис
Параметр | Объяснение | Тип данных |
in_cover |
Покрытие, полигональные, линейные или точечные объекты которого будут пересекаться с пересекающим покрытием. | Coverage |
intersect_cover |
Пересекающее покрытие. Это покрытие должно содержать полигональные объекты. | Coverage |
out_cover |
Покрытие, которое будет создано для сохранения результатов. | Coverage |
feature_type (дополнительно) |
Класс объектов входного покрытия, который нужно наложить и сохранить в выходном покрытии.
| String |
fuzzy_tolerance (дополнительно) |
Минимальное расстояние между координатами в выходном покрытии. По умолчанию используется минимальное значение допуска неразличимости из входного и стирающего покрытий. Более подробно о том, как рассчитывается допуск неразличимости по умолчанию | Double |
join_attributes (дополнительно) |
Определяет, будут ли присоединены все атрибуты объектов входного покрытия и покрытия идентичности к таблице атрибутов объектов выходного покрытия.
| Boolean |
Пример кода
В следующем автономном скрипте показано, как выполнить пересечение двух покрытий.
# Name: Intersect_Example.py
# Description: Intersects two coverages
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inCover = "stream"
intersectCover = "citylim"
outCover = "C:/output/citystreams"
featureType = "LINE"
joinAttributes = "NO_JOIN"
# Execute Intersect
arcpy.Intersect_arc(inCover, intersectCover, outCover, featureType, "",
joinAttributes)