NbrAnnulus (arcpy.sa)
Récapitulatif
Defines an annulus neighborhood which is created by specifying an inner and outer circles' radii in either map units or number of cells.
Illustration
Discussion
Tools that use neighborhood annulus object: Block Statistics, Focal Statistics, Point Statistics, and Point Density.
The annulus shape is comprised of two circles, one inside the other to make a donut shape. Cells with centers that fall outside the radius of the smaller circle but inside the radius of the larger circle will be included in processing the neighborhood; therefore, the area that falls between the two circles constitutes the annulus neighborhood.
When the annulus object is used and the innerRadius or the outerRadius are not specified, then default values are provided.
The innerRadius must be less than or equal to the outerRadius.
The radius is identified in cells or map units, measured perpendicular to the x- or y-axis. When the radii is specified in map units, they are converted to radii in cell units. The resulting radii in cell units produces an area that most closely represents the area calculated by using the original radii in map units. Any cell center encompassed by the annulus will be included in the processing of the neighborhood.
Syntaxe
Paramètre | Explication | Type de données |
innerRadius |
The inner radius of an annulus neighborhood. (La valeur par défaut est 1) | Double |
outerRadius |
The outer radius of an annulus neighborhood. (La valeur par défaut est 3) | Double |
units |
Defines the units of the neighborhood.
(La valeur par défaut est CELL) | String |
Propriétés
Propriété | Explication | Type de données |
innerRadius (Lecture/écriture) |
The inner radius of the annulus neighborhood. | Double |
outerRadius (Lecture/écriture) |
The outer radius of the annulus neighborhood. | Double |
units (Lecture/écriture) |
Defines the units of the neighborhood. | String |
Exemple de code
Demonstrates how to create a NbrAnnulus class and use it in the BlockStatistics tool within the Python window.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNbrA = BlockStatistics("block", NbrAnnulus(1, 2, "CELL"))
outNbrA.save("C:/sapyexamples/output/blstatnbra2")
Implements the BlockStatistics tool using the NbrAnnulus class.
# Name: NbrAnnulus_Ex_02.py
# Description: Uses the NbrAnnulus object to execute BlockStatistics tool.
# 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 = "block"
# Create the Neighborhood Object
innerRadius = 1
outerRadius = 3
myNbrAnnulus = NbrAnnulus(innerRadius, outerRadius, "MAP")
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute BlockStatistics
outBlkStats = BlockStatistics(inRaster, myNbrAnnulus, "MINIMUM", "DATA")
# Save the output
outBlkStats.save("C:/sapyexamples/output/blstat_Ann3")