com.esri.arcgis.spatialanalyst
Class RasterGeneralizeOp

java.lang.Object
  extended by com.esri.arcgis.spatialanalyst.RasterGeneralizeOp
All Implemented Interfaces:
IGeoAnalysisEnvironment, IRasterAnalysisEnvironment, com.esri.arcgis.interop.RemoteObjRef, IGeneralizeOp, ISupportErrorInfo, Serializable

public class RasterGeneralizeOp
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IRasterAnalysisEnvironment, IGeneralizeOp, ISupportErrorInfo

A mechanism for performing simplifying operations on rasters.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
RasterGeneralizeOp()
          Constructs a RasterGeneralizeOp using ArcGIS Engine.
RasterGeneralizeOp(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
RasterGeneralizeOp theRasterGeneralizeOp = (RasterGeneralizeOp) obj;
 
Method Summary
 IGeoDataset aggregate(IGeoDataset raster, int cellFactor, int aggregationType, boolean expandExtent, boolean ignoreNoData)
          Generates a reduced resolution version of a raster.
 IGeoDataset boundaryClean(IGeoDataset raster, int sortType, boolean runTwice)
          Smoothes the boundary between zones by expanding and shrinking the boundary.
 boolean equals(Object o)
          Compare this object with another
 IGeoDataset expand(IGeoDataset raster, int numberCells, Object zoneList)
          Expands the selected zones by a specified number of cells.
 void getCellSize(int[] envType, double[] cellSize)
          Gets the type and value of cell size in the RasterAnalysis.
static String getClsid()
          getClsid.
 String getDefaultOutputRasterPrefix()
          The default output raster prefix.
 String getDefaultOutputVectorPrefix()
          The default output vector prefix.
 void getExtent(int[] envType, IEnvelope[] extent)
          Gets the type and values of extent in the RasterAnalysis.
 IGeoDataset getMask()
          Mask allows processing to occur only for a selected set of cells.
 ISpatialReference getOutSpatialReference()
          The output spatial reference of GeoAnalysis.
 IWorkspace getOutWorkspace()
          The output workspace of GeoAnalysis.
 int getVerifyType()
          The verify type of the RasterAnalysis.
 int hashCode()
          the hashcode for this object
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 IGeoDataset majorityFilter(IGeoDataset raster, boolean useDiagonalNeighbors, boolean halfIsMajority)
          Replaces cells based upon the majority of their contiguous neighboring cells.
 IGeoDataset nibble(IGeoDataset raster, IGeoDataset maskRaster, boolean useNoData)
          Replaces areas in a raster corresponding to a mask, with the values of the nearest neighbors.
 IGeoDataset regionGroup(IGeoDataset raster, boolean useDiagonalNeighbors, boolean withinZones, boolean createLinkField, Object excludedValue)
          Records for each cell in the output, the identity of the connected region to which it belongs.
 IGeoDataset resample(IGeoDataset raster, double newCellSize, int resampleType)
          Resamples the raster to a new cell size.
 void reset()
          Remove all previously stored default rasteranalysis environments.
 void restoreToPreviousDefaultEnvironment()
          Restores to the previous default raster analysis environment.
 void setAsNewDefaultEnvironment()
          Sets the raster analysis environment of the object as new default environment.
 void setCellSize(int envType, Object cellSizeProvider)
          Sets the type and value of cell size in the RasterAnalysis.
 void setDefaultOutputRasterPrefix(String rasterPrefix)
          The default output raster prefix.
 void setDefaultOutputVectorPrefix(String vectorPrefix)
          The default output vector prefix.
 void setExtent(int envType, Object extentProvider, Object snapRasterData)
          Sets the type and values of extent in the RasterAnalysis.
 void setMaskByRef(IGeoDataset mask)
          Mask allows processing to occur only for a selected set of cells.
 void setOutSpatialReferenceByRef(ISpatialReference spatialReference)
          The output spatial reference of GeoAnalysis.
 void setOutWorkspaceByRef(IWorkspace workspace)
          The output workspace of GeoAnalysis.
 void setVerifyType(int verifyType)
          The verify type of the RasterAnalysis.
 IGeoDataset shrink(IGeoDataset raster, int numberCells, Object zoneList)
          Shrinks the selected zones by a specified number of cells.
 IGeoDataset thin(IGeoDataset raster, boolean backgroundIsNoData, boolean filterData, boolean roundCorners, Object maxThickness)
          Thins rasterized linear features by reducing the number of pixels representing the width of the features.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

RasterGeneralizeOp

public RasterGeneralizeOp()
                   throws IOException,
                          UnknownHostException
Constructs a RasterGeneralizeOp using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

RasterGeneralizeOp

public RasterGeneralizeOp(Object obj)
                   throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
RasterGeneralizeOp theRasterGeneralizeOp = (RasterGeneralizeOp) obj;

Construct a RasterGeneralizeOp using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to RasterGeneralizeOp.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

setCellSize

public void setCellSize(int envType,
                        Object cellSizeProvider)
                 throws IOException,
                        AutomationException
Sets the type and value of cell size in the RasterAnalysis.

Remarks

envType

An enumeration type specifying the raster cellsize environment settings for analysis. All subsequent results will be to the value specified. It can be of type

esriRasterEnvMaxOf – The largest cell size of all input raster datasets that are specifed in the function. This is the default.

This option is not suitable for methods such as IInterpolationOp::IDW, IDensityOp:KernalDensity etc. where features are the only inputs. Use esriRasterEnvValue instead.

esriRasterEnvMinOf - Smallest cell size of all input raster datasets.

This option is not suitable for methods such as IInterpolationOp::IDW, IDensityOp:KernalDensity etc. where features are the only inputs. Use esriRasterEnvValue instead

esriRasterEnvValue - Any user specified value for the cell size.

Use this option to specify a particular value for a cell size or for methods such as IInterpolationOp::IDW, IDensityOp:KernalDensity etc. where features are the only input.

[cellSizeProvider]

A specified value (double) or RasterDataset that is used to provide the cellsize environment value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setCellSize in interface IRasterAnalysisEnvironment
Parameters:
envType - A com.esri.arcgis.geoanalyst.esriRasterEnvSettingEnum constant (in)
cellSizeProvider - A Variant (in, optional, pass null if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCellSize

public void getCellSize(int[] envType,
                        double[] cellSize)
                 throws IOException,
                        AutomationException
Gets the type and value of cell size in the RasterAnalysis.

Remarks

envType

will return an enumeration type constant specifying the raster cellsize environment settings for analysis. It can be of type

esriRasterEnvMaxOf - largest cell size of all input datasets. This is the default.

esriRasterEnvMinOf - smallest cell size of all input datasets

esriRasterEnvValue - User specified value.

cellsize

returns a value that specifying the current environment setting for cellsize

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCellSize in interface IRasterAnalysisEnvironment
Parameters:
envType - A com.esri.arcgis.geoanalyst.esriRasterEnvSettingEnum constant (out: use single element array)
cellSize - The cellSize (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExtent

public void setExtent(int envType,
                      Object extentProvider,
                      Object snapRasterData)
               throws IOException,
                      AutomationException
Sets the type and values of extent in the RasterAnalysis.

Remarks

envType

An enumeration type specifying the raster extent environment settings for analysis. All subsequent results will be to this extent. It can be of type

esriRasterEnvMinOf – Intersection of Inputs - All input feature extents are intersected and the extent common to all is used as the extent values for the study area. This is the default.

esriRasterEnvMaxOf - Union of Inputs - All input feature extents are combined and the outer extent of the union is used.

esriRasterEnvValue - Value - User specified values for the Left, Right, Top and Bottom extent (x, y values) of the study area.

[extentProvider]

An envelope object supporting IEnvelope interface or RasterDataset that is used to provide the environment values of the analysis extent.

[snapRasterData]

A RasterDataset that can be used to snap all output raster datasets to the cell registration of the specified raster. All subsequent results will share the lower-left corner and cell size of the specified raster.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setExtent in interface IRasterAnalysisEnvironment
Parameters:
envType - A com.esri.arcgis.geoanalyst.esriRasterEnvSettingEnum constant (in)
extentProvider - A Variant (in, optional, pass null if not required)
snapRasterData - A Variant (in, optional, pass null if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExtent

public void getExtent(int[] envType,
                      IEnvelope[] extent)
               throws IOException,
                      AutomationException
Gets the type and values of extent in the RasterAnalysis.

Remarks

envType

will return an enumeration constant specifying the raster extent environment settings for analysis. It can be of type,

esriRasterEnvMinOf – Intersection of Inputs - All input feature extents are intersected and the extent common to all is used as the extent values for the study area. This is the default.

esriRasterEnvMaxOf - Union of Inputs - All input feature extents are combined and the outer extent of the union is used.

esriRasterEnvValue - Value - User specified values for the Left, Right, Top and Bottom extent (x, y values) of the study area.

extent

An envelope object supporting IEnvelope interface used to describe the values of the analysis extent.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExtent in interface IRasterAnalysisEnvironment
Parameters:
envType - A com.esri.arcgis.geoanalyst.esriRasterEnvSettingEnum constant (out: use single element array)
extent - A reference to a com.esri.arcgis.geometry.IEnvelope (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMaskByRef

public void setMaskByRef(IGeoDataset mask)
                  throws IOException,
                         AutomationException
Mask allows processing to occur only for a selected set of cells.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMaskByRef in interface IRasterAnalysisEnvironment
Parameters:
mask - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMask

public IGeoDataset getMask()
                    throws IOException,
                           AutomationException
Mask allows processing to occur only for a selected set of cells.

Remarks

The mask can be a reference to a Raster, RasterDataset, RasterBand, or RasterDescriptor object or FeatureClass, FeatureClassDescriptor object.

The mask identifies only those cells within the analysis extent that will be considered when performing an action. Only the identified cells will be processed in subsequent output raster datasets. All other cells are characterized as nodata.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMask in interface IRasterAnalysisEnvironment
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setVerifyType

public void setVerifyType(int verifyType)
                   throws IOException,
                          AutomationException
The verify type of the RasterAnalysis.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setVerifyType in interface IRasterAnalysisEnvironment
Parameters:
verifyType - A com.esri.arcgis.geoanalyst.esriRasterVerifyEnum constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVerifyType

public int getVerifyType()
                  throws IOException,
                         AutomationException
The verify type of the RasterAnalysis.

Remarks

The value is an enumeration environment setting that contols the way that an output RasterDatasets are written to file when during analysis. The verify enumeration can be of type

esriRasterEnvVerifyOn - specifies that the user will be prompted to verify the output already exists and it is okay to overwrite it

esriRasterEnvVerifyOff - specifies that output data will be automatically overwritten if already exists. This is the default environment setting.

esriRasterEnvVerifyError - specifies that an error will be produced when the output already exists.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getVerifyType in interface IRasterAnalysisEnvironment
Returns:
A com.esri.arcgis.geoanalyst.esriRasterVerifyEnum constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultOutputRasterPrefix

public String getDefaultOutputRasterPrefix()
                                    throws IOException,
                                           AutomationException
The default output raster prefix.

Remarks

The user specified prefix which is included to all temporary output RasterDatasets during analysis.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDefaultOutputRasterPrefix in interface IRasterAnalysisEnvironment
Returns:
The rasterPrefix
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultOutputRasterPrefix

public void setDefaultOutputRasterPrefix(String rasterPrefix)
                                  throws IOException,
                                         AutomationException
The default output raster prefix.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDefaultOutputRasterPrefix in interface IRasterAnalysisEnvironment
Parameters:
rasterPrefix - The rasterPrefix (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultOutputVectorPrefix

public String getDefaultOutputVectorPrefix()
                                    throws IOException,
                                           AutomationException
The default output vector prefix.

Remarks

The user specified prefix which is included to all temporary output Shapefiles during analysis.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDefaultOutputVectorPrefix in interface IRasterAnalysisEnvironment
Returns:
The vectorPrefix
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultOutputVectorPrefix

public void setDefaultOutputVectorPrefix(String vectorPrefix)
                                  throws IOException,
                                         AutomationException
The default output vector prefix.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDefaultOutputVectorPrefix in interface IRasterAnalysisEnvironment
Parameters:
vectorPrefix - The vectorPrefix (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAsNewDefaultEnvironment

public void setAsNewDefaultEnvironment()
                                throws IOException,
                                       AutomationException
Sets the raster analysis environment of the object as new default environment.

Remarks

Will set all current environment settings of the RasterAnalysis object as the new default environment. All subsequent analysis will use the set object properties unless otherwise specified.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAsNewDefaultEnvironment in interface IRasterAnalysisEnvironment
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

restoreToPreviousDefaultEnvironment

public void restoreToPreviousDefaultEnvironment()
                                         throws IOException,
                                                AutomationException
Restores to the previous default raster analysis environment.

Remarks

This will restore the default environment to the settings of the "previous" RasterAnalysisEnvironment object used to set the default environement. Note: If multiple default environments have been set it will reference the past settings one at a time in order of sequence.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
restoreToPreviousDefaultEnvironment in interface IRasterAnalysisEnvironment
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

reset

public void reset()
           throws IOException,
                  AutomationException
Remove all previously stored default rasteranalysis environments.

Remarks

This method can be used to restore the system default raster environment settings for extent, cell size, precision, spatial reference and/or current workspace for analysis. This will change all previously altered environment settings made to the RasterAnlaysis object back to the original settings.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
reset in interface IRasterAnalysisEnvironment
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOutWorkspaceByRef

public void setOutWorkspaceByRef(IWorkspace workspace)
                          throws IOException,
                                 AutomationException
The output workspace of GeoAnalysis.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setOutWorkspaceByRef in interface IGeoAnalysisEnvironment
Parameters:
workspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getOutWorkspace

public IWorkspace getOutWorkspace()
                           throws IOException,
                                  AutomationException
The output workspace of GeoAnalysis.

Remarks

The variable is an object specifying the directory or subdirectory to contain the output rasterdataset

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getOutWorkspace in interface IGeoAnalysisEnvironment
Returns:
A reference to a com.esri.arcgis.geodatabase.IWorkspace
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOutSpatialReferenceByRef

public void setOutSpatialReferenceByRef(ISpatialReference spatialReference)
                                 throws IOException,
                                        AutomationException
The output spatial reference of GeoAnalysis.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setOutSpatialReferenceByRef in interface IGeoAnalysisEnvironment
Parameters:
spatialReference - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getOutSpatialReference

public ISpatialReference getOutSpatialReference()
                                         throws IOException,
                                                AutomationException
The output spatial reference of GeoAnalysis.

Remarks

The variable references an object that specifies the output features spatial reference. If not explicitly set the spatial reference of the input features will be used.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getOutSpatialReference in interface IGeoAnalysisEnvironment
Returns:
A reference to a com.esri.arcgis.geometry.ISpatialReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

aggregate

public IGeoDataset aggregate(IGeoDataset raster,
                             int cellFactor,
                             int aggregationType,
                             boolean expandExtent,
                             boolean ignoreNoData)
                      throws IOException,
                             AutomationException
Generates a reduced resolution version of a raster.

Remarks

raster

an input Raster, RasterDataset, RasterBand, or RasterDescriptor

cellFactor

a factor to multiply the cell size of the input Raster to obtain the desired resolution for the output Raster

A cellFactor of 3 would result in an output cell size that is three times larger than the input raster’s cell size. The cellFactor must be an integer greater than one.

aggregationType

establishes how the value for each output cell will be determined

The output value for each cell can be the sum (esriGeoAnalysisStatsSum), minimum (esriGeoAnalysisStatsMinimum), maximum (esriGeoAnalysisStatsMaximum), mean (esriGeoAnalysisStatsMean), or median (esriGeoAnalysisStatsMedian) value of the input cells that the coarser output cell will encompass.

expandExtent

a Boolean defining how to handle the boundaries of the input raster when its rows and/or columns are not a multiple of the cellFactor

If the number of rows and columns in the input raster is a multiple of the cellFactor this Boolean will not be applied.

A True for the Boolean will expand the bottom and/or right boundaries of the input raster so that the total number of cells in a row and/or column is a multiple of the cellFactor. Expanded cells are given a value of NoData. With a True Boolean, the output raster can cover a larger spatial extent than the input raster.

A False for the Boolean will reduce the number of rows and/or columns in the output raster by one. This will truncate the remaining cells on the bottom and/or right boundaries of the input raster, making the number of rows and/or columns in the input raster a multiple of the cellFactor. With this option, the output raster can cover a smaller spatial extent than the input raster.

ignoreNoData

a Boolean that if True dictates that if a NoData value exists for any of the cells that fall within the spatial extent of a larger cell on the output raster, then the NoData value will be ignored when determining the value for that output cell location

Only input cells within the output cell’s extent that have data values will be used in determining the value of the output cell.

If False, then any cell that falls within the spatial extent of a larger cell on the output raster that has a value of NoData, the value for that output cell location will be NoData. When the Boolean is True, it is implied that when cells within an aggregation contain the NoData value, there is insufficient information to perform the specified calculations necessary to determine an output value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
aggregate in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
cellFactor - The cellFactor (in)
aggregationType - A com.esri.arcgis.geoanalyst.esriGeoAnalysisStatisticsEnum constant (in)
expandExtent - The expandExtent (in)
ignoreNoData - The ignoreNoData (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

boundaryClean

public IGeoDataset boundaryClean(IGeoDataset raster,
                                 int sortType,
                                 boolean runTwice)
                          throws IOException,
                                 AutomationException
Smoothes the boundary between zones by expanding and shrinking the boundary.

Remarks

raster

an input Raster, RasterDataset, RasterBand, or RasterDescriptor

sortType

specifies the type of sorting. This determines the priority of the cells to expand into their neighbors. There are three different ways to sort, esriGeoAnalysisSortAscending, esriGeoAnalysisSortDescending, and esriGeoAnalysisSortNone.

esriGeoAnalysisSortAscending sorts zones in ascending order by size. Zones with smaller total areas have a higher priority to expand into zones with] larger total areas.

esriGeoAnalysisSortDesending sorts zones in descending order by size. Zones with larger total areas have a higher priority to expand into zones with smaller total areas.

esriGeoAnalysisSortNone does no sorting by size. Zones with larger values have a higher priority to expand into zones with smaller values.

runTwice

a Boolean that specifies the number of directions in which the expansion and shrinking will take place.

If True, the expansion and shrinking is performed according to the sorting type, then does an additional shrinking and expansion with the priority reversed.

If False, the expansion and shrinking is performed once, according to sorting type.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
boundaryClean in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
sortType - A com.esri.arcgis.spatialanalyst.esriGeoAnalysisSortEnum constant (in)
runTwice - The runTwice (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

expand

public IGeoDataset expand(IGeoDataset raster,
                          int numberCells,
                          Object zoneList)
                   throws IOException,
                          AutomationException
Expands the selected zones by a specified number of cells.

Remarks

geoDataset

an input Raster, RasterDataset, RasterBand, or RasterDescriptor

numberCellst

the number of cells to expand each selected zone

zoneList

a listing of values (array of type long) from the table of the input raster indicating the zones to select. The default field is Value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
expand in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
numberCells - The numberCells (in)
zoneList - A Variant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

majorityFilter

public IGeoDataset majorityFilter(IGeoDataset raster,
                                  boolean useDiagonalNeighbors,
                                  boolean halfIsMajority)
                           throws IOException,
                                  AutomationException
Replaces cells based upon the majority of their contiguous neighboring cells.

Remarks

raster

an input Raster, RasterDataset, RasterBand, or RasterDescriptor

useDiagonalNeighbors

a Boolean specifying the number of cells in the filter kernel

If True, then the kernel of the filter will be the eight nearest neighbors (a 3-by-3 window) to the present cell.

If False, then the kernel of the filter will be the four direct (orthogonal) neighbors to the present cell. This is the default.

halfIsMajority

a Boolean specifying the number of contiguous (spatially connected) cells that must be of the same value before a replacement will occur

If True, half of the cells must have the same value and be contiguous. Two out of four or four out of eight connected cells must have the same value. Half will have more of a smoothing effect.

If False, a majority of cells must have the same value and be contiguous. Three out of four or five out of eight connected cells must have the same value. This is the default.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
majorityFilter in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
useDiagonalNeighbors - The useDiagonalNeighbors (in)
halfIsMajority - The halfIsMajority (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

nibble

public IGeoDataset nibble(IGeoDataset raster,
                          IGeoDataset maskRaster,
                          boolean useNoData)
                   throws IOException,
                          AutomationException
Replaces areas in a raster corresponding to a mask, with the values of the nearest neighbors.

Remarks

raster

an input Raster dataset

maskRaster

the name of a Raster to be used as the mask. Cells with NoData as their value will be nibbled in the first input raster

useNoData

Boolean defining if NoData values in the raster are allowed to nibble into the area defined by the maskRaster

If True, then the nearest neighbor value will be used whether it is NoData or another data value in the first input raster. NoData values in the first input raster are free to nibble into areas defined in the maskRaster if they are the nearest neighbor.

If False, then only data values are free to nibble into areas defined in the maskRaster. NoData values in the first input raster are not allowed to nibble into areas defined in the maskRaster even if they are the nearest neighbor.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
nibble in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
maskRaster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
useNoData - The useNoData (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

regionGroup

public IGeoDataset regionGroup(IGeoDataset raster,
                               boolean useDiagonalNeighbors,
                               boolean withinZones,
                               boolean createLinkField,
                               Object excludedValue)
                        throws IOException,
                               AutomationException
Records for each cell in the output, the identity of the connected region to which it belongs.

Remarks

raster

An input Raster, RasterDataset, RasterBand, or RasterDescriptor whose cells define the zone values to be regrouped

useDiagonalNeighbors

Defines the manner in which to evaluate connectivity between cells

If True, the connectivity between cells of the same value if they are within the immediate eight-cell neighborhood (eight nearest neighbors) of each other will be used. This includes if they are to the right or left, above or below, or are diagonal to each other.

If False, the connectivity between cells of the same value only if the cells are directly to the right or left, or above or below each other—the four nearest neighbors will be used. If two cells with the same value are diagonal from one another, they are not considered connected

withinZones

Defines the requirement of which cell values should be considered when testing for connectivity

If True, will test for the connectivity between input values that are the same within the same zone. The only cells that can be grouped are cells from the same zone (the same value) and that meet the spatial requirements of connectivity specified by useDiagonalNeighbors Boolean.

If False, will test the connectivity by the spatial requirements specified by the useDiagonalNeighbors Boolean between cells with any values except for the excluded value identified by the argument excludedValue if one is specified. A value for the excludedValue argument must be input when withinZones Boolean is False.

createLinkField

Defines if a Link item is added to the value attribute table of the output Raster

If True, an item Link will be added to the table of the output Raster. The Link item stores the original values for each newly created zone (created from disconnected regions) from the input Raster before they were regrouped.

If False, the table for the output Raster will only contain the items Value and Count.

[excludedValue]

Identifies a value such that if a cell location contains the value, no spatial connectivity will be evaluated no matter what the Boolean is for the useDiagonalNeighbors

Cells with the excluded value will be treated as NoData and are eliminated from calculations. Cell locations that contain an excluded value will receive zero for the location on the output Raster. The excluded value is similar to the concept of a background value or setting a mask for a single function with the Options dialog. It is particularly useful in conjunction with a False value for within Zones.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
regionGroup in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
useDiagonalNeighbors - The useDiagonalNeighbors (in)
withinZones - The withinZones (in)
createLinkField - The createLinkField (in)
excludedValue - A Variant (in, optional, pass null if not required)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

resample

public IGeoDataset resample(IGeoDataset raster,
                            double newCellSize,
                            int resampleType)
                     throws IOException,
                            AutomationException
Resamples the raster to a new cell size.

Remarks

raster

an input Raster, RasterDataset, RasterBand, or RasterDescriptor whose cells define the zone values to be regrouped

newCellSize

ouput cellsize. The default is the current environment setting.

ResampleType

An esriGeoAnalysisResampleEnum specifing the resampling algorithm to be used when sampling a Raster

See 'How it works' for a full description of the resampling methods.

esriGeoAnalysisResampleBilinear bilinear interpolation

esriGeoAnalysisResampleCubic cubic convolution

esriGeoAnalysisResampleNearest nearest neighbor assignment

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
resample in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
newCellSize - The newCellSize (in)
resampleType - A com.esri.arcgis.geoanalyst.esriGeoAnalysisResampleEnum constant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

shrink

public IGeoDataset shrink(IGeoDataset raster,
                          int numberCells,
                          Object zoneList)
                   throws IOException,
                          AutomationException
Shrinks the selected zones by a specified number of cells.

Remarks

raster

An input Raster, RasterDataset, RasterBand, or RasterDescriptor

numberCells

The number of cells to shrink each selected zone

zoneList

A listing of values (array of type long) from the table of the input raster indicating the zones to select. The default field is Value.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
shrink in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
numberCells - The numberCells (in)
zoneList - A Variant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

thin

public IGeoDataset thin(IGeoDataset raster,
                        boolean backgroundIsNoData,
                        boolean filterData,
                        boolean roundCorners,
                        Object maxThickness)
                 throws IOException,
                        AutomationException
Thins rasterized linear features by reducing the number of pixels representing the width of the features.

Remarks

raster

an input Raster, RasterDataset, RasterBand, or RasterDescriptor to be thinned

BackgroundIsNoData

a Boolean that specifies the cell values that will identify the foreground cells

The Raster is viewed as a set of foreground cells and background cells. Foreground cells form the linear features to be converted to vectors.

If True, all cells with valid values belong to the foreground. All cells whose Value is NoData belong to the background.

If False, all cells whose Value is greater than zero belong to the foreground. All cells whose Value is less or equal to zero or NoData will belong to the background.

filterData

specifies whether or not a filter will be applied as the first phase of thinning

If True, the Raster will be filtered to smooth the boundaries between foreground and background cells.

This option will eliminate minor irregularities from the out Raster. If False, no filter will be applied.

roundCorners

a Boolean that specifies whether round or sharp turns will be made at turns or junctions

It is also used during the vector conversion process to spline curves or create sharp intersections and corners.

If True, attempts to smooth corners and junctions. This is best for vectorizing natural features such as contours or streams.

If False, attempts to preserve rectangular corners and junctions. This is best for vectorizing man-made features such as streets.

[maxThickness]

the maximum thickness, in map units, of linear features in the input grid

A commonly used thickness is 10 times the cell size.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Spatial Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
thin in interface IGeneralizeOp
Parameters:
raster - A reference to a com.esri.arcgis.geodatabase.IGeoDataset (in)
backgroundIsNoData - The backgroundIsNoData (in)
filterData - The filterData (in)
roundCorners - The roundCorners (in)
maxThickness - A Variant (in, optional, pass null if not required)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeoDataset
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws IOException,
                                       AutomationException
interfaceSupportsErrorInfo

Description

Indicates whether the interface supports IErrorInfo.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.