PPL7-Icon Patrick's Programming Library Version 7.0.0 - Dokumentation
ppl7::grafix::Image Klassenreferenz

Eine Bitmap-Grafik im Hauptspeicher. Mehr ...

Abgeleitet von ppl7::grafix::Drawable.

Basisklasse für ppl7::grafix::ImageList.

Öffentliche Methoden

Konstruktoren
 Image ()
 Konstruktor der Klasse. Mehr ...
 
 Image (const Image &other)
 Copy-Konstruktor. Mehr ...
 
 Image (const Drawable &other)
 Copy-Konstruktor. Mehr ...
 
 Image (int width, int height, const RGBFormat &format=RGBFormat::A8R8G8B8)
 Erstellen einer neuen Grafik. Mehr ...
 
 Image (const String &Filename, const RGBFormat &format=RGBFormat::unknown)
 Grafik aus einer Datei laden. Mehr ...
 
 Image (FileObject &file, const RGBFormat &format=RGBFormat::unknown)
 Grafik aus einer geöffneten Datei laden. Mehr ...
 
 Image (const ByteArrayPtr &mem, const RGBFormat &format=RGBFormat::unknown)
 Grafik aus einem Speicherbereich laden. Mehr ...
 
 ~Image ()
 Destruktor der Klasse. Mehr ...
 
Verschiedenes
void clear ()
 Speicher freigeben. Mehr ...
 
void create (int width, int height, const RGBFormat &format=RGBFormat::A8R8G8B8)
 Neues Image erstellen. Mehr ...
 
void create (void *base, ppluint32 pitch, int width, int height, const RGBFormat &format=RGBFormat::A8R8G8B8)
 Neues Image aus einem Speicherbereich erstellen. Mehr ...
 
void load (const String &Filename, const RGBFormat &format=RGBFormat::unknown)
 Grafik aus einer Datei laden. Mehr ...
 
void load (FileObject &file, const RGBFormat &format=RGBFormat::unknown)
 Grafik aus einer geöffneten Datei laden. Mehr ...
 
void load (const ByteArrayPtr &Mem, const RGBFormat &format=RGBFormat::unknown)
 Grafik aus einem Speicherbereich laden. Mehr ...
 
void copy (const Drawable &other)
 Grafik von einem Drawable kopieren. Mehr ...
 
void copy (const Drawable &other, const Rect &rect)
 Grafikausschnitt von einem Drawable kopieren. Mehr ...
 
void copy (const Image &other)
 Grafik kopieren. Mehr ...
 
Imageoperator= (const Drawable &other)
 Grafik kopieren. Mehr ...
 
Imageoperator= (const Image &other)
 Grafik kopieren. Mehr ...
 
size_t numBytes () const
 Anzahl Bytes, die durch diese Grafik belegt sind. Mehr ...
 
ByteArrayPtr memory () const
 Referenz auf den Speicherbereich der Grafik holen. Mehr ...
 
 operator ByteArrayPtr () const
 Referenz auf den Speicherbereich der Grafik holen. Mehr ...
 
Verschiedenes
GRAFIX_FUNCTIONSgetFunctions ()
 Pointer auf die Grafik-Funktionen für das Farbformat dieses Drawable holen. Mehr ...
 
DRAWABLE_DATAgetData ()
 Pointer auf die Datenstruktur des Drawable holen. Mehr ...
 
void copy (const Drawable &other, const Point &p, const Size &s)
 Ausschnitt von einem anderen Drawable kopieren. Mehr ...
 
Rect rect () const
 Rechteck des Drawable auslesen. Mehr ...
 
Size size () const
 Größe des Drawable auslesen. Mehr ...
 
int width () const
 Breite der Grafik in Pixel. Mehr ...
 
int height () const
 Höhe der Grafik in Pixel. Mehr ...
 
int pitch () const
 Bytes pro Zeile. Mehr ...
 
int bytesPerPixel () const
 Bytes pro Pixel. Mehr ...
 
int bitdepth () const
 Bittiefe der Grafik (Bits pro Pixel) Mehr ...
 
RGBFormat rgbformat () const
 Farbformat des Drawable auslesen. Mehr ...
 
bool isEmpty () const
 Enthält dieses Drawable eine Grafik? Mehr ...
 
void * adr () const
 Speicheradresse der Grafik. Mehr ...
 
void * adr (int x, int y) const
 Speicheradresse der angegebenen Koordinaten. Mehr ...
 
void cls (const Color &c)
 Grafik löschen. Mehr ...
 
void cls ()
 Grafik löschen. Mehr ...
 
Drawable getDrawable () const
 Ein neues Drawable erstellen. Mehr ...
 
Drawable getDrawable (const Rect &rect) const
 Ein neues Drawable anhand eines Ausschnitts erstellen. Mehr ...
 
Drawable getDrawable (const Point &p, const Size &s) const
 
Drawable getDrawable (int x1, int y1, int x2, int y2) const
 Ein neues Drawable anhand eines Ausschnitts erstellen. Mehr ...
 
Image scaled (int width, int height, bool keepAspectRation=true, bool smoothTransform=false)
 
void scale (Image &tgt, int width, int height, bool keepAspectRation=true, bool smoothTransform=false)
 
Farben
SurfaceColor rgb (const Color &c) const
 Farbe in einen Farbformatspezifischen Wert umrechnen. Mehr ...
 
SurfaceColor rgb (int r, int g, int b, int alpha) const
 Farbe in einen Farbformatspezifischen Wert umrechnen. Mehr ...
 
Pixel
void putPixel (int x, int y, const Color &c)
 
void putPixel (const Point &p, const Color &c)
 
void alphaPixel (int x, int y, const Color &c)
 
void alphaPixel (const Point &p, const Color &c)
 
void blendPixel (int x, int y, const Color &c, float brightness)
 
void blendPixel (int x, int y, const Color &c, int brightness)
 
Color getPixel (int x, int y) const
 
Color getPixel (const Point &p) const
 
Geometrische Formen
void drawRect (const Rect &rect, const Color &c)
 Rechteck zeichnen. Mehr ...
 
void drawRect (int x1, int y1, int x2, int y2, const Color &c)
 Rechteck zeichnen. Mehr ...
 
void fillRect (const Rect &rect, const Color &c)
 Ausgefülltes Rechteck zeichnen. Mehr ...
 
void fillRect (int x1, int y1, int x2, int y2, const Color &c)
 Ausgefülltes Rechteck zeichnen. Mehr ...
 
void floodFill (int x, int y, const Color &color, const Color &border)
 Fläche mit Farbe füllen. Mehr ...
 
void elipse (int x, int y, int radx, int rady, const Color &c, bool fill=false)
 
void elipse (int x, int y, int radx, int rady, const Color &c, bool fill, const Color &fillcolor, int startangle, int endangle)
 
void circle (int x, int y, int rad, const Color &c, bool fill=false)
 
void circle (const Point &p, int rad, const Color &c, bool fill=false)
 
Effekte
void xchange (const Rect &rect, const Color &color, const Color &replace)
 Farben ersetzen. Mehr ...
 
void invert (const Rect &rect, const Color &color1, const Color &color2)
 Farben vertauschen. Mehr ...
 
void negativ (const Rect &rect)
 Negativ-Farben erstellen. Mehr ...
 
void colorGradient (const Rect &rect, const Color &c1, const Color &c2, int direction)
 
void colorGradient (int x1, int y1, int x2, int y2, const Color &c1, const Color &c2, int direction)
 
Linien zeichnen
void line (int x1, int y1, int x2, int y2, const Color &c)
 
void line (const Point &start, const Point &end, const Color &c)
 
void lineAA (int x1, int y1, int x2, int y2, const Color &c, int strength=1)
 
void lineAA (const Point &start, const Point &end, const Color &c, int strength=1)
 
Textausgabe
void print (const Font &font, int x, int y, const String &text)
 
void print (const Font &font, int x, int y, const WideString &text)
 Text ausgeben. Mehr ...
 
void printf (const Font &font, int x, int y, const char *fmt,...)
 Formatierten Text ausgeben. Mehr ...
 
Blit-Funktionen

Kopieren von Grafiken mit verschiedenen Methoden

int fitRect (int &x, int &y, Rect &r)
 Überprüft, ob eine Blit-Aktion in den Zeichenbereich passt. Mehr ...
 
void blt (const Drawable &source, int x=0, int y=0)
 Rechteck 1:1 kopieren. Mehr ...
 
void blt (const Drawable &source, const Rect &srect, int x=0, int y=0)
 Rechteck 1:1 kopieren. Mehr ...
 
void bltDiffuse (const Drawable &source, int x=0, int y=0, const Color &c=Color())
 Rechteck anhand der Intensität der Quellfarbe kopieren. Mehr ...
 
void bltDiffuse (const Drawable &source, const Rect &srect, int x=0, int y=0, const Color &c=Color())
 Rechteck anhand der Intensität der Quellfarbe kopieren. Mehr ...
 
void bltColorKey (const Drawable &source, int x=0, int y=0, const Color &c=Color())
 Rechteck unter Berücksichtigung einer transparenten Schlüsselfarbe kopieren. Mehr ...
 
void bltColorKey (const Drawable &source, const Rect &srect, int x=0, int y=0, const Color &c=Color())
 Rechteck unter Berücksichtigung einer transparenten Schlüsselfarbe kopieren. Mehr ...
 
void bltAlpha (const Drawable &source, int x=0, int y=0)
 Rechteck unter Berücksichtigung des Alpha-Kanals kopieren. Mehr ...
 
void bltAlpha (const Drawable &source, const Rect &srect, int x=0, int y=0)
 Rechteck unter Berücksichtigung des Alpha-Kanals kopieren. Mehr ...
 
void bltBlend (const Drawable &source, float factor, int x=0, int y=0)
 
void bltBlend (const Drawable &source, float factor, const Rect &srect, int x=0, int y=0)
 
void bltChromaKey (const Drawable &source, const Color &key, int tol1, int tol2, int x=0, int y=0)
 Rechteck unter Berücksichtigung eines Farbschlüssels kopieren (Bluescreen-Effekt) Mehr ...
 
void bltChromaKey (const Drawable &source, const Rect &srect, const Color &key, int tol1, int tol2, int x=0, int y=0)
 Rechteck unter Berücksichtigung eines Farbschlüssels kopieren (Bluescreen-Effekt) Mehr ...
 
void bltBackgroundOnChromaKey (const Drawable &background, const Color &key, int tol1, int tol2, int x=0, int y=0)
 Rechteck unter Berücksichtigung eines Farbschlüssels kopieren (Bluescreen-Effekt) Mehr ...
 
void bltBackgroundOnChromaKey (const Drawable &background, const Rect &srect, const Color &key, int tol1, int tol2, int x=0, int y=0)
 Rechteck unter Berücksichtigung eines Farbschlüssels kopieren (Bluescreen-Effekt) Mehr ...
 
void draw (const ImageList &iml, int nr, int x, int y)
 Grafik aus einer Image-Liste kopieren. Mehr ...
 
void draw (const ImageList &iml, int nr, int x, int y, const Color &diffuse)
 Grafik aus einer Image-Liste kopieren. Mehr ...
 
void draw (const Sprite &sprite, int nr, int x, int y)
 

Private Attribute

ByteArray myMemory
 

Ausführliche Beschreibung

Beispiel:
#include <ppl7.h>
#include <ppl7-grafix.h>
using namespace ppl7;
using namespace ppl7::grafix;
int main(int argc, char **argv) {
Grafix gfx; // Grafik-Engine initialisieren
Image Image(640,480,RGBFormat::A8R8G8B8); // Image erzeugen
Image.CLS(Color(255,255,255)); // Weisser Hintergrund
Image.DrawRect(Rect(10,10,100,100),Color(0)); // Schwarzes Rechteck mit einer Breite und Höhe von 100 Pixel
CFont Font;
Font.setAntialias(true);
Image.Print(Font,15,20,"Hello World");
CFilter_PNG PNG;
PNG.SaveFile(Image,"testbild.png");
return 0;
}

Beschreibung der Konstruktoren und Destruktoren

ppl7::grafix::Image::Image ( )
Beschreibung:
Mit diesem Konstruktor wird ein leeres Image erstellt. Bevor es verwendet werden kann, muss zunächst mit Image::create eine neue Grafik erstellt, mit Image::copy eine Grafik von einem anderen Image oder Drawable kopiert oder mit Image::load eine Grafik aus einer Datei oder einem Speicherbereich geladen werden.
ppl7::grafix::Image::Image ( const Image other)
Beschreibung:
Mit diesem Konstruktor wird eine Kopie eines anderen Image erstellt.
Parameter
otherAnderes Image
ppl7::grafix::Image::Image ( const Drawable other)
Beschreibung:
Mit diesem Konstruktor wird eine Kopie eines Drawable erstellt.
Parameter
otherEin Drawable, von dem kopiert werden soll
ppl7::grafix::Image::Image ( int  width,
int  height,
const RGBFormat format = RGBFormat::A8R8G8B8 
)
Beschreibung:
Mit dieser Funktion wird eine neue Grafik mit der Breite width, der Höhe height und dem Farbformat format erstellt.
Parameter
widthBreite in Pixel
heightHöhe in Pixel
formatgewünschtes Farbformat
Ausnahmebehandlung
Exception::InitialisationFailedDiese Exception wird geworfen, wenn die Grafik nicht erstellt werden konnte. Die genaue Ursache kann über die Fehlercodes ausgelesen werden.
ppl7::grafix::Image::Image ( const String Filename,
const RGBFormat format = RGBFormat::unknown 
)
Beschreibung:
Mit diesem Konstruktor wird eine Grafik aus einer Datei geladen.
Parameter
FilenameDer Dateiname
formatOptionales Farbformat. Falls nicht angegeben, wird das Farbformat der Grafikdatei verwendet. Andernfalls werden die Originalfarben der Grafikdatei in das angegebene Format konvertiert.
Ausnahmebehandlung
Exception::FileOpenFailedDiese Exception wird geworfen, wenn die angegebene Datei nicht geöffnet werden konnte.
Exception::ImageLoadFailedDiese Exception wird geworfen, wenn die Grafik nicht geladen werden konnte. Die genaue Ursache kann über die Fehlercodes ausgelesen werden.
ppl7::grafix::Image::Image ( FileObject file,
const RGBFormat format = RGBFormat::unknown 
)
Beschreibung:
Mit diesem Konstruktor wird eine Grafik aus einer geöffneten Datei geladen.
Parameter
fileGeöffnete Datei
formatOptionales Farbformat. Falls nicht angegeben, wird das Farbformat der Grafikdatei verwendet. Andernfalls werden die Originalfarben der Grafikdatei in das angegebene Format konvertiert.
Ausnahmebehandlung
Exception::ImageLoadFailedDiese Exception wird geworfen, wenn die Grafik nicht geladen werden konnte. Die genaue Ursache kann über die Fehlercodes ausgelesen werden.
ppl7::grafix::Image::Image ( const ByteArrayPtr mem,
const RGBFormat format = RGBFormat::unknown 
)
Beschreibung:
Mit diesem Konstruktor wird eine Grafik aus einem Speicherbereich geladen.
Parameter
memSpeicherbereich
formatOptionales Farbformat. Falls nicht angegeben, wird das Farbformat der Grafikdatei verwendet. Andernfalls werden die Originalfarben der Grafikdatei in das angegebene Format konvertiert.
Ausnahmebehandlung
Exception::ImageLoadFailedDiese Exception wird geworfen, wenn die Grafik nicht geladen werden konnte. Die genaue Ursache kann über die Fehlercodes ausgelesen werden.
ppl7::grafix::Image::~Image ( )
Beschreibung:
Der Destruktor sorgt dafür, dass der durch die Klasse allokierte Speicher wieder freigegeben wird.

Dokumentation der Elementfunktionen

void * ppl7::grafix::Drawable::adr ( ) const
inherited
Beschreibung:
Diese Funktion gibt die Speicheradresse zurück, an der die Daten dieser Grafik beginnen.
Rückgabe
Speicheradresse
void * ppl7::grafix::Drawable::adr ( int  x,
int  y 
) const
inherited
Beschreibung:
Diese Funktion gibt die Speicheradresse zurück, an der sich die angegebenen Koordinaten x und y befinden.
Parameter
xX-Koordinate
yY-Koordinate
Rückgabe
Speicheradresse
Ausnahmebehandlung
OutOfBoundsEceptionWird geworfen, wenn x oder y außerhalb des Zeichenbereichs liegen
void ppl7::grafix::Drawable::alphaPixel ( int  x,
int  y,
const Color c 
)
inherited
void ppl7::grafix::Drawable::alphaPixel ( const Point p,
const Color c 
)
inherited
int ppl7::grafix::Drawable::bitdepth ( ) const
inherited
Beschreibung:
Diese Funktion liefert die Anzahl Bits pro Pixel für das verwendete Farbformat zurück.
Rückgabe
Bits pro Pixel
void ppl7::grafix::Drawable::blendPixel ( int  x,
int  y,
const Color c,
float  brightness 
)
inherited
void ppl7::grafix::Drawable::blendPixel ( int  x,
int  y,
const Color c,
int  brightness 
)
inherited
void ppl7::grafix::Drawable::blt ( const Drawable source,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion wird die Quellzeichenfläche source an die Position x / y der Zielzeichenfläche kopiert, wobei alle Farbinformationen 1:1 übernommen werden. Es wird weder Alphablending (siehe Drawable::bltAlpha) noch Colorkeying (siehe Drawable::bltColorKey) verwendet. Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]xOptionale X-Koordinate der linken oberen Ecke in der Zielzeichenfläche. Wird der Parameter nicht angegeben, wird 0 verwendet.
[in]yOptionale Y-Koordinate der linken oberen Ecke in der Zielzeichenfläche. Wird der Parameter nicht angegebenm wird 0 verwendet.
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
void ppl7::grafix::Drawable::blt ( const Drawable source,
const Rect srect,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion wird der Ausschnitt srect aus der Quellzeichenfläche source an die Position x / y kopiert, wobei alle Farbinformationen 1:1 übernommen werden. Es wird weder Alphablending (siehe Drawable::bltAlpha) noch Colorkeying (siehe Drawable::bltColorKey) verwendet. Falls srect 0 ist, wird die komplette Quellzeichenfläche kopiert, andernfalls nur der angegebene Ausschnitt. Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]srectRechteckiger Ausschnitt aus der Quellzeichenfläche, der kopiert werden soll
[in]xX-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]yY-Koordinate der linken oberen Ecke in der Zielzeichenfläche
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
void ppl7::grafix::Drawable::bltAlpha ( const Drawable source,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion wird die Quellzeichenfläche source an die Position x / y unter Berücksichtigung des Alphakanals der Quelle kopiert. Der Alphakanal bestimmt die Transparenz eines Pixels. Ist sie 0, wird der Pixel nicht kopiert, bei einem Wert von 255 wird er 1:1 kopiert. Dazwischen wird die Farbe abhängig vom Transparenz-Wert mit dem Hintergrund vermischt.
Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]xX-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]yY-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]cDie gewünschte Schlüsselfarbe (ColorKey)
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
void ppl7::grafix::Drawable::bltAlpha ( const Drawable source,
const Rect srect,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion wird der Ausschnitt srect aus der Quellzeichenfläche source an die Position x / y unter Berücksichtigung des Alphakanals der Quelle kopiert. Der Alphakanal bestimmt die Transparenz eines Pixels. Ist sie 0, wird der Pixel nicht kopiert, bei einem Wert von 255 wird er 1:1 kopiert. Dazwischen wird die Farbe abhängig vom Transparenz-Wert mit dem Hintergrund vermischt.
Falls srect 0 ist, wird die komplette Quellzeichenfläche kopiert, andernfalls nur der angegebene Ausschnitt. Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]srectRechteckiger Ausschnitt aus der Quellzeichenfläche, der kopiert werden soll
[in]xX-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]yY-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]cDie gewünschte Schlüsselfarbe (ColorKey)
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
void ppl7::grafix::Drawable::bltBackgroundOnChromaKey ( const Drawable background,
const Color key,
int  tol1,
int  tol2,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion kann ein "Bluescreen-Effekt" erzielt werden (siehe http://de.wikipedia.org/wiki/Bluescreen-Technik#Greenscreen). Dabei wird die Hintergundgrafik background mittels eines Farbschlüssels key (Chroma Key), sowie zwei Toleranz-Werten über die Grafik gelegt.
Parameter
sourceQuellgrafik
keyFarbschlüssel (z.B. Color(0,0,255) für einen Bluescreen oder Color(0,255,0) für einen Greenscreen)
tol1Untere Toleranz: Farbabweichungen bis zu diesem Toleranzwert, werden komplett Transparent, das heisst der Hintergrund wird übernommen
tol2Obere Toleranz: Farbabweichungen, die zwischen tol1 und tol2 liegen, werden je nach Stärke der Abweichung überblendet. Je stärker die Abweichung, desto mehr Hintergrund ist zu sehen
xZielkoordinate für das Rechteck (optional, Default ist 0)
yZielkoordinate für das Rechteck (optional, Default ist 0)
Bemerkungen
Auf 64-Bit-Systemen mit SSE2-Unterstützung werden optimierte Assembler-Routinen verwendet. Sofern Bildbreite durch 4 und die Speicheradressen durch 16 teilbar sind, werden jeweils 4 Pixel gleichzeitig berechnet.
Siehe auch
Die Funktion bltChromaKey wendet den Farbschlüssel auf das Quellbild source an.
Die Funktion bltBackgroundOnChromaKey wendet den Farbschlüssel nicht auf das Quellbild source sondern den Hintergrund an.
void ppl7::grafix::Drawable::bltBackgroundOnChromaKey ( const Drawable background,
const Rect srect,
const Color key,
int  tol1,
int  tol2,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion kann ein "Bluescreen-Effekt" erzielt werden (siehe http://de.wikipedia.org/wiki/Bluescreen-Technik#Greenscreen). Dabei wird die Hintergundgrafik background mittels eines Farbschlüssels key (Chroma Key), sowie zwei Toleranz-Werten über die Grafik gelegt.
Parameter
backgroundHintergundgrafik
srectRechteckiger Ausschnitt aus der Hintergundgrafik background, der kopiert werden soll
keyFarbschlüssel (z.B. Color(0,0,255) für einen Bluescreen oder Color(0,255,0) für einen Greenscreen)
tol1Untere Toleranz: Farbabweichungen bis zu diesem Toleranzwert, werden komplett Transparent, das heisst der Hintergrund wird übernommen
tol2Obere Toleranz: Farbabweichungen, die zwischen tol1 und tol2 liegen, werden je nach Stärke der Abweichung überblendet. Je stärker die Abweichung, desto mehr Hintergrund ist zu sehen
xZielkoordinate für das Rechteck (optional, Default ist 0)
yZielkoordinate für das Rechteck (optional, Default ist 0)
Bemerkungen
Auf 64-Bit-Systemen mit SSE2-Unterstützung werden optimierte Assembler-Routinen verwendet. Sofern Bildbreite durch 4 und die Speicheradressen durch 16 teilbar sind, werden jeweils 4 Pixel gleichzeitig berechnet.
Siehe auch
Die Funktion bltChromaKey wendet den Farbschlüssel auf das Quellbild source an.
Die Funktion bltBackgroundOnChromaKey wendet den Farbschlüssel nicht auf das Quellbild source sondern den Hintergrund an.
void ppl7::grafix::Drawable::bltBlend ( const Drawable source,
float  factor,
int  x = 0,
int  y = 0 
)
inherited
void ppl7::grafix::Drawable::bltBlend ( const Drawable source,
float  factor,
const Rect srect,
int  x = 0,
int  y = 0 
)
inherited
void ppl7::grafix::Drawable::bltChromaKey ( const Drawable source,
const Color key,
int  tol1,
int  tol2,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion kann ein "Bluescreen-Effekt" erzielt werden (siehe http://de.wikipedia.org/wiki/Bluescreen-Technik#Greenscreen). Dabei wird die Quellgrafik source mittels eines Farbschlüssels key (Chroma Key), sowie zwei Toleranz-Werten über den Hintergrund gelegt.
Parameter
sourceQuellgrafik
keyFarbschlüssel (z.B. Color(0,0,255) für einen Bluescreen oder Color(0,255,0) für einen Greenscreen)
tol1Untere Toleranz: Farbabweichungen bis zu diesem Toleranzwert, werden komplett Transparent, das heisst der Hintergrund wird übernommen
tol2Obere Toleranz: Farbabweichungen, die zwischen tol1 und tol2 liegen, werden je nach Stärke der Abweichung überblendet. Je stärker die Abweichung, desto mehr Hintergrund ist zu sehen
xZielkoordinate für das Rechteck (optional, Default ist 0)
yZielkoordinate für das Rechteck (optional, Default ist 0)
Bemerkungen
Auf 64-Bit-Systemen mit SSE2-Unterstützung werden optimierte Assembler-Routinen verwendet. Sofern Bildbreite durch 4 und die Speicheradressen durch 16 teilbar sind, werden jeweils 4 Pixel gleichzeitig berechnet.
Siehe auch
Die Funktion bltChromaKey wendet den Farbschlüssel auf das Quellbild source an.
Die Funktion bltBackgroundOnChromaKey wendet den Farbschlüssel nicht auf das Quellbild source sondern den Hintergrund an.
void ppl7::grafix::Drawable::bltChromaKey ( const Drawable source,
const Rect srect,
const Color key,
int  tol1,
int  tol2,
int  x = 0,
int  y = 0 
)
inherited
Beschreibung:
Mit dieser Funktion kann ein "Bluescreen-Effekt" erzielt werden (siehe http://de.wikipedia.org/wiki/Bluescreen-Technik#Greenscreen). Dabei wird die Quellgrafik source mittels eines Farbschlüssels key (Chroma Key), sowie zwei Toleranz-Werten über den Hintergrund gelegt.
Parameter
sourceQuellgrafik
srectRechteckiger Ausschnitt aus der Quellgrafik source, der kopiert werden soll
keyFarbschlüssel (z.B. Color(0,0,255) für einen Bluescreen oder Color(0,255,0) für einen Greenscreen)
tol1Untere Toleranz: Farbabweichungen bis zu diesem Toleranzwert, werden komplett Transparent, das heisst der Hintergrund wird übernommen
tol2Obere Toleranz: Farbabweichungen, die zwischen tol1 und tol2 liegen, werden je nach Stärke der Abweichung überblendet. Je stärker die Abweichung, desto mehr Hintergrund ist zu sehen
xZielkoordinate für das Rechteck (optional, Default ist 0)
yZielkoordinate für das Rechteck (optional, Default ist 0)
Bemerkungen
Auf 64-Bit-Systemen mit SSE2-Unterstützung werden optimierte Assembler-Routinen verwendet. Sofern Bildbreite durch 4 und die Speicheradressen durch 16 teilbar sind, werden jeweils 4 Pixel gleichzeitig berechnet.
Siehe auch
Die Funktion bltChromaKey wendet den Farbschlüssel auf das Quellbild source an.
Die Funktion bltBackgroundOnChromaKey wendet den Farbschlüssel nicht auf das Quellbild source sondern den Hintergrund an.
void ppl7::grafix::Drawable::bltColorKey ( const Drawable source,
int  x = 0,
int  y = 0,
const Color c = Color() 
)
inherited
Beschreibung:
Mit dieser Funktion wird die Quellzeichenfläche source an die Position x / y unter Berücksichtigung der Schlüsselfarbe c kopiert. Pixel, die der Farbe entsprechen, bleiben dabei vollständig transparent, alle anderen Pixel werden wie bei Drawable::blt 1:1 kopiert.
Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]xX-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]yY-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]cDie gewünschte Schlüsselfarbe (ColorKey)
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
void ppl7::grafix::Drawable::bltColorKey ( const Drawable source,
const Rect srect,
int  x = 0,
int  y = 0,
const Color c = Color() 
)
inherited
Beschreibung:
Mit dieser Funktion wird der Ausschnitt srect aus der Quellzeichenfläche source an die Position x / y unter Berücksichtigung der Schlüsselfarbe c kopiert. Pixel, die der Farbe entsprechen, bleiben dabei vollständig transparent, alle anderen Pixel werden wie bei Drawable::blt 1:1 kopiert.
Falls srect 0 ist, wird die komplette Quellzeichenfläche kopiert, andernfalls nur der angegebene Ausschnitt. Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]srectRechteckiger Ausschnitt aus der Quellzeichenfläche, der kopiert werden soll
[in]xX-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]yY-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]cDie gewünschte Schlüsselfarbe (ColorKey)
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
void ppl7::grafix::Drawable::bltDiffuse ( const Drawable source,
int  x = 0,
int  y = 0,
const Color c = Color() 
)
inherited
Beschreibung:
Mit dieser Funktion wird die Quellzeichenfläche source an die Position x / y kopiert, wobei die Intensität der Quellpixel geprüft wird und diese in gleicher Intensität mit der angegebenen Farbe gezeichnet werden. Bei halbtransparenten Pixeln wird die Farbe mit dem Hintergrund gemischt. Die Funktion ist daher zum Zeichnen von einfarbigen Grafiken unterschiedlicher Intensität gedacht (z.B. grafische Elemente einer GUI).
Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]xX-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]yY-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]cDie gewünschte Pixelfarbe
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
void ppl7::grafix::Drawable::bltDiffuse ( const Drawable source,
const Rect srect,
int  x = 0,
int  y = 0,
const Color c = Color() 
)
inherited
Beschreibung:
Mit dieser Funktion wird der Ausschnitt srect aus der Quellzeichenfläche source an die Position x / y kopiert, wobei die Intensität der Quellpixel geprüft wird und diese in gleicher Intensität mit der angegebenen Farbe gezeichnet werden. Bei halbtransparenten Pixeln wird die Farbe mit dem Hintergrund gemischt. Die Funktion ist daher zum Zeichnen von einfarbigen Grafiken unterschiedlicher Intensität gedacht (z.B. grafische Elemente einer GUI).
Falls srect 0 ist, wird die komplette Quellzeichenfläche kopiert, andernfalls nur der angegebene Ausschnitt. Falls die Quelle nicht in die Zielzeichenfläche passt, wird nur der passende Teil kopiert (siehe Drawable::fitRect). Falls die Quelle komplett außerhalb der Zeichenfläche liegt, passiert nichts.
Parameter
[in]sourceDie Quellzeichenfläche
[in]srectRechteckiger Ausschnitt aus der Quellzeichenfläche, der kopiert werden soll
[in]xX-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]yY-Koordinate der linken oberen Ecke in der Zielzeichenfläche
[in]cDie gewünschte Pixelfarbe
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
int ppl7::grafix::Drawable::bytesPerPixel ( ) const
inherited
Beschreibung:
Mit dieser Funktion kann ausgelesen werden, wieviele Bytes ein einzelner Pixel benötigt.
Rückgabe
Bytes pro Pixel
void ppl7::grafix::Drawable::circle ( int  x,
int  y,
int  rad,
const Color c,
bool  fill = false 
)
inherited
void ppl7::grafix::Drawable::circle ( const Point p,
int  rad,
const Color c,
bool  fill = false 
)
inherited
void ppl7::grafix::Image::clear ( )
Beschreibung:
Durch Aufruf dieser Funktion wird der durch das Objekt belegte Speicher freigegeben. Es darf anschließend nicht mehr für Zeichenoperationen verwendet werden. Mit Image::create kann es reinitialisiert werden.
void ppl7::grafix::Drawable::cls ( const Color c)
inherited
Beschreibung:
Durch Aufruf dieser Funktion wird die komplette Grafik gelöscht und mit der Angegebenen Farbe gefüllt.
Parameter
[in]cFarbwert
void ppl7::grafix::Drawable::cls ( )
inherited
Beschreibung:
Durch Aufruf dieser Funktion wird die komplette Grafik gelöscht, indem der Speicherbereich mit 0 beschrieben wird. Optional kann die Funktion auch mit einem Farbwert aufgerufen werden (siehe Drawable::cls(const Color &c)).
void ppl7::grafix::Drawable::colorGradient ( const Rect rect,
const Color c1,
const Color c2,
int  direction 
)
inherited
void ppl7::grafix::Drawable::colorGradient ( int  x1,
int  y1,
int  x2,
int  y2,
const Color c1,
const Color c2,
int  direction 
)
inherited
void ppl7::grafix::Drawable::copy ( const Drawable other,
const Point p,
const Size s 
)
inherited
Beschreibung:
Mit dieser Funktion wird der Bildausschnitt, der bei der Koordinate p beginnt und eine Größe von s hat, aus dem Drawable other kopiert.
Parameter
otherEin anderes Drawable
pKoordinate der linken oberen Ecke
sBreite und Höhe
void ppl7::grafix::Image::copy ( const Drawable other)
Beschreibung:
Grafik von einem anderen Drawable kopieren.
Parameter
otherAnderes Drawable
Rückgabe
Im Erfolgsfall gibt die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Image::copy ( const Drawable other,
const Rect rect 
)
Beschreibung:
Grafikausschnitt von einem anderen Drawable kopieren.
Parameter
otherAnderes Drawable
rectGewünschter Ausschnitt
Rückgabe
Im Erfolgsfall gibt die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Image::copy ( const Image other)
Beschreibung:
Grafik von einem anderen Image kopieren.
Parameter
otherAnderes Image
Rückgabe
Im Erfolgsfall gibt die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Image::create ( int  width,
int  height,
const RGBFormat format = RGBFormat::A8R8G8B8 
)
Beschreibung:
Mit dieser Funktion wird eine neue Grafik mit der Größe width * height und dem Farbformat format erstellt.
Parameter
widthBreite der Grafik
heightHöhe der Grafik
formatFarbformat der Grafik
Rückgabe
Bei Erfolg liefert die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Image::create ( void *  base,
ppluint32  pitch,
int  width,
int  height,
const RGBFormat format = RGBFormat::A8R8G8B8 
)
Beschreibung:
Mit dieser Funktion wird eine neue Grafik anhand des angegebenen Speicherbereichs erstellt. Dabei wird zunächst eine neues Image erstellt und die Bilddaten des angegebenen Speicherbereichs hineinkopiert.
Parameter
baseSpeicheradresse
pitchAnzahl Bytes pro Bildzeile
widthBreite der Grafik in Pixel
heightHöhe der Grafik in Pixel
formatFarbformat
Rückgabe
Im Erfolgsfall liefert die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Drawable::draw ( const ImageList iml,
int  nr,
int  x,
int  y 
)
inherited
Beschreibung:
Mit dieser Funktion wird eine Grafik aus einer Image-Liste (siehe CImageList) kopiert. Jenachdem welche Zeichenmethode in der Image-Liste definiert ist, wird dazu entweder Drawable::blt, Drawable::bltDiffuse, Drawable::bltColorKey oder Drawable::bltAlpha verwendet.
Parameter
imlImage-Liste
nrNummer der Grafik innerhalb der Image-Liste
xX-Koordinate der Zielposition
yY-Koordinate der Zielposition
Ausnahmebehandlung
EmptyDrawableExceptionDer Parameter source enthält keinen darstellbaren Inhalt
FunctionUnavailableExceptionFunktion wird für das eingestellte Farbformat nicht unterstützt
UnknownBltMethodExceptionDie Zeichenmethode der ImageList ist unbekannt
void ppl7::grafix::Drawable::draw ( const ImageList iml,
int  nr,
int  x,
int  y,
const Color diffuse 
)
inherited
Beschreibung:
Mit dieser Funktion wird eine Grafik aus einer Image-Liste (siehe CImageList) kopiert. Jenachdem welche Zeichenmethode in der Image-Liste definiert ist, wird dazu entweder Drawable::blt, Drawable::bltDiffuse, Drawable::bltColorKey oder Drawable::bltAlpha verwendet. Ist die Methode CImageList::DIFFUSE, wird die Farbe diffuse statt der in der Image-Liste definierten Farbe verwendet.
Parameter
imlImage-Liste
nrNummer der Grafik innerhalb der Image-Liste
xX-Koordinate der Zielposition
yY-Koordinate der Zielposition
diffuseFarbwert, sofern die Diffuse Zeichenmethode verwendet wird. Bei allen anderen Zeichenmethoden wird der Parameter ignoriert.
Rückgabe
Bei Erfolg gibt die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Drawable::draw ( const Sprite sprite,
int  nr,
int  x,
int  y 
)
inherited
void ppl7::grafix::Drawable::drawRect ( const Rect rect,
const Color c 
)
inherited
Beschreibung:
Diese Funktion zeichnet ein Rechteck an die gewünschte Position
Parameter
[in]rectKoordinaten des Rechtecks
[in]cFarbe des Rechtecks
void ppl7::grafix::Drawable::drawRect ( int  x1,
int  y1,
int  x2,
int  y2,
const Color c 
)
inherited
Beschreibung:
Diese Funktion zeichnet ein Rechteck an die gewünschte Position
Parameter
[in]x1X-Koordinate der oberen linken Ecke
[in]y1Y-Koordinate der oberen linken Ecke
[in]x2X-Koordinate der unteren rechten Ecke
[in]y2Y-Koordinate der unteren rechten Ecke
[in]cFarbe des Rechtecks
void ppl7::grafix::Drawable::elipse ( int  x,
int  y,
int  radx,
int  rady,
const Color c,
bool  fill = false 
)
inherited
void ppl7::grafix::Drawable::elipse ( int  x,
int  y,
int  radx,
int  rady,
const Color c,
bool  fill,
const Color fillcolor,
int  startangle,
int  endangle 
)
inherited
void ppl7::grafix::Drawable::fillRect ( const Rect rect,
const Color c 
)
inherited
Beschreibung:
Diese Funktion zeichnet ein ausgefülltes Rechteck in der Farbe c an die gewünschte Position
Parameter
[in]rectKoordinaten des Rechtecks
[in]cFarbe des Rechtecks
void ppl7::grafix::Drawable::fillRect ( int  x1,
int  y1,
int  x2,
int  y2,
const Color c 
)
inherited
Beschreibung:
Diese Funktion zeichnet ein ausgefülltes Rechteck in der Farbe c an die gewünschte Position
Parameter
[in]x1X-Koordinate der oberen linken Ecke
[in]y1Y-Koordinate der oberen linken Ecke
[in]x2X-Koordinate der unteren rechten Ecke
[in]y2Y-Koordinate der unteren rechten Ecke
[in]cFarbe des Rechtecks
int ppl7::grafix::Drawable::fitRect ( int &  x,
int &  y,
Rect r 
)
inherited
Beschreibung:
Diese Funktion prüft, ob das zu zeichnende Rechteck überhaupt in die aktuelle Zeichenfläche. Dabei wird das Quellrechteck bei Bedarf angepasst.
Parameter
[in,out]xX-Koordinate der Zielposition
[in,out]yY-Koordinate der Zielposition
[in,out]rQuell-Rechteck
Rückgabe
Die Funktion liefert 0 zurück, wenn das Rechteck komplett ausserhalb der Zeichenfläche liegt, oder 1, wenn es ganz oder zumindest teilweise innerhalb der Zeichenfläche liegt. In letzterem Fall werden die Koordinaten x, y und die Dimensionen des Rechtecks r so angepasst, dass durch die nachfolgende Blt-Funktion nur der sichtbare Bereich an die korrekte Position gezeichnet wird.
void ppl7::grafix::Drawable::floodFill ( int  x,
int  y,
const Color color,
const Color border 
)
inherited
Beschreibung:
Mit dieser Funktion kann eine beliebig geformte Fläche mit einer Farbe ausgefüllt werden.
Parameter
[in]xX-Koordinate eines beliebigen Punktes innerhalb der zu füllenden Fläche
[in]yY-Koordinate eines beliebigen Punktes innerhalb der zu füllenden Fläche
[in]colorFarbwert, mit der die Fläche gefüllt werden soll
[in]borderFarbwert, der die Grenze der zu füllenden Fläche darstellt
Bemerkungen
Die Funktion ruft sich selbst mehrfach rekursiv auf. Der Code wurde im wesentlichen aus der freien GD-Library, Version 1.2 entnommen
Portions copyright 1994, 1995, 1996, 1997, 1998, by Cold Spring
Harbor Laboratory. Funded under Grant P41-RR02188 by the National
Institutes of Health.
Portions copyright 1996, 1997, 1998, by Boutell.Com, Inc.
DRAWABLE_DATA * ppl7::grafix::Drawable::getData ( )
inherited
Beschreibung:
Diese Funktion liefert einen Pointer auf die Struktur DRAWABLE_DATA des Drawable zurück. Diese enthält alle Informationen des Drawable, wie den Speicherbereich der Grafik, Breite und Höhe, Bytes pro Zeile (pitch) und das Farbformat.
Rückgabe
Pointer auf die DRAWABLE_DATA Struktur des Drawable.
Drawable ppl7::grafix::Drawable::getDrawable ( ) const
inherited
Beschreibung:
Diese Funktion liefert eine Kopie dieses Drawable zurück.
Rückgabe
Kopie des Drawable
Drawable ppl7::grafix::Drawable::getDrawable ( const Rect rect) const
inherited
Beschreibung:
Diese Funktion erstellt ein neues Drawable Objekt anhand des angegebenen Ausschnitts rect.
Parameter
rectDer gewünschte Bildausschnitt
Rückgabe
Neues Drawable, das den gewünschten Ausschnitt repräsentiert
Drawable ppl7::grafix::Drawable::getDrawable ( const Point p,
const Size s 
) const
inherited
Drawable ppl7::grafix::Drawable::getDrawable ( int  x1,
int  y1,
int  x2,
int  y2 
) const
inherited
Beschreibung:
Diese Funktion erstellt ein neues Drawable Objekt anhand des angegebenen Koordinaten. Dabei ist zu beachten, dass der Ausschnitt inklusive der rechten unteren Ecke erstellt wird.
Parameter
x1X-Koordinate der linken oberen Ecke
y1Y-Koordinate der linken oberen Ecke
x2X-Koordinate der rechten unteren Ecke
y2Y-Koordinate der rechten unteren Ecke
Rückgabe
Neues Drawable, das den gewünschten Ausschnitt repräsentiert
GRAFIX_FUNCTIONS * ppl7::grafix::Drawable::getFunctions ( )
inherited
Beschreibung:
Diese Funktion liefert einen Pointer auf die Grafik-Funktionen für das Farbformat dieses Drawable zurück. Dieser kann NULL sein, wenn das Drawable noch nicht initialisiert wurde oder das angegebene Farbformat nicht unterstützt wird.
Rückgabe
Pointer auf eine GRAFIX_FUNCTIONS Struktur oder NULL. Es wird kein Fehlercode gesetzt.
Color ppl7::grafix::Drawable::getPixel ( int  x,
int  y 
) const
inherited
Color ppl7::grafix::Drawable::getPixel ( const Point p) const
inherited
int ppl7::grafix::Drawable::height ( ) const
inherited
Beschreibung:
Diese Funktion liefert die Höhe der Grafik in Pixel zurück.
Rückgabe
Höhe in Pixel
void ppl7::grafix::Drawable::invert ( const Rect rect,
const Color color1,
const Color color2 
)
inherited
Beschreibung:
Mit dieser Funktion werden sämtliche Pixel innerhalb eines Rechtecks, die der Farbe color1 entsprechen, durch color2 ersetzt, und alle Farben mit dem Farbwert color2 werden durch color1 ersetzt.
Parameter
[in]rectKoordinaten des Rechtecks
[in]color1Erste Farbe
[in]color2Zweite Farbe
bool ppl7::grafix::Drawable::isEmpty ( ) const
inherited
Beschreibung:
Mit dieser Funktion kann geprüft werden, ob das Drawable eine gültige und somit nutzbare Grafik enthält. Dies ist der Fall, wenn eine Basisadresse vorhanden ist, die Grafik eine Höhe und Breite größer 0 und ein gültiges Farbformat enthält.
Rückgabe
Liefert true zurück, wenn das Drawable eine gültige Grafik enthält, andernfalls false.
void ppl7::grafix::Drawable::line ( int  x1,
int  y1,
int  x2,
int  y2,
const Color c 
)
inherited
void ppl7::grafix::Drawable::line ( const Point start,
const Point end,
const Color c 
)
inherited
void ppl7::grafix::Drawable::lineAA ( int  x1,
int  y1,
int  x2,
int  y2,
const Color c,
int  strength = 1 
)
inherited
void ppl7::grafix::Drawable::lineAA ( const Point start,
const Point end,
const Color c,
int  strength = 1 
)
inherited
void ppl7::grafix::Image::load ( const String Filename,
const RGBFormat format = RGBFormat::unknown 
)
Beschreibung:
Mit dieser Funktion wird eine Grafik aus einer Datei geladen.
Parameter
FilenameDer Dateiname
formatOptionales Farbformat. Falls nicht angegeben, wird das Farbformat der Grafikdatei verwendet. Andernfalls werden die Originalfarben der Grafikdatei in das angegebene Format konvertiert.
Rückgabe
Im Erfolgsfall liefert die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Image::load ( FileObject file,
const RGBFormat format = RGBFormat::unknown 
)
Beschreibung:
Mit dieser Funktion wird eine Grafik aus einer geöffneten Datei geladen.
Parameter
fileReferenz auf eine bereits geöffnete Datei.
formatOptionales Farbformat. Falls nicht angegeben, wird das Farbformat der Grafikdatei verwendet. Andernfalls werden die Originalfarben der Grafikdatei in das angegebene Format konvertiert.
Rückgabe
Im Erfolgsfall liefert die Funktion 1 zurück, im Fehlerfall 0.
void ppl7::grafix::Image::load ( const ByteArrayPtr Mem,
const RGBFormat format = RGBFormat::unknown 
)
Beschreibung:
Mit dieser Funktion wird eine Grafik aus einem Speicherbereich geladen.
Parameter
MemReferenz auf einen Speicherbereich
formatOptionales Farbformat. Falls nicht angegeben, wird das Farbformat der Grafikdatei verwendet. Andernfalls werden die Originalfarben der Grafikdatei in das angegebene Format konvertiert.
Rückgabe
Im Erfolgsfall liefert die Funktion 1 zurück, im Fehlerfall 0.
ByteArrayPtr ppl7::grafix::Image::memory ( ) const
Beschreibung:
Mit dieser Funktion kann eine Referenz des Speicherbereich der Grafik als ByteArrayPtr-Objekt geholt werden.
Rückgabe
ByteArrayPtr-Objekt mit referenz auf den Speicherbereich der Grafik
void ppl7::grafix::Drawable::negativ ( const Rect rect)
inherited
Beschreibung:
Mit dieser Funktion werden sämtliche Pixel innerhalb eines Rechtecks durch ihren negativen Wert ersetzt.
Parameter
[in]rectKoordinaten des Rechtecks
size_t ppl7::grafix::Image::numBytes ( ) const
Beschreibung:
Diese Funktion liefert die Anzahl Bytes zurück, die durch diese Grafik belegt sind.
Rückgabe
Anzahl Bytes
ppl7::grafix::Image::operator ByteArrayPtr ( ) const
Beschreibung:
Mit dieser Funktion kann eine Referenz des Speicherbereich der Grafik als ByteArrayPtr-Objekt geholt werden.
Rückgabe
ByteArrayPtr-Objekt mit referenz auf den Speicherbereich der Grafik
Image & ppl7::grafix::Image::operator= ( const Drawable other)
Beschreibung:
Mit diesem Operator wird eine Kopie des angegebenen Drawable other erstellt.
Parameter
otherEin Drawable, von dem die Kopie angefertigt werden soll
Rückgabe
Liefert eine Referenz auf dieses Image zurück.
Image & ppl7::grafix::Image::operator= ( const Image other)
Beschreibung:
Mit diesem Operator wird eine Kopie des angegebenen Image other erstellt.
Parameter
otherEin Image, von dem die Kopie angefertigt werden soll
Rückgabe
Liefert eine Referenz auf dieses Image zurück.
int ppl7::grafix::Drawable::pitch ( ) const
inherited
Beschreibung:
Mit dieser Funktion kann abgefragt werden, wieviele Bytes eine Grafikzeile benötigt. Dies muss nicht unbedingt das Ergebnis von Breite mal BytesProPixel sein, sondern kann auch mehr sein, z.B. wenn das Drawable nur einen Ausschnitt aus einer größeren Grafik enthält.
Rückgabe
Bytes pro Grafikzeile
void ppl7::grafix::Drawable::print ( const Font font,
int  x,
int  y,
const String text 
)
inherited
void ppl7::grafix::Drawable::print ( const Font font,
int  x,
int  y,
const WideString text 
)
inherited
Beschreibung:
Mit dieser Funktion wird der Text text auf der Grafik an den Koordinaten x und y unter Verwendeung des Fonts font ausgegeben.
Parameter
fontZu verwendende Font-Parameter
xX-Koordinate
yY-Koordinate
textDer auszugebende Text
void ppl7::grafix::Drawable::printf ( const Font font,
int  x,
int  y,
const char *  fmt,
  ... 
)
inherited
Beschreibung:
Mit dieser Funktion wird zunächst ein Text anhand des Formatstrings fmt erstellt und dann auf der Grafik an den Koordinaten x und y unter Verwendeung des Fonts font ausgegeben.
Parameter
fontZu verwendende Font-Parameter
xX-Koordinate
yY-Koordinate
fmtFormatstring
...optionale Parameter für den Formatstring
void ppl7::grafix::Drawable::putPixel ( int  x,
int  y,
const Color c 
)
inherited
void ppl7::grafix::Drawable::putPixel ( const Point p,
const Color c 
)
inherited
Rect ppl7::grafix::Drawable::rect ( ) const
inherited
Beschreibung:
Dieser Funktion liefert das Rechteck des Drawable zurück. Die Koordinaten des Rechtecks sind immer 0/0, Breite und Höhe sind die des Drawable.
Rückgabe
Ein Objekt von Typ Rect.
SurfaceColor ppl7::grafix::Drawable::rgb ( const Color c) const
inherited
Beschreibung:
Mit dieser Funktion wird eine farbformat unabhängige Farbe c in einen format spezifischen Wert umgerechnet.
Parameter
cFarbe
Rückgabe
Farbwert
SurfaceColor ppl7::grafix::Drawable::rgb ( int  r,
int  g,
int  b,
int  alpha 
) const
inherited
Beschreibung:
Mit dieser Funktion wird eine farbformat unabhängige Farbe mit den Komponenten rot, grün, blau und Transparenz in einen format spezifischen Wert umgerechnet.
Parameter
rrot-Wert
ggrün-Wert
bblau-Wert
alphaTransparenz
Rückgabe
Farbwert
RGBFormat ppl7::grafix::Drawable::rgbformat ( ) const
inherited
Beschreibung:
Diese Funktion liefert das Farbformat des Drawable zurück.
Rückgabe
Farbformat
void ppl7::grafix::Drawable::scale ( Image tgt,
int  width,
int  height,
bool  keepAspectRation = true,
bool  smoothTransform = false 
)
inherited
Image ppl7::grafix::Drawable::scaled ( int  width,
int  height,
bool  keepAspectRation = true,
bool  smoothTransform = false 
)
inherited
Size ppl7::grafix::Drawable::size ( ) const
inherited
Beschreibung:
Diese Funktion liefert Breite und Höhe des Drawable in einem Size-Objekt zurück.
Rückgabe
Objekt von Typ Size.
int ppl7::grafix::Drawable::width ( ) const
inherited
Beschreibung:
Diese Funktion liefert die Breite der Grafik in Pixel zurück.
Rückgabe
Breite in Pixel
void ppl7::grafix::Drawable::xchange ( const Rect rect,
const Color color,
const Color replace 
)
inherited
Beschreibung:
Mit dieser Funktion werden sämtliche Pixel innerhalb eines Rechtecks, die der Farbe color entsprechen, durch die Ersatzfarbe replace ersetzt
Parameter
[in]rectKoordinaten des Rechtecks
colorAlte Farbe
replaceNeu Farbe

Dokumentation der Datenelemente

ByteArray ppl7::grafix::Image::myMemory
private

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien: