Извлечь по окружности (Spatial Analyst)

Доступно с лицензией Spatial Analyst.

Краткая информация

Извлекает ячейки растра с использованием круга путем задания его центра и радиуса.

Иллюстрация

Иллюстрация инструмента Извлечь по окружности
OutRas = ExtractByCircle(InRas1, Point(2.5,2.5), 2, "INSIDE")

Использование

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

  • Если для параметра Входной растр (in_raster в Python) указан многоканальный растр, будет обработаны все каналы.

    Чтобы обработать выбранные каналы многоканального растра, сначала создайте набор растровых данных, состоящий только из необходимых каналов, с помощью инструмента Объединить каналы. Затем используйте результат в качестве Входного растра (in_raster в Python)

    Выходным форматом по умолчанию является растр базы геоданных. Если в качестве выходного формата указан Esri Grid stack, название стека не должно начинаться с цифры, содержать пробелы и должно иметь длину не более девяти символов.

  • Для определения, попадает ячейка в окружность или за пределы окружности, используется центр ячейки. Если центр ячейки в пределах дуг, образующих окружность, ячейка считается полностью в пределах окружности, даже если часть ячейки попадает за пределы этой окружности.

  • Не выбранным ячейкам присваивается значение NoData.

  • Если входной растр целочисленный, выходной растр будет также целочисленным. Если входной растр с плавающей точкой, выходной растр также будет с плавающей точкой.

  • См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

ПодписьОписаниеТип данных
Входной растр

Входной растр, ячейки которого извлекаются.

Raster Layer
Центральная точка

Координата центра (x,y) окружности, определяющей область извлечения.

Координаты задаются в тех же единицах карты, что и входной растр.

Point
Радиус

Радиус окружности, определяющей область извлечения.

Радиус задается в единицах карты и должен быть в тех же единицах, что и входной растр.

Double
Область извлечения
(Дополнительный)

Определяет, будут ли ячейки в пределах или вне окружности, выбраны и сохранены в выходной растр.

  • ВнутриЯчейки в пределах окружности будут выбраны и сохранены в выходной растр. Все ячейки за пределами входной окружности будут иметь значения NoData в выходном растре.
  • СнаружиЯчейки вне окружности будут выбраны и сохранены в выходной растр. Все ячейки внутри входной окружности будут иметь значения NoData в выходном растре.
String

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

Выходной растр, содержащий значения ячеек, извлеченные из входного растра.

Raster

ExtractByCircle(in_raster, center_point, radius, {extraction_area})
ИмяОписаниеТип данных
in_raster

Входной растр, ячейки которого извлекаются.

Raster Layer
center_point

Класс Point, который задает координату центра (x,y) окружности, определяющей область извлечения.

Форма класса может быть следующей:

  • Point (x, y)

Координаты задаются в тех же единицах карты, что и входной растр.

Point
radius

Радиус окружности, определяющей область извлечения.

Радиус задается в единицах карты и должен быть в тех же единицах, что и входной растр.

Double
extraction_area
(Дополнительный)

Определяет, будут ли ячейки в пределах или вне окружности, выбраны и сохранены в выходной растр.

  • INSIDEЯчейки в пределах окружности будут выбраны и сохранены в выходной растр. Все ячейки за пределами входной окружности будут иметь значения NoData в выходном растре.
  • OUTSIDEЯчейки вне окружности будут выбраны и сохранены в выходной растр. Все ячейки внутри входной окружности будут иметь значения NoData в выходном растре.
String

Возвращаемое значение

ИмяОписаниеТип данных
out_raster

Выходной растр, содержащий значения ячеек, извлеченные из входного растра.

Raster

Пример кода

ExtractByCircle, пример 1 (окно Python)

В этом примере извлекаются ячейки в пределах 500-метрового радиуса вокруг точки.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outExtCircle = ExtractByCircle("elevation", arcpy.Point(482838.823, 222128.982),
                                500, "INSIDE")
outExtCircle.save("c:/sapyexamples/output/extcircle")
ExtractByCircle, пример 2 (автономный скрипт)

В этом примере извлекаются ячейки в пределах 1000-метрового радиуса вокруг точки.

# Name: ExtractByCircle_Ex_02.py
# Description: Extracts the cells of a raster based on a circle.
# 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 = ("elevation")
centerPoint = arcpy.Point(482838.823, 222128.982)
circRadius = 1000
extractType = "INSIDE"

# Execute ExtractByCircle
outExtCircle = ExtractByCircle(inRaster, centerPoint, circRadius, 
                               extractType)

# Save the output 
outExtCircle.save("c:/sapyexamples/output/extcircle02")