|
|||||||||
| 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 | ||||||||