Available with Spatial Analyst license.
Available with 3D Analyst license.
Summary
Interpolates a raster surface from points using a two-dimensional minimum curvature spline technique.
The resulting smooth surface passes exactly through the input points.
Usage
The greater the value of Number of Points, the smoother the surface of the output raster.
The Output cell size can be defined by a numeric value or obtained from an existing raster dataset. If the cell size hasn’t been explicitly specified as the parameter value, it is derived from the Cell Size environment if it has been specified. If the parameter cell size or the environment cell size have not been specified, but the Snap Raster environment has been set, the cell size of the snap raster is used. If nothing is specified, the cell size is calculated from the shorter of the width or height of the extent divided by 250, in which the extent is in the Output Coordinate System specified in the environment.
If the cell size is specified using a numeric value, the tool will use it directly for the output raster.
If the cell size is specified using a raster dataset, the parameter will show the path of the raster dataset instead of the cell size value. The cell size of that raster dataset will be used directly in the analysis, provided the spatial reference of the dataset is the same as the output spatial reference. If the spatial reference of the dataset is different than the output spatial reference, it will be projected based on the selected Cell Size Projection Method.
The Regularized option of Spline type usually produces smoother surfaces than those created with the Tension option.
With the Regularized option, higher values used for the weight parameter produce smoother surfaces. The values entered for this parameter must be equal to or greater than zero. Typical values used are 0, 0.001, 0.01, 0.1, and 0.5. The Weight is the square of the parameter referred to in the literature as tau (t).
With the Tension option, higher values entered for the weight parameter result in somewhat coarser surfaces, but surfaces that closely conform to the control points. The values entered must be equal to or greater than zero. Typical values are 0, 1, 5, and 10. The Weight is the square of the parameter referred to in the literature as phi (Φ).
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 data formats that support Null values, such as file geodatabase feature classes, a Null value will be ignored when used as input.
Syntax
arcpy.3d.Spline(in_point_features, z_field, out_raster, {cell_size}, {spline_type}, {weight}, {number_points})
Parameter | Explanation | Data Type |
in_point_features | The input point features containing the z-values to be interpolated into a surface raster. | Feature Layer |
z_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 |
out_raster | The output interpolated surface raster. It is always a floating-point raster. | Raster Dataset |
cell_size (Optional) | The cell size of the output raster that will be created. This parameter can be defined by a numeric value or obtained from an existing raster dataset. If the cell size hasn't been explicitly specified as the parameter value, the environment cell size value will be used if specified; otherwise, additional rules will be used to calculate it from the other inputs. See the usage section for more detail. | Analysis Cell Size |
spline_type (Optional) | The type of spline to be used.
| String |
weight (Optional) | Parameter influencing the character of the surface interpolation. When the REGULARIZED option is used, it defines the weight of the third derivatives of the surface in the curvature minimization expression. If the TENSION option is used, it defines the weight of tension. The default weight is 0.1. | Double |
number_points (Optional) | The number of points per region used for local approximation. The default is 12. | Long |
Code sample
This example inputs a point shapefile and interpolates the output surface as a TIFF raster.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.Spline_3d("ozone_pts.shp", "ozone", "C:/output/splineout.tif",
2000, "REGULARIZED", 0.1)
This example inputs a point shapefile and interpolates the output surface as a Grid raster.
# Name: Spline_3d_Ex_02.py
# Description: Interpolate a series of points onto a rectangular
# raster using a minimum curvature spline technique.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inPointFeatures = "ca_ozone_pts.shp"
zField = "ozone"
outRaster = "C:/output/splineout"
cellSize = 2000.0
splineType = "REGULARIZED"
weight = 0.1
# Execute Spline
arcpy.Spline_3d(inPointFeatures, zField, outRaster, cellSize,
splineType, weight)
Environments
Licensing information
- Basic: Requires 3D Analyst or Spatial Analyst
- Standard: Requires 3D Analyst or Spatial Analyst
- Advanced: Requires 3D Analyst or Spatial Analyst