com.esri.arcgis.datasourcesraster
Class HistogramSpecification

java.lang.Object
  extended by com.esri.arcgis.datasourcesraster.HistogramSpecification
All Implemented Interfaces:
IHistogramSpecification, IPixelFilter, IStockFrequencyDistributionHistogram, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class HistogramSpecification
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IHistogramSpecification, IStockFrequencyDistributionHistogram, IPixelFilter

A class for histogram specification.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
HistogramSpecification()
          Constructs a HistogramSpecification using ArcGIS Engine.
HistogramSpecification(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
HistogramSpecification theHistogramSpecification = (HistogramSpecification) obj;
 
Method Summary
 boolean equals(Object o)
          Compare this object with another
 void filter(IPixelBlock pBlock)
          Filters a pixel block.
 void getCenterPosition(int[] atColumn, int[] atRow)
          Gets center position of the filter.
static String getClsid()
          getClsid.
 IArray getInputHistogram()
          The collection of histograms that describe the distribution of input values.
 Object getLookup(int iBand)
          Returns the look-up array for the requested band for remapping pixel values.
 IRasterHistogram getNormalDistribution(int nBins, double mean, double stdDev)
          Returns a histogram containing a specified number of bins describing a normal/gaussian distribution with a specified mean and standard deviation.
 void getSize(int[] columns, int[] rows)
          Gets dimension of the filter.
 IArray getTargetHistogram()
          The collection of target histograms that describe the desired distribution of output values.
 IRasterHistogram getUniformDistribution(int nBins)
          Returns a histogram containing a specified number of bins describing a uniform distribution.
 int hashCode()
          the hashcode for this object
 void setInputHistogramByRef(IArray ppInputHistograms)
          The collection of histograms that describe the distribution of input values.
 void setTargetHistogramByRef(IArray ppTargetHistograms)
          The collection of target histograms that describe the desired distribution of output values.
 void update()
          Recalculates the look-up that maps input values -- having a distribution described by the input histograms -- to output values that have a distribution described by the target histograms.
 
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

HistogramSpecification

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

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

HistogramSpecification

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

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

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

setInputHistogramByRef

public void setInputHistogramByRef(IArray ppInputHistograms)
                            throws IOException,
                                   AutomationException
The collection of histograms that describe the distribution of input values.

Product Availability

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

Specified by:
setInputHistogramByRef in interface IHistogramSpecification
Parameters:
ppInputHistograms - A reference to a com.esri.arcgis.system.IArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInputHistogram

public IArray getInputHistogram()
                         throws IOException,
                                AutomationException
The collection of histograms that describe the distribution of input values.

Product Availability

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

Specified by:
getInputHistogram in interface IHistogramSpecification
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTargetHistogramByRef

public void setTargetHistogramByRef(IArray ppTargetHistograms)
                             throws IOException,
                                    AutomationException
The collection of target histograms that describe the desired distribution of output values. These are the histograms to which each input histogram is matched.

Product Availability

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

Specified by:
setTargetHistogramByRef in interface IHistogramSpecification
Parameters:
ppTargetHistograms - A reference to a com.esri.arcgis.system.IArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTargetHistogram

public IArray getTargetHistogram()
                          throws IOException,
                                 AutomationException
The collection of target histograms that describe the desired distribution of output values. These are the histograms to which each input histogram is matched.

Product Availability

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

Specified by:
getTargetHistogram in interface IHistogramSpecification
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

update

public void update()
            throws IOException,
                   AutomationException
Recalculates the look-up that maps input values -- having a distribution described by the input histograms -- to output values that have a distribution described by the target histograms.

Product Availability

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

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

getLookup

public Object getLookup(int iBand)
                 throws IOException,
                        AutomationException
Returns the look-up array for the requested band for remapping pixel values.

Product Availability

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

Specified by:
getLookup in interface IHistogramSpecification
Parameters:
iBand - The iBand (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNormalDistribution

public IRasterHistogram getNormalDistribution(int nBins,
                                              double mean,
                                              double stdDev)
                                       throws IOException,
                                              AutomationException
Returns a histogram containing a specified number of bins describing a normal/gaussian distribution with a specified mean and standard deviation.

Product Availability

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

Specified by:
getNormalDistribution in interface IStockFrequencyDistributionHistogram
Parameters:
nBins - The nBins (in)
mean - The mean (in)
stdDev - The stdDev (in)
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterHistogram
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getUniformDistribution

public IRasterHistogram getUniformDistribution(int nBins)
                                        throws IOException,
                                               AutomationException
Returns a histogram containing a specified number of bins describing a uniform distribution.

Product Availability

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

Specified by:
getUniformDistribution in interface IStockFrequencyDistributionHistogram
Parameters:
nBins - The nBins (in)
Returns:
A reference to a com.esri.arcgis.datasourcesraster.IRasterHistogram
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSize

public void getSize(int[] columns,
                    int[] rows)
             throws IOException,
                    AutomationException
Gets dimension of the filter.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSize in interface IPixelFilter
Parameters:
columns - The columns (in/out: use single element array)
rows - The rows (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCenterPosition

public void getCenterPosition(int[] atColumn,
                              int[] atRow)
                       throws IOException,
                              AutomationException
Gets center position of the filter.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCenterPosition in interface IPixelFilter
Parameters:
atColumn - The atColumn (in/out: use single element array)
atRow - The atRow (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

filter

public void filter(IPixelBlock pBlock)
            throws IOException,
                   AutomationException
Filters a pixel block.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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