|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--picture.DefaultTransformation | +--picture.filter.PassFilter
Diese Klasse erlaubt die Filterung von Layer-Objekten mit Hoch-, Tief- und Bandpassfiltern. Zusaetzlich ist die Verwendung allgemeiner Filterfunktionen sowie die Verwendung von Filterdateien moeglich.
Field Summary | |
static int |
BANDPASSFILTER
Kennzeichnet einen Bandpassfilter |
static int |
FILE
Kennzeichnet die Verwendung einer Filterdatei |
static int |
HIGHPASSFILTER
Kennzeichnet einen Hochpassfilter |
static int |
LOWPASSFILTER
Kennzeichnet einen Tiefpassfilter |
static int |
TERM
Kennzeichnet die Verwendung einer Filterfunktion |
Constructor Summary | |
PassFilter(double min,
double max)
Erzeugt einen neuen Bandpassfilter mit den angegebenen Grenzen Die Werte min und max sollten zwischen 0 und 1 liegen. |
|
PassFilter(int mode)
Erzeugt einen neuen Filter. |
|
PassFilter(Picture picture)
Erzeugt einen neuen Passfilter mit der durch das angegebene PictureModel definierte Filterfunktion. |
|
PassFilter(Term t)
Erzeugt einen neuen Passfilter mit der angegebenen Filterfunktion. |
Method Summary | |
FilterPicture |
createFilterPicture(int width,
int height)
erzeugt ein PGM-Bild der Groesse width x height, das den aktuell gesetzten Optionen dieses Objekts entspricht. |
DialogPane |
filterOptionPane(javax.swing.JFrame owner,
Picture pic)
Liefert einen Optionendialog zurück. |
double[] |
getBounds()
Gibt Ober- und Untergrenze zurueck, die fuer Band- Tief- und Hochpassfilter verwendet werden. |
Term |
getFunction()
falls der aktuelle Modus TERM ist, gibt diese Methode die Filterfunktion zurueck, die angegeben wurde. |
int |
getMode()
Gibt den aktuellen Modus zurueck. |
int |
getNumberOfProgressSteps(Picture p)
Bestimmt die Anzahl der Schritte, die bei den aktuellen Einstellungen auf den ProgressHandler von p ausgeführt werden, wenn diese Transformation auf p ausgeführt wird. |
Picture |
getPicture()
Falls der aktuelle Modus FILE ist, gibt diese Methode das PictureModel zurueck, mit dem gefiltert wird. |
boolean |
isGraduell()
gibt an, ob dieser Filter graduell ist. |
Picture |
of(Picture p)
Jagt das Bild p durch diesen Filter und gibt das Ergebnis zurueck. |
Layer |
of(ProgressHandler ph,
Layer p)
Fuehrt die Transformation auf einer Bildebene aus. |
void |
setBounds(double min,
double max)
Setzt Unter- und Obergrenze, wie sie fuer einen Bandpassfilter verwendet werden. |
void |
setFunction(Term t)
Legt die Filterfunktion fest. |
void |
setGraduell(boolean b)
Legt fest, ob die Filterung im Falle von Band-, Tief- oder Hochpassfiltern graduell sein soll oder nicht. |
void |
setMode(int mode)
Legt den Modus fest. |
void |
setPicture(Picture picture)
Legt das PictureModel fest, das zur impliziten Definition der Filterfunktion herangezogen werden soll. |
Methods inherited from class picture.DefaultTransformation |
createNewInstance, getDistance, getPreferredFileName, isPowerOfTwo, loadFrom, saveTo |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final int BANDPASSFILTER
public static final int HIGHPASSFILTER
public static final int LOWPASSFILTER
public static final int FILE
public static final int TERM
Constructor Detail |
public PassFilter(int mode) throws java.lang.IllegalArgumentException
mode:
- eins von BANDPASSFILTER, HIGHPASSFILTER, LOWASSFILTER.IllegalArgumentException,
- falls mode nicht einen der oben genannten Werte hat.public PassFilter(double min, double max)
min
- Untergrenzemax
- Obergrenzepublic PassFilter(Picture picture)
picture:
- implizit gegebene Filterfunktionpublic PassFilter(Term t)
Method Detail |
public void setBounds(double min, double max)
public double[] getBounds()
public void setMode(int mode) throws java.lang.IllegalArgumentException
mode:
- eins von BANDPASSFILTER, LOWPASSFILTER, HIGHPASSFILTER.IllegalArgumentException,
- falls mode keinen der oben genannten Werte hat.public int getMode()
public void setPicture(Picture picture)
public Picture getPicture()
public void setFunction(Term t)
public Term getFunction()
public void setGraduell(boolean b)
public boolean isGraduell()
public FilterPicture createFilterPicture(int width, int height) throws PictureException
public int getNumberOfProgressSteps(Picture p)
ProgressViewableTransformation
picture.ProgressViewableTransformation
public Picture of(Picture p) throws PictureException
PassFilter(int, double, double)erzeugt und anschliessend die Methode
setFunction(Term)ausgefuehrt, so wird zur Filterung der in der Methode setFunction angegebene Term verwendet. Ein Sonderfall ist die Methode setBounds. Diese setzt die Filterart stets auf Bandpassfilter. Wuenscht man jedoch eine andere Filterart, so steht dafuer die Methode setMode zur Verfuegung, mit der Tief- und Hochpassfilter eingestellt werden koennen.
Die Filterung ist wie folgt definiert: Es sei f das Bild, das nach der oben beschriebenen Art erzeugt wurde und p das zu filternde Bild. Dann liefert diese Funktion das Bild
Diese Methode unterstuetzt den ProgressHandler-Mechanismus der Klasse Layer mit 4 * p.getWidth() Events.
of
in class DefaultTransformation
p
- QuellbildPictureException
- z.B. wenn die Filterfunktion ungueltig ist.public Layer of(ProgressHandler ph, Layer p) throws PictureException
DefaultTransformation
of
in class DefaultTransformation
public DialogPane filterOptionPane(javax.swing.JFrame owner, Picture pic) throws PictureException
filterOptionPane
in class DefaultTransformation
owner
- Parentframepic
- zu berbeitendes Bild
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |