Spline

Interpolates a surface from points using a minimum curvature spline technique.

Learn more about how Spline works


Usage tips

Command line and Scripting

Map Algebra

ArcObjects

Syntax

Spline_sa (in_point_features, z_field, out_raster, cell_size, spline_type, weight, number_points)
Parameter Explanation Datatype
Input point features (Required)

The input point features containing the z-values to be interpolated into a surface raster.

Composite Geodataset
Z value field (Required)

Field that holds a height or magnitude value for each point.

This can be a numeric field or the shape field, if the in_point_features contain z-values.

Field
Output raster (Required)

The output raster surface to be created.

Raster Dataset
Output cell size (Optional)

The cell size at which the output raster will be created.

This will be the value in the Environment if it is explicitly set. Otherwise, it is the shorter of the width or the height of the extent of in_point_features, in the input spatial reference, divided by 250.

Analysis cell size
Spline type (Optional)

The type of spline to be used.

  • REGULARIZED — Yields a smooth surface and smooth first derivatives.

  • TENSION — Tunes the stiffness of the interpolant according to the character of the modeled phenomenon.

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 of points (Optional)

The number of points per region used for local approximation.

The default is 12.

Long
Data types for geoprocessing tool parameters

Script Example

# Spline_sample.py 
# Description:
#   Interpolate a series of point features onto a rectangular 
#   raster using Spline interpolation.
# Requirements: None
# Author: ESRI
# Date: Sept 6, 2005

# Import system modules
import arcgisscripting

# Create the Geoprocessor object
gp = arcgisscripting.create()

try:
    # Set the output workspace name
    gp.Workspace = "C:/data"

    # Set the input feature dataset
    inputFeatureDataset = "C:/data/pts.shp"

    # Set the output raster name
    outputRaster = "spline1"

    # Set the output extent
    gp.Extent = "0 0 6 6"

    # Set the attribute field, cellsize, weight and number of points to use
    attributeName = "spot"
    cellSize = 1
    Weight = 0.1
    NoPointsToUse = 5

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

    # Process: Spline
    gp.Spline_sa(inputFeatureDataset, attributeName, outputRaster, cellSize, _ 
                  "REGULARIZED", Weight, NoPointsToUse)

except:
    # If an error occurred while running a tool, then print the messages
    print gp.GetMessages()

Map Algebra syntax

Spline(<point_cover | point_file>, {spot_item}, {REGULARIZED | TENSION}, {weight}, {num_points}, {cellsize}, {xmin, ymin, xmax, ymax})

Parameter Explanation
<point_cover | point_file> The input data source containing points with z-values to be interpolated onto a surface raster.
  • point_cover — A point coverage or shapefile with z-values stored in {spot_item}.
  • point_file — An ASCII file in the POINT format of GENERATE.
{spot_item} The item in the point coverage to be used as the z-value for the interpolation. The default is an item named Spot. Use the # symbol as a placeholder when the point locations are input using a <point_file>.
{REGULARIZED | TENSION} The method of Spline to be performed. There are two options:
  • REGULARIZED — Yields a smooth surface and smooth first derivatives.
  • TENSION — Tunes the stiffness of the interpolation according to the character of the modeled phenomenon.
{weight} 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 method is used, it defines the weight of tension. The default is 0.1.
{num_points} Number of points per region used for local approximation. The default is 12.
{cellsize} The width or height of a cell in map units. The default is the current cell size. The cell size must be specified in the analysis environment.
{xmin, ymin, xmax, ymax} The dimensions of the window in map units within which to perform the interpolation. The window defaults to the current environment settings. If no environment is set, the default is the boundary of the input point data source extended 0.5 times the cell size in each direction.

Map Algebra example

spline(samplepoints)			
spline(samplepoints, Concentration) 			
spline(samplepoints, #, #, 2, 10, 50)

ArcObjects syntax

IInterpolationOp::Spline (geoData As IGeodataset, splineType As esriGeoAnalysisSpliceEnum, [weight As Variant], [numPoints As Variant]) As IGeoDataset

Parameter Explanation
geoData A Featureclass or FeatureclassDescriptor containing point features with z-values to be interpolated to a raster surface.
splineType An esriGeoAnalysisSpliceEnum defining the method of Spline to be performed. There are two options:
  • esriGeoAnalysisRegularizedSpline — Yields a smooth surface and smooth first derivatives.
  • esriGeoAnalysisTensionSpline — Tunes the stiffness of the interpolation according to the character of the modeled phenomenon.
[weight] 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 method is used, it defines the weight of tension. When no weight is specified, the default is 0.1.
[numPoints] Number of points per region used for local approximation. When no numPoints is given, the Spline method will use 12.

ArcObjects example

' Create the RasterInterpolationOp object
Dim pInterpolationOp As IInterpolationOp
Set pInterpolationOp = New RasterInterpolationOp

' Declare the input feature class object
Dim pInputPoints As IGeoDataset

' Calls function to open a points dataset from disk
Set pInputPoints = OpenFeatureClassDataset ("D:\SpatialData", "inputsamples")

' Declare the output raster object
Dim pOutputRaster As IGeoDataset

' Calls the method
Set pOutputRaster = pInterpolationOp.Spline (pInputPoints, esriGeoAnalysisRegularizedSpline

See Also

  • IDW
  • Kriging
  • Natural Neighbor
  • Using the ArcGIS Spatial Analyst toolbar to create a surface using Spline interpolation
  • An overview of the Interpolation tools