Доступно с лицензией Spatial Analyst.
Краткая информация
Извлекает ячейки растра с использованием круга путем задания его центра и радиуса.
Иллюстрация
Использование
Для определения, попадает ячейка в окружность или за пределы окружности, используется центр ячейки. Если центр ячейки в пределах дуг, образующих окружность, ячейка считается полностью в пределах окружности, даже если часть ячейки попадает за пределы этой окружности.
Не выбранным ячейкам присваивается значение NoData.
Если в качестве входного указан многоканальный растр, на выходе будет создан новый многоканальный растр. Соответственно, будет анализироваться каждый канал входного многоканального растра.
Выходным форматом по умолчанию является растр базы геоданных. Если в качестве выходного формата указан Esri Grid stack, его название не должно начинаться с цифры, содержать пробелы и должно иметь длину не более девяти символов.
Если входные данные – это слой, созданный на основании многоканального растра, состоящего из более, чем трех каналов, в операции извлечения будут учитываться только те каналы, которые были загружены слоем (отображены символами). В результате выходной многоканальный растр может иметь лишь три канала – в соответствии с используемыми для входного слоя каналами.
Если входной растр целочисленный, выходной растр будет также целочисленным. Если входной растр с плавающей точкой, выходной растр также будет с плавающей точкой.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
ExtractByCircle (in_raster, center_point, radius, {extraction_area})
Параметр | Объяснение | Тип данных |
in_raster | Входной растр, ячейки которого извлекаются. | Raster Layer |
center_point | Точечный класс (Point) задает координату центра (x,y) круга, определяющего извлекаемую область. Форма класса:
Координаты задаются в тех же единицах карты, что и входной растр. | Point |
radius | Радиус окружности, определяющей область извлечения. Радиус задается в единицах карты и должен быть в тех же единицах, что и входной растр. | Double |
extraction_area (Дополнительный) | Определяет, будут ли извлечены ячейки внутри или снаружи окружности.
| 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"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ExtractByCircle
outExtCircle = ExtractByCircle(inRaster, centerPoint, circRadius,
extractType)
# Save the output
outExtCircle.save("c:/sapyexamples/output/extcircle02")
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst