Weitere aktuelle Java-Titel finden Sie bei dpunkt.
 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Klasse java.awt.image.RGBImageFilter1.0

java.lang.Object
   |
   +--java.awt.image.ImageFilter
         |
         +--java.awt.image.RGBImageFilter

Deklaration

public abstract class RGBImageFilter
extends java.awt.image.ImageFilter

Beschreibung

Der RGBImageFilter dient zur einfachen Filterung von Bildern, die im RGB-Farbmodell vorliegen. Zur Implementierung braucht lediglich die Methode filterRGB() in einer Unterklasse überschrieben zu werden. Zusätzlich ist es möglich, mit substituteColorModel() das Farbmodell durch ein anderes zu ersetzen.


 
Datenelemente
protected ColorModelorigmodel
protected ColorModelnewmodel
protected booleancanFilterIndexColorModel
 
Methoden
public IndexColorModelfilterIndexColorModel(IndexColorModel icm)
public abstract intfilterRGB(int x, int y, int rgb)
public voidfilterRGBPixels(int x, int y, int w, int h, int[] pixels, int off, int scansize)
public voidsetColorModel(ColorModel model)
public voidsetPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)
public voidsetPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)
public voidsubstituteColorModel(ColorModel oldcm, ColorModel newcm)


 

Datenelemente im Detail

protected ColorModel origmodel
Das ursprüngliche Farbmodell.
protected ColorModel newmodel
Das neue Farbmodell.
protected boolean canFilterIndexColorModel
Dieses Element sollte in einer Unterklasse auf true gesetzt werden, wenn die Filterung nicht von der Position des Pixels abhängt.

 

Methoden im Detail

public IndexColorModel filterIndexColorModel(IndexColorModel icm)
Filtert das IndexColorModel icm, indem die filterRGB-Methode nacheinander auf alle Tabelleneinträge angewendet wird. Hierbei werden beide Koordinaten auf -1 gesetzt, um filterRGB zu signalisieren, daß eine Farbtabelle und kein Pixel gefiltert werden soll.
public abstract int filterRGB(int x, int y, int rgb)
Muß in einer Unterklasse überschrieben werden, um die Pixel in der gewünschten Weise zu filtern. Die Koordinaten x und y werden übergeben, um eine positionsabhängige Änderung der Farbe zu ermöglichen. Falls das canFilterIndexColorModel-Flag gesetzt ist, wird diese Methode benutzt, um die Farbtabelle eines IndexColorModel zu filtern. In diesem Fall werden x und y auf -1 gesetzt, um anzuzeigen, daß ein Farbtabelleneintrag und nicht ein Pixel gefiltert werden soll.
public void filterRGBPixels(int x, int y, int w, int h, int[] pixels, int off, int scansize)
Filtert die in pixels enthaltenen Pixel nacheinander mit der filterRGB-Methode und leitet sie dann an den angeschlossenen ImageConsumer weiter.
public void setColorModel(ColorModel model)
Falls das canFilterIndexColorModel-Flag gesetzt und model ein IndexColorModel ist, wird ein gefiltertes Farbmodell berechnet und an den angeschlossenen ImageConsumer weitergeleitet. Wenn model kein IndexColorModel ist, wird das voreingestellte RGB-Modell benutzt.
public void setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)
Konvertiert das Farbmodell und leitet die Pixel über filterRGBPixels an den angeschlossenen ImageConsumer weiter.
public void setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)
Wie die voranstehende Variante, nur daß die Pixel in einem int-Array statt in einem byte-Array übergeben werden.
public void substituteColorModel(ColorModel oldcm, ColorModel newcm)
Falls das zu filternde Bild das Farbmodell oldcm verwendet, wird es für die Filterung durch newcm ersetzt.


 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Copyright © 2002 dpunkt.Verlag, Heidelberg. Alle Rechte vorbehalten.