Spline with Barriers (Spatial Analyst)
Summary
Interpolates a raster surface, using barriers, from points using a minimum curvature spline technique. The barriers are entered as either polygon or polyline features.
Usage
-
This tool requires the Java runtime environment Version 6, or higher, to be installed. The Java Runtime Environment can be downloaded for free from http://www.java.com/en/download.
-
The resulting smooth surface from is constrained by the input barrier features.
-
Some input datasets may have several points with the same x,y coordinates. If the values of the points at the common location are the same, they are considered duplicates and have no effect on the output. If the values are different, they are considered coincident points.
The various interpolation tools may handle this data condition differently. For example, in some cases, the first coincident point encountered is used for the calculation; in other cases, the last point encountered is used. This may cause some locations in the output raster to have different values than what you might expect. The solution is to prepare your data by removing these coincident points. The Collect Events tool in the Spatial Statistics toolbox is useful for identifying any coincident points in your data.
For the Spline with Barriers tool, by default the values for each set of coincident points will be averaged.
-
If a cell size of 0 is entered, the cell size actually used will be the shorter of the width or the height of the extent of the input point features, in the input spatial reference, divided by 250.
-
The barrier features are rasterized and the cell center is used to decide whether the cell falls within a polygon or whether the cell becomes a barrier for polyline features.
If the tool fails to run with an error message stating that a "more recent version of Java needs to be installed", and you have multiple versions of Java installed, you need to update the PATH environment variable.
Syntax
Parameter | Explanation | Data Type |
Input_point_features in_point_features |
The input point features containing the z-values to be interpolated into a surface raster. | Feature Layer |
Z_value_field |
The field that holds a height or magnitude value for each point. This can be a numeric field or the Shape field if the input point features contain z-values. | Field |
Input_barrier_features (Optional) |
The optional input barrier features to constrain the interpolation. | Feature Layer |
Output_cell_size cell_size (Optional) |
The cell size at which the output raster will be created. If a value of 0 is entered, the shorter of the width or the height of the extent of the input point features in the input spatial reference, divided by 250, will be used as the cell size. | Analysis Cell Size |
Smoothing_Factor (Optional) | The parameter that influences the smoothing of the output surface. No smoothing is applied when the value is zero and the maximum amount of smoothing is applied when the factor equals 1. The default is 0.0. | Double |
Return Value
Name | Explanation | Data Type |
Output_raster |
The output interpolated surface raster. | Raster |
Code Sample
This example inputs a point shapefile and interpolates the output surface as a TIFF raster.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outSplineBarriers = SplineWithBarriers("ca_ozone_pts.shp", "ozone",
"ca_ozone_barrier.shp", 2000)
outSplineBarriers.save("C:/sapyexamples/output/splinebarrierout.tif")
This example inputs a point shapefile and interpolates the output surface as a Grid raster.
# Name: SplineWithBarriers_Ex_02.py
# Description: Interpolate a series of point features onto a
# rectangular raster, using optional barriers, using a
# minimum curvature spline technique.
# Requirements: Spatial Analyst Extension and Java Runtime
# Environment Version 5.0, or higher.
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inPointFeatures = "ca_ozone_pts.shp"
zField = "ozone"
inBarrierFeature = "ca_ozone_barrier.shp"
cellSize = 2000.0
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Spline with Barriers
outSplineBarriers = SplineWithBarriers(inPointFeatures,
zField, inBarrierFeature, cellSize)
# Save the output
outSplineBarriers.save("C:/sapyexamples/output/splinebout02")