Raster To Multipoint (3D Analyst)
Summary
Converts raster cell centers into multipoint features whose Z values reflect the raster cell value.
Usage
This tool is intended for raster datasets that model surface properties, such as elevation.
-
This tool is useful for incorporating a raster DEM into points that can be used as ancillary data for creating a Terrain dataset or TIN.
All the cell centers can be converted, using the NO_THIN option, or one of several filters can be applied to exclude those cells that are less significant. The thinning options include ZTOLERANCE, KERNEL, and VIP.
- The ZTOLERANCE thinning method represents the maximum allowable difference (in z-units) between the height of the input raster and the height of the output multipoint feature class. By default, the Z tolerance is 1/10 of the z-range of the input raster. The larger the tolerance, the more thinning, and the fewer points output.
- The KERNEL thinning method defines the number of cells for a window. The default is 3, which translates into a 3 by 3 set of cells in the input raster. The individual cell values in each of these windows are evaluated. Then just one or two cells are chosen, depending on the KERNEL selection method. The larger the kernel size, the more thinning will be carried out, and the fewer points output.
- The VIP method is used to select a percentage of points from the input raster based on their significance. The significance is assessed using a roving 3 by 3 window. You can chose the VIP_HISTOGRAM option to write out a table to view the actual significance values and the corresponding number of points associated with those values.
-
Use the ZTOLERANCE thinning method when it is important to preserve vertical accuracy. Use the KERNEL thinning method when it is important to control the horizontal sample distance.
-
Consider applying a thinning method when converting from raster to multipoints. There are two thinning methods used to generate a new multipoint feature class: ZTOLERANCE and KERNEL. If NO_THIN is selected, the full resolution data will be output into a new multipoint feature class.
-
The VIP method is relatively fast, outputs a predictable number of points, and is good at selecting local peaks and pits. However, it is sensitive to noise and insensitive to topographic features that are larger than the 3 by 3 window.
Syntax
Parameter | Explanation | Data Type |
in_raster |
The input raster. | Raster Layer |
out_feature_class |
The output feature class. | Feature Class |
out_vip_table (Optional) |
The histogram table to be produced when VIP Histogram is specified for the Method parameter. | Table |
method (Optional) |
The thinning method applied to generate the multipoint feature class.
| String |
kernel_method (Optional) |
The selection method used for creating points when kernel thinning is specified in the Method parameter.
| String |
z_factor (Optional) |
The factor used for multiplying the elevation of the raster. Generally used to convert units between feet and meters. | Double |
Code Sample
The following sample demonstrates the use of this tool in the Python window:
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.RasterToMultipoint_3d("elevation.tif", "","elev_VIP.dbf", "VIP_HISTOGRAM", "", "1")
The following sample demonstrates the use of this tool in a stand-alone Python script:
'''*********************************************************************
Name: RasterToMultipoint Example
Description: This script demonstrates how to use
the RasterToMultipoint tool to create multipoint datasets
fot all IMG rasters in a target workspace.
**********************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions
try:
arcpy.CheckOutExtension("3D")
# Set default workspace
env.workspace = "C:/data"
# Create the list of IMG rasters
rasterList = arcpy.ListRasters("*", "IMG")
# Loop the process for each raster
if rasterList:
for raster in rasterList:
# Set Local Variables
# [:-4] strips the last 4 characters (.img) from the raster name
outTbl = "VIP_" + raster[:-4] + ".dbf"
method = "VIP_HISTOGRAM"
zfactor = 1
#Execute RasterToMultipoint
arcpy.ddd.RasterToMultipoint(raster, "",outTbl, method, "", zfactor)
else:
"There are no IMG rasters in the " + env.workspace + " directory."
except Exception as e:
# Returns any other error messages
print e.message