ScummVM API documentation
Sword25::Bitmap Class Referenceabstract
Inheritance diagram for Sword25::Bitmap:
Sword25::RenderObject Sword25::DynamicBitmap Sword25::StaticBitmap

Public Member Functions

void setAlpha (int alpha)
 Setzt den Alphawert des Bitmaps. More...
 
void setModulationColor (uint modulationColor)
 Setzt die Modulationfarbe der Bitmaps. More...
 
void setScaleFactor (float scaleFactor)
 Setzt den Skalierungsfaktor des Bitmaps. More...
 
void setScaleFactorX (float scaleFactorX)
 Setzt den Skalierungsfaktor der Bitmap auf der X-Achse. More...
 
void setScaleFactorY (float scaleFactorY)
 Setzt den Skalierungsfaktor der Bitmap auf der Y-Achse. More...
 
void setFlipH (bool flipH)
 Legt fest, ob das Bild an der X-Achse gespiegelt werden soll.
 
void setFlipV (bool flipV)
 Legt fest, ob das Bild an der Y-Achse gespiegelt werden soll.
 
int getAlpha ()
 Gibt den aktuellen Alphawert des Bildes zurück. More...
 
int getModulationColor ()
 Gibt die aktuelle 24bit RGB Modulationsfarde des Bildes zurück. More...
 
float getScaleFactorX () const
 Gibt den Skalierungsfakter des Bitmaps auf der X-Achse zurück. More...
 
float getScaleFactorY () const
 Gibt den Skalierungsfakter des Bitmaps auf der Y-Achse zurück. More...
 
bool isFlipH ()
 Gibt zurück, ob das Bild an der X-Achse gespiegelt angezeigt wird.
 
bool isFlipV ()
 Gibt zurück, ob das Bild an der Y-Achse gespiegelt angezeigt wird.
 
virtual uint getPixel (int x, int y) const =0
 Liest einen Pixel des Bildes. More...
 
virtual bool setContent (const byte *pixeldata, uint size, uint offset=0, uint stride=0)=0
 Füllt den Inhalt des Bildes mit Pixeldaten. More...
 
virtual bool isScalingAllowed () const =0
 
virtual bool isAlphaAllowed () const =0
 
virtual bool isColorModulationAllowed () const =0
 
virtual bool isSetContentAllowed () const =0
 
bool persist (OutputPersistenceBlock &writer) override
 
bool unpersist (InputPersistenceBlock &reader) override
 
- Public Member Functions inherited from Sword25::RenderObject
RenderObjectPtr< BitmapaddBitmap (const Common::String &fileName)
 Erzeugt ein Bitmap als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< BitmapaddDynamicBitmap (uint width, uint height)
 Erzeugt ein veränderbares Bitmap als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< AnimationaddAnimation (const Common::String &fileName)
 Erzeugt eine Animation auf Basis einer Animationsdatei als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< AnimationaddAnimation (const AnimationTemplate &animationTemplate)
 Erzeugt eine Animation auf Basis eines Animationstemplate als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< PaneladdPanel (int width, int height, uint color=BS_RGB(0, 0, 0))
 Erzeugt ein neues Farbpanel als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< TextaddText (const Common::String &font, const Common::String &text="")
 Erzeugt ein Textobjekt als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< BitmaptoBitmap ()
 Castet das Objekt zu einem BS_Bitmap-Objekt wenn zulässig. More...
 
RenderObjectPtr< AnimationtoAnimation ()
 Castet das Objekt zu einem BS_Animation-Objekt wenn zulässig. More...
 
RenderObjectPtr< PaneltoPanel ()
 Castet das Objekt zu einem BS_Panel-Objekt wenn zulässig. More...
 
RenderObjectPtr< TexttoText ()
 Castet das Object zu einem BS_Text-Objekt wenn zulässig. More...
 
 RenderObject (RenderObjectPtr< RenderObject > pParent, TYPES type, uint handle=0)
 Erzeugt ein neues BS_RenderObject. More...
 
void preRender (RenderObjectQueue *renderQueue)
 
bool render (RectangleList *updateRects, const Common::Array< int > &updateRectsMinZ)
 Rendert des Objekt und alle seine Unterobjekte. More...
 
bool updateObjectState ()
 Bereitet das Objekt und alle seine Unterobjekte auf einen Rendervorgang vor. Hierbei werden alle Dirty-Rectangles berechnet und die Renderreihenfolge aktualisiert. More...
 
void deleteAllChildren ()
 Löscht alle Kinderobjekte.
 
virtual void setPos (int x, int y)
 Setzt die Position des Objektes. More...
 
virtual void setX (int x)
 Setzt die Position des Objektes auf der X-Achse. More...
 
virtual void setY (int y)
 Setzt die Position des Objektes auf der Y-Achse. More...
 
virtual void setZ (int z)
 Setzt den Z-Wert des Objektes. More...
 
virtual void setVisible (bool visible)
 Setzt die Sichtbarkeit eine Objektes. More...
 
virtual int getX () const
 Gibt die Position des Objektes auf der X-Achse relativ zum Elternobjekt zurück.
 
virtual int getY () const
 Gibt die Position des Objektes auf der Y-Achse relativ zum Elternobjekt zurück.
 
virtual int getAbsoluteX () const
 Gibt die absolute Position des Objektes auf der X-Achse zurück.
 
virtual int getAbsoluteY () const
 Gibt die absolute Position des Objektes auf der Y-Achse zurück.
 
int getZ () const
 Gibt den Z-Wert des Objektes relativ zum Elternobjekt zurück. More...
 
int getAbsoluteZ () const
 
int getWidth () const
 Gibt die Breite des Objektes zurück.
 
int getHeight () const
 Gibt die Höhe des Objektes zurück.
 
bool isVisible () const
 Gibt den Sichtbarkeitszustand des Objektes zurück. More...
 
TYPES getType () const
 Gibt den Typ des Objektes zurück.
 
bool getInitSuccess () const
 Gibt zurück, ob das Objekt erfolgreich initialisiert wurde. More...
 
const Common::RectgetBbox () const
 Gibt die Bounding-Box des Objektes zurück. More...
 
void forceRefresh ()
 Stellt sicher, dass das Objekt im nächsten Frame neu gezeichnet wird.
 
uint32 getHandle () const
 Gibt das Handle des Objekte zurück.
 
int getVersion () const
 
bool isSolid () const
 
bool persistChildren (OutputPersistenceBlock &writer)
 
bool unpersistChildren (InputPersistenceBlock &reader)
 
RenderObjectPtr< RenderObjectrecreatePersistedRenderObject (InputPersistenceBlock &reader)
 

Protected Member Functions

 Bitmap (RenderObjectPtr< RenderObject > parentPtr, TYPES type, uint handle=0)
 
- Protected Member Functions inherited from Sword25::RenderObject
virtual bool doRender (RectangleList *updateRects)=0
 Einschubmethode, die den tatsächlichen Redervorgang durchführt. More...
 
RenderObjectManagergetManager () const
 Gibt einen Pointer auf den BS_RenderObjektManager zurück, der das Objekt verwaltet.
 
bool addObject (RenderObjectPtr< RenderObject > pObject)
 Fügt dem Objekt ein neues Kinderobjekt hinzu. More...
 

Protected Attributes

bool _flipH
 
bool _flipV
 
float _scaleFactorX
 
float _scaleFactorY
 
uint32 _modulationColor
 
int32 _originalWidth
 
int32 _originalHeight
 
- Protected Attributes inherited from Sword25::RenderObject
int32 _x
 Die X-Position des Objektes relativ zum Eltern-Objekt.
 
int32 _y
 Die Y-Position des Objektes relativ zum Eltern-Objekt.
 
int32 _z
 Der Z-Wert des Objektes relativ zum Eltern-Objekt.
 
int32 _absoluteX
 Die absolute X-Position des Objektes.
 
int32 _absoluteY
 Die absolute Y-Position des Objektes.
 
int32 _absoluteZ
 
int32 _width
 Die Breite des Objektes.
 
int32 _height
 Die Höhe des Objektes.
 
bool _visible
 Ist true, wenn das Objekt sichtbar ist.
 
bool _childChanged
 Ist true, wenn sich ein Kinderobjekt verändert hat.
 
TYPES _type
 Der Objekttyp.
 
bool _initSuccess
 Ist true, wenn Objekt erfolgreich intialisiert werden konnte.
 
Common::Rect _bbox
 Die Bounding-Box des Objektes in Bildschirmkoordinaten.
 
Common::Rect _oldBbox
 
int32 _oldX
 
int32 _oldY
 
int32 _oldZ
 
bool _oldVisible
 
int32 _version
 
bool _isSolid
 
RenderObjectManager_managerPtr
 Ein Pointer auf den BS_RenderObjektManager, der das Objekt verwaltet.
 
RenderObjectPtr< RenderObject_parentPtr
 Ein Pointer auf das Elternobjekt.
 
RENDEROBJECT_LIST _children
 Die Liste der Kinderobjekte nach der Renderreihenfolge geordnet.
 

Additional Inherited Members

- Public Types inherited from Sword25::RenderObject
enum  TYPES {
  TYPE_ROOT, TYPE_STATICBITMAP, TYPE_DYNAMICBITMAP, TYPE_ANIMATION,
  TYPE_PANEL, TYPE_TEXT, TYPE_UNKNOWN
}
 
- Protected Types inherited from Sword25::RenderObject
typedef Common::List< RenderObjectPtr< RenderObject > > RENDEROBJECT_LIST
 
typedef Common::List< RenderObjectPtr< RenderObject > >::iterator RENDEROBJECT_ITER
 
- Static Protected Attributes inherited from Sword25::RenderObject
static int _nextGlobalVersion
 

Member Function Documentation

◆ setAlpha()

void Sword25::Bitmap::setAlpha ( int  alpha)

Setzt den Alphawert des Bitmaps.

Parameters
Alphader neue Alphawert der Bitmaps (0 = keine Deckung, 255 = volle Deckung).
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsAlphaAllowed() true zurückgibt.

◆ setModulationColor()

void Sword25::Bitmap::setModulationColor ( uint  modulationColor)

Setzt die Modulationfarbe der Bitmaps.

Parameters
Coloreine 24-Bit Farbe, die die Modulationsfarbe des Bitmaps festlegt.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsColorModulationAllowed() true zurückgibt.

◆ setScaleFactor()

void Sword25::Bitmap::setScaleFactor ( float  scaleFactor)

Setzt den Skalierungsfaktor des Bitmaps.

Parameters
ScaleFactorder Faktor um den das Bitmap in beide Richtungen gestreckt werden soll.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ setScaleFactorX()

void Sword25::Bitmap::setScaleFactorX ( float  scaleFactorX)

Setzt den Skalierungsfaktor der Bitmap auf der X-Achse.

Parameters
ScaleFactorder Faktor um den die Bitmap in Richtungen der X-Achse gestreckt werden soll. Dieser Wert muss positiv sein.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ setScaleFactorY()

void Sword25::Bitmap::setScaleFactorY ( float  scaleFactorY)

Setzt den Skalierungsfaktor der Bitmap auf der Y-Achse.

Parameters
ScaleFactorder Faktor um den die Bitmap in Richtungen der Y-Achse gestreckt werden soll. Dieser Wert muss positiv sein.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ getAlpha()

int Sword25::Bitmap::getAlpha ( )
inline

Gibt den aktuellen Alphawert des Bildes zurück.

Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsAlphaAllowed() true zurückgibt.

◆ getModulationColor()

int Sword25::Bitmap::getModulationColor ( )
inline

Gibt die aktuelle 24bit RGB Modulationsfarde des Bildes zurück.

Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsColorModulationAllowed() true zurückgibt.

◆ getScaleFactorX()

float Sword25::Bitmap::getScaleFactorX ( ) const
inline

Gibt den Skalierungsfakter des Bitmaps auf der X-Achse zurück.

Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ getScaleFactorY()

float Sword25::Bitmap::getScaleFactorY ( ) const
inline

Gibt den Skalierungsfakter des Bitmaps auf der Y-Achse zurück.

Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ getPixel()

virtual uint Sword25::Bitmap::getPixel ( int  x,
int  y 
) const
pure virtual

Liest einen Pixel des Bildes.

Parameters
Xdie X-Koordinate des Pixels.
Ydie Y-Koordinate des Pixels
Returns
Gibt den 32-Bit Farbwert des Pixels an der übergebenen Koordinate zurück.
Remarks
Diese Methode sollte auf keine Fall benutzt werden um größere Teile des Bildes zu lesen, da sie sehr langsam ist. Sie ist eher dafür gedacht einzelne Pixel des Bildes auszulesen.

Implemented in Sword25::StaticBitmap, and Sword25::DynamicBitmap.

◆ setContent()

virtual bool Sword25::Bitmap::setContent ( const byte *  pixeldata,
uint  size,
uint  offset = 0,
uint  stride = 0 
)
pure virtual

Füllt den Inhalt des Bildes mit Pixeldaten.

Parameters
Pixeldataein Vector der die Pixeldaten enthält. Sie müssen in dem Farbformat des Bildes vorliegen und es müssen genügend Daten vorhanden sein, um das ganze Bild zu füllen.
Offsetder Offset in Byte im Pixeldata-Vector an dem sich der erste zu schreibende Pixel befindet.
Der Standardwert ist 0.
Strideder Abstand in Byte zwischen dem Zeilenende und dem Beginn einer neuen Zeile im Pixeldata-Vector.
Der Standardwert ist 0.
Returns
Gibt false zurück, falls der Aufruf fehlgeschlagen ist.
Remarks
Ein Aufruf dieser Methode ist nur erlaubt, wenn IsSetContentAllowed() true zurückgibt.

Implemented in Sword25::StaticBitmap, and Sword25::DynamicBitmap.


The documentation for this class was generated from the following file: