Available with Spatial Analyst license.
Summary
Expands specified zones of a raster by a specified number of cells.
Illustration
Usage
The specified zone values are considered to be foreground zones, while the remaining zone values are considered to be background zones. With this tool the foreground zones are allowed to expand into the background zones.
When two foreground zones compete to expand into the same background zone, the conflict is resolved based on the value of the majority of surrounding cells.
NoData cells are always considered background cells; therefore, neighboring cells of any value can expand into NoData cells. NoData cells will never expand into their neighbors.
See Analysis environments and Spatial Analyst for additional details on the geoprocessing environments that apply to this tool.
Syntax
Expand (in_raster, number_cells, zone_values)
Parameter | Explanation | Data Type |
in_raster | The input raster for which the identified zones are to be expanded It must be of integer type. | Raster Layer |
number_cells | The number of cells to expand each specified zone by. The value must be an integer greater than 1. | Long |
zone_values [zone_value,...] | The list of zone values to expand. The zone values must be integers. They can be in any order. | Long |
Return Value
Name | Explanation | Data Type |
out_raster | The output generalized raster. The specified zones of the input raster will be expanded by the specified number of cells. The output is always of integer type. | Raster |
Code sample
Expand example 1 (Python window)
This example expands the zone specified by a list of values by two cells.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outExpand = Expand("filter", 2, [0, 6, -3])
outExpand.save("C:/sapyexamples/output/outexpand.img")
Expand example 2 (stand-alone script)
This example expands the zone specified by a list of values by two cells.
# Name: Expand_Ex_02.py
# Description: Expands specified zones of a raster
# by a specified number of cells.
# 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 = "filter"
numberCells = 2
zoneValues = [0, 6, -3]
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Expand
outExpand = Expand(inRaster, numberCells, zoneValues)
# Save the output
outExpand.save("C:/sapyexamples/output/outexpand")
Environments
Licensing information
- ArcGIS Desktop Basic: Requires Spatial Analyst
- ArcGIS Desktop Standard: Requires Spatial Analyst
- ArcGIS Desktop Advanced: Requires Spatial Analyst