|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IRasterConvolutionFilter
Provides access to members that control a raster kernel-based filter.
IRasterConvolutionFilter provides access to members that allow setting up a convolution filter. PutCoefficients() and QueryCoefficients() sets and gets kernel coefficients, which are represented as a double array.
QueryCoefficients() expects the array to be allocated by caller, and it fills in the values.
The IRasterConvlutionFilter interface is used to create a convolution filter, which can be used to apply on a raster to perform image filtering. To create a convolution filter, the size, values and the center of the kernel must be set.
Here is an example of low pass filter kernel
Use SetSize, SetCenterPosition, and PutCoefficents to define a kernel.
IPixelOperation
,
IPixelFilterCollection
,
IPixelFilter
Method Summary | |
---|---|
void |
getCenterPosition(int[] atColumn,
int[] atRow)
Gets the center position of the kernel filter. |
double |
getGainFactor()
The gain factor of the kernel filter. |
void |
getSize(int[] nColumns,
int[] nRows)
Gets the size of the kernel filter. |
boolean |
isNormalized()
Indicates whether the filter is normalized. |
boolean |
isRecursive()
Indicates whether the filter is recursive. |
void |
normalize()
Normalizes the filter. |
void |
putCoefficients(double[][] coefList)
Sets the element coefficients of the kernel filter. |
void |
queryCoefficients(double[][] coefList)
Gets the element coefficients of the kernel filter. |
void |
scaleBy(double scaleFactor)
Scales the filter coefficients. |
void |
setCenterPosition(int atColumn,
int atRow)
Sets the center position of the kernel filter. |
void |
setGainFactor(double gainFactor)
The gain factor of the kernel filter. |
void |
setRecursive(boolean recursive)
Indicates whether the filter is recursive. |
void |
setSize(int nColumns,
int nRows)
Sets the size of the kernel filter. |
Method Detail |
---|
void setSize(int nColumns, int nRows) throws IOException, AutomationException
nColumns
- The nColumns (in)nRows
- The nRows (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void getSize(int[] nColumns, int[] nRows) throws IOException, AutomationException
nColumns
- The nColumns (in/out: use single element array)nRows
- The nRows (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void setCenterPosition(int atColumn, int atRow) throws IOException, AutomationException
atColumn
- The atColumn (in)atRow
- The atRow (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void getCenterPosition(int[] atColumn, int[] atRow) throws IOException, AutomationException
atColumn
- The atColumn (in/out: use single element array)atRow
- The atRow (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void putCoefficients(double[][] coefList) throws IOException, AutomationException
PutCoefficents takes a dimentional (1D) array (row * column of the kernel), then transforms automatically to a 2D array. The side of 2D array is defined by SetSize method.
size of 1D array = row * column of the kernel
coefList
- The coefList (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void queryCoefficients(double[][] coefList) throws IOException, AutomationException
coefList
- The coefList (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void setGainFactor(double gainFactor) throws IOException, AutomationException
gainFactor
- The gainFactor (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.double getGainFactor() throws IOException, AutomationException
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void setRecursive(boolean recursive) throws IOException, AutomationException
recursive
- The recursive (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.boolean isRecursive() throws IOException, AutomationException
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void normalize() throws IOException, AutomationException
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.boolean isNormalized() throws IOException, AutomationException
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void scaleBy(double scaleFactor) throws IOException, AutomationException
scaleFactor
- The scaleFactor (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |