NbrRectangle (arcpy.sa)

Récapitulatif

Defines a rectangle neighborhood which is created by specifying the height and the width in either map units or number of cells.

Illustration

NbrRectangle neighborhood FocalStatistics image
NbrRectangle neighborhood for the FocalStatistics function.
NbrRectangle neighborhood BlockStatistics image
NbrRectangle neighborhood for the BlockStatistics function.

Discussion

Tools that use neighborhood rectangle object: Block Statistics, Focal Statistics, Point Statistics, and Point Density.

The rectangle neighborhood is specified by providing a width and a height in either cells or map units.

When rectangle is used in a focal tool the x, y position of the processing cell within the neighborhood is determined, with respect to the upper-left corner of the neighborhood, by the following equations:

 x = (width of the neighborhood + 1)/2
 y = (height of the neighborhood + 1)/2

If the input number of cells is even, the x,y coordinates are computed using truncation.

Only the cells whose centers fall within the defined object are processed as part of the rectangle neighborhood.

Syntaxe

NbrRectangle ({width}, {height}, {units})
ParamètreExplicationType de données
width

The width of the rectangle neighborhood.

If only the width is specified, the resulting neighborhood is a square.

(La valeur par défaut est 3)

Double
height

The height of the rectangle neighborhood.

If only the height is specified, the resulting neighborhood is a square.

(La valeur par défaut est 3)

Double
units

Defines the units of the neighborhood.

  • CELLThe unit of measurement is in cells.
  • MAPThe units are in map coordinates.

(La valeur par défaut est CELL)

String

Propriétés

PropriétéExplicationType de données
width
(Lecture/écriture)

The width of the rectangle neighborhood.

If only the width is specified, the height will default to the same as the width, resulting in a square neighborhood.

Double
height
(Lecture/écriture)

The height of the rectangle neighborhood.

If only the height is specified, the width will default to the same as the height, resulting in a square neighborhood.

Double
units
(Lecture/écriture)

Defines the units of the neighborhood.

String

Exemple de code

NbrRectangle example 1 (Python window)

Demonstrates how to create a NbrRectangle 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"
outNbrRec = BlockStatistics("block", NbrRectangle(4, 5, "MAP"))
outNbrRec.save("C:/sapyexamples/output/blstatsnbrr2")
NbrRectangle example 2 (stand-alone script)

Implements the BlockStatistics tool using the NbrRectangle class.

# Name: NbrRectangle_Ex_02.py
# Description: Uses the NbrRectangle 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
width = 5
height = 6
myNbrRec = NbrRectangle(width, height, "MAP")

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute BlockStatistics
outBlkStat =  BlockStatistics(inRaster, myNbrRec, "MINIMUM", "DATA")

# Save the output 
outBlkStat.save("C:/sapyexamples/output/blstat_rec3")

Thèmes connexes

9/12/2013