Доступно с лицензией Spatial Analyst.
Краткая информация
Извлекает ячейки растра по полигону.
Иллюстрация
Использование
Извлечение происходит по полигону, заданному во входном классе объектов, вместо задания серии координат x,y, в инструменте Извлечь по маске.
Для определения, попадает ячейка в полигон или за пределы полигона, используется центр ячейки. Если центр ячейки в пределах дуг, образующих полигон, ячейка считается полностью в пределах полигона, даже если часть ячейки попадает за пределы полигона.
В полигоне не должно быть более 1 000 вершин. Вершины полигона должны быть заданы в строгом порядке по часовой стрелке. Первая и последняя вершины должны совпадать, для завершенного полигона, если будет использоваться несколько полигонов. Если последние точки не идентичные, полигон будет замкнут автоматически. Дуги, образующие полигон, могут пересекаться, но спиралевидные полигоны использовать не рекомендуется.
Не выбранным ячейкам присваивается значение NoData.
Если в качестве входного указан многоканальный растр, на выходе будет создан новый многоканальный растр. Соответственно, будет анализироваться каждый канал входного многоканального растра.
Выходным форматом по умолчанию является растр базы геоданных. Если в качестве выходного формата указан Esri Grid stack, его название не должно начинаться с цифры, содержать пробелы и должно иметь длину не более девяти символов.
Если входные данные – это слой, созданный на основании многоканального растра, состоящего из более, чем трех каналов, в операции извлечения будут учитываться только те каналы, которые были загружены слоем (отображены символами). В результате выходной многоканальный растр может иметь лишь три канала – в соответствии с используемыми для входного слоя каналами.
Если входной растр целочисленный, выходной растр будет также целочисленным. Если входной растр с плавающей точкой, выходной растр также будет с плавающей точкой.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
ExtractByPolygon (in_raster, polygon, {extraction_area})
Параметр | Объяснение | Тип данных |
in_raster | Входной растр, ячейки которого извлекаются. | Raster Layer |
polygon [point,...] | Полигон (или полигоны), определяющий область извлечения входного растра. Каждый полигон – это список вершин, определенных точечными Point классами. Если необходимо, класс Polygon может быть использован для определения перечня частей полигона. Точки представляют собой пары координат x,y, заданных в тех же единицах карты, что и входной растр. Форма объекта:
Обратите внимание, что последняя координата должна быть такой же, как первая, чтобы полигон замкнулся. | Point |
extraction_area (Дополнительный) | Определяет, будут ли извлечены ячейки внутри или снаружи полигона.
| String |
Возвращаемое значение
Название | Объяснение | Тип данных |
out_raster | Выходной растр, содержащий значения ячеек, извлеченные из входного растра. | Raster |
Пример кода
ExtractByPoints, пример 1 (окно Python)
В этом примере из растра извлекаются ячейки на основе определенных координат полигона.
import arcpy
from arcpy import env
from arcpy.sa import *
polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200),
arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)]
env.workspace = "C:/sapyexamples/data"
extPolygonOut = ExtractByPolygon("soil", polyPoints, "INSIDE")
extPolygonOut.save("c:/sapyexamples/output/extpoly")
ExtractByPolygon, пример 2 (автономный скрипт)
В этом примере из растра извлекаются ячейки на основе определенных координат полигона.
# Name: ExtractByPolgyon_Ex_02.py
# Description: Extracts the cells of a raster based on a polygon.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "soil"
polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200),
arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)]
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ExtractByPolygon
extPolygonOut = ExtractByPolygon(inRaster, polyPoints, "INSIDE")
# Save the output
extPolygonOut.save("c:/sapyexamples/output/extpoly02")
Параметры среды
- Автоподтверждение (Auto Commit)
- Размер ячейки (Cell size)
- Сжатие (Compression)
- Текущая рабочая область (Current Workspace)
- Экстент (Extent)
- Географические преобразования (Geographic Transformations)
- Маска (Mask)
- Выходное ключевое слово CONFIG (Output CONFIG Keyword)
- Выходная система координат (Output Coordinate System)
- Статистика растра (Raster Statistics)
- Временная рабочая область (Scratch Workspace)
- Растр привязки (Snap Raster)
- Размер листа (Tile Size)
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst