## com.esri.arcgis.geoprocessing.tools.analyst3dtools Class Curvature

```java.lang.Object
com.esri.arcgis.geoprocessing.AbstractGPTool
com.esri.arcgis.geoprocessing.tools.analyst3dtools.Curvature
```
All Implemented Interfaces:
GPTool

`public class Curvatureextends AbstractGPTool`

Calculates the curvature of a raster surface, optionally including profile and plan curvature. The Curvature tool is contained in the 3D Analyst Tools tool box.

#### Usage tips:

• The primary output is the curvature of the surface on a cell-by-cell basis, as fitted through that cell and its eight surrounding neighbors. Curvature is the second derivative of the surface, or the slope-of-the-slope. Two optional output curvature types are possible: the profile curvature is in the direction of the maximum slope, and the plan curvature is perpendicular to the direction of the maximum slope.
• A positive curvature indicates the surface is upwardly convex at that cell. A negative curvature indicates the surface is upwardly concave at that cell. A value of 0 indicates the surface is flat.
• In the profile output, a negative value indicates the surface is upwardly convex at that cell. A positive profile indicates the surface is upwardly concave at that cell. A value of 0 indicates the surface is flat.
• In the plan output, a positive value indicates the surface is upwardly convex at that cell. A negative plan indicates the surface is upwardly concave at that cell. A value of 0 indicates the surface is flat.
• Units of the curvature output raster, as well as the units for the optional output profile curve raster and output plan curve raster, are one hundredth (1/100) of a z-unit. The reasonably expected values of all three output rasters for a hilly area (moderate relief) can vary from -0.5 to 0.5; while for steep, rugged mountains (extreme relief), the values can vary between -4 and 4.

Field Summary

Fields inherited from class com.esri.arcgis.geoprocessing.AbstractGPTool
`vals`

Constructor Summary
`Curvature()`
Creates the Curvature tool with defaults.
```Curvature(Object inRaster, Object outCurvatureRaster)```
Creates the Curvature tool with the required parameters.

Method Summary
` Object` `getInRaster()`
Returns the Input raster parameter of this tool .
` Object` `getOutCurvatureRaster()`
Returns the Output curvature raster parameter of this tool .
` Object` `getOutPlanCurveRaster()`
Returns the Output plan curve raster parameter of this tool .
` Object` `getOutProfileCurveRaster()`
Returns the Output profile curve raster parameter of this tool .
` String` `getToolboxAlias()`
Returns the alias of the tool box containing this tool.
` String` `getToolboxName()`
Returns the name of the tool box containing this tool.
` String` `getToolName()`
Returns the name of this tool.
` double` `getZFactor()`
Returns the Z factor parameter of this tool .
` void` `setInRaster(Object inRaster)`
Sets the Input raster parameter of this tool .
` void` `setOutCurvatureRaster(Object outCurvatureRaster)`
Sets the Output curvature raster parameter of this tool .
` void` `setOutPlanCurveRaster(Object outPlanCurveRaster)`
Sets the Output plan curve raster parameter of this tool .
` void` `setOutProfileCurveRaster(Object outProfileCurveRaster)`
Sets the Output profile curve raster parameter of this tool .
` void` `setZFactor(double zFactor)`
Sets the Z factor parameter of this tool .

Methods inherited from class com.esri.arcgis.geoprocessing.AbstractGPTool
`getParameterValues, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Curvature

`public Curvature()`
Creates the Curvature tool with defaults.

Initializes the array of tool parameters with the default values specified when the tool was created.

### Curvature

```public Curvature(Object inRaster,
Object outCurvatureRaster)```
Creates the Curvature tool with the required parameters.

Initializes the array of tool parameters with the values as specified for the required parameters and with the default values for the other parameters.

Parameters:
`inRaster` - the input surface raster.
`outCurvatureRaster` - the output curvature raster.
Method Detail

### getInRaster

`public Object getInRaster()`
Returns the Input raster parameter of this tool . This parameter is the input surface raster. This is a required parameter.

Returns:
the Input raster

### setInRaster

`public void setInRaster(Object inRaster)`
Sets the Input raster parameter of this tool . This parameter is the input surface raster. This is a required parameter.

Parameters:
`inRaster` - the input surface raster.

### getOutCurvatureRaster

`public Object getOutCurvatureRaster()`
Returns the Output curvature raster parameter of this tool . This parameter is the output curvature raster. This is a required parameter.

Returns:
the Output curvature raster

### setOutCurvatureRaster

`public void setOutCurvatureRaster(Object outCurvatureRaster)`
Sets the Output curvature raster parameter of this tool . This parameter is the output curvature raster. This is a required parameter.

Parameters:
`outCurvatureRaster` - the output curvature raster.

### getZFactor

`public double getZFactor()`
Returns the Z factor parameter of this tool . This parameter is number of ground x,y units in one surface z unit. the z-factor adjusts the units of measure for the z units when they are different from the x,y units of the input surface. The z-values of the input surface are multiplied by the z-factor when calculating the final output surface. if the x,y units and z units are in the same units of measure, the z-factor is 1. This is the default. if the x,y units and z units are in different units of measure, the z-factor must be set to the appropriate factor, or the results will be incorrect. For example, if your z units are feet and your x,y units are meters, you would use a z-factor of 0.3048 to convert your z units from feet to meters (1 foot = 0.3048 meter). This is an optional parameter.

Returns:
the Z factor

### setZFactor

`public void setZFactor(double zFactor)`
Sets the Z factor parameter of this tool . This parameter is number of ground x,y units in one surface z unit. the z-factor adjusts the units of measure for the z units when they are different from the x,y units of the input surface. The z-values of the input surface are multiplied by the z-factor when calculating the final output surface. if the x,y units and z units are in the same units of measure, the z-factor is 1. This is the default. if the x,y units and z units are in different units of measure, the z-factor must be set to the appropriate factor, or the results will be incorrect. For example, if your z units are feet and your x,y units are meters, you would use a z-factor of 0.3048 to convert your z units from feet to meters (1 foot = 0.3048 meter). This is an optional parameter.

Parameters:
`zFactor` - number of ground x,y units in one surface z unit. the z-factor adjusts the units of measure for the z units when they are different from the x,y units of the input surface. The z-values of the input surface are multiplied by the z-factor when calculating the final output surface. if the x,y units and z units are in the same units of measure, the z-factor is 1. This is the default. if the x,y units and z units are in different units of measure, the z-factor must be set to the appropriate factor, or the results will be incorrect. For example, if your z units are feet and your x,y units are meters, you would use a z-factor of 0.3048 to convert your z units from feet to meters (1 foot = 0.3048 meter).

### getOutProfileCurveRaster

`public Object getOutProfileCurveRaster()`
Returns the Output profile curve raster parameter of this tool . This parameter is output profile curve raster dataset. this is the curvature of the surface in the direction of slope. This is an optional parameter.

Returns:
the Output profile curve raster

### setOutProfileCurveRaster

`public void setOutProfileCurveRaster(Object outProfileCurveRaster)`
Sets the Output profile curve raster parameter of this tool . This parameter is output profile curve raster dataset. this is the curvature of the surface in the direction of slope. This is an optional parameter.

Parameters:
`outProfileCurveRaster` - output profile curve raster dataset. this is the curvature of the surface in the direction of slope.

### getOutPlanCurveRaster

`public Object getOutPlanCurveRaster()`
Returns the Output plan curve raster parameter of this tool . This parameter is output plan curve raster dataset. this is the curvature of the surface perpendicular to the slope direction. This is an optional parameter.

Returns:
the Output plan curve raster

### setOutPlanCurveRaster

`public void setOutPlanCurveRaster(Object outPlanCurveRaster)`
Sets the Output plan curve raster parameter of this tool . This parameter is output plan curve raster dataset. this is the curvature of the surface perpendicular to the slope direction. This is an optional parameter.

Parameters:
`outPlanCurveRaster` - output plan curve raster dataset. this is the curvature of the surface perpendicular to the slope direction.

### getToolName

`public String getToolName()`
Returns the name of this tool.

Returns:
the tool name

### getToolboxName

`public String getToolboxName()`
Returns the name of the tool box containing this tool.

Returns:
the tool box name

### getToolboxAlias

`public String getToolboxAlias()`
Returns the alias of the tool box containing this tool.

Returns:
the tool box alias