java.lang.Object
de.pirckheimer_gymnasium.engine_pi.actor.Actor
de.pirckheimer_gymnasium.engine_pi.actor.Image
All Implemented Interfaces:
FrameUpdateListenerRegistration, KeyStrokeListenerRegistration, MouseClickListenerRegistration, MouseScrollListenerRegistration
Direct Known Subclasses:
ImageFontText

public class Image extends Actor
Ein Bild als grafische Repräsentation einer Bilddatei, die gezeichnet werden kann.
Author:
Michael Andonie
  • Constructor Details

    • Image

      @API public Image(String filepath, double width, double height)
      Erzeugt ein Bild durch Angabe des Verzeichnispfads und der Abmessungen in Meter.

      Entsprechen die Eingabeparameter für Breite und Höhe nicht den Abmessungen des Bildes, dann wird das Bild verzerrt dargestellt.

      Parameters:
      filepath - Der Verzeichnispfad des Bilds, das geladen werden soll.
      width - Die Breite des Bilds in Meter.
      height - Die Höhe des Bilds in Meter.
    • Image

      @API public Image(String filepath, double pixelPerMeter)
      Konstruktor für ein Bildobjekt.
      Parameters:
      filepath - Der Verzeichnispfad des Bildes, das geladen werden soll.
      pixelPerMeter - Gibt an, wie viele Pixel ein Meter misst.
    • Image

      @API public Image(BufferedImage image, double pixelPerMeter)
      Konstruktor für ein Bildobjekt.
      Parameters:
      image - Ein bereits im Speicher vorhandenes Bild vom Datentyp BufferedImage.
      pixelPerMeter - Gibt an, wie viele Pixel ein Meter misst.
  • Method Details

    • getImageSizeInPx

      @Internal public Dimension getImageSizeInPx()
      Returns:
      Die Größe des Bildes in Pixeln.
    • getImage

      @API public BufferedImage getImage()
      Returns:
      AWT-Repräsentation des Bildes
    • setImage

      public void setImage(BufferedImage image, double width, double height)
      Setzt oder ersetzt das Bild.
      Parameters:
      image - Ein bereits im Speicher vorhandenes Bild vom Datentyp BufferedImage.
      width - Die Breite des Bilds in Meter.
      height - Die Höhe des Bilds in Meter.
    • setImage

      public void setImage(String filepath, double width, double height)
      Setzt oder ersetzt das Bild.
      Parameters:
      filepath - Der Verzeichnispfad des Bilds, das geladen werden soll.
      width - Die Breite des Bilds in Meter.
      height - Die Höhe des Bilds in Meter.
    • setImage

      public void setImage(BufferedImage image)
      Setzt oder ersetzt das Bild.
      Parameters:
      image - Ein bereits im Speicher vorhandenes Bild vom Datentyp BufferedImage.
    • setImage

      public void setImage(BufferedImage image, double pixelPerMeter)
      Setzt oder ersetzt das Bild.
      Parameters:
      image - Ein bereits im Speicher vorhandenes Bild vom Datentyp BufferedImage.
      pixelPerMeter - Gibt an, wie viele Pixel ein Meter misst.
    • setImage

      public void setImage(String filepath, double pixelPerMeter)
      Setzt oder ersetzt das Bild.
      Parameters:
      filepath - Der Verzeichnispfad des Bildes, das geladen werden soll.
      pixelPerMeter - Gibt an, wie viele Pixel ein Meter misst.
    • setImageSize

      public void setImageSize(double width, double height)
      Setzt die Größe des Bildes innerhalb der Physik neu. Ändert die physikalischen Eigenschaften. Das Bild füllt die neuen Maße und wird ggf. verzerrt.
      Parameters:
      width - Die neue Breite des Bilds in Meter.
      height - Die neue Höhe des Bild in Meter.
      See Also:
    • setImageSize

      public void setImageSize(double pixelPerMeter)
      Ändert die Größe des Bildobjektes, sodass es dem angegebenen Umrechnungsfaktor entspricht. Ändert auch die physikalischen Eigenschaften des Bildes.
      Parameters:
      pixelPerMeter - Gibt an, wie viele Pixel ein Meter misst.
      See Also:
    • isFlippedVertically

      @API public boolean isFlippedVertically()
      Gibt an, ob das Bild in vertikaler Richtung gekippt, das heißt an horizontaler Achse gespiegelt ist.
      Returns:
      true, wenn das Objekt gerade vertikal gekippt ist. Sonst false.
    • flipVertically

      public boolean flipVertically()
      Kippt das Bild in vertikaler Richtung. Es wird an der horizontalen Achse gespiegelt.
      Returns:
      Wahr, wenn es in horizontaler Richtung gekippt wurde, falsch, wenn es im Originalzustand angezeigt wird.
      Since:
      0.24.0
    • setFlippedVertically

      @API public void setFlippedVertically(boolean flippedVertically)
      Setzt, ob das Bild vertikal gespiegelt dargestellt werden sollen.
      Parameters:
      flippedVertically - Ob die Animation horizontal geflippt dargestellt werden soll.
      See Also:
    • isFlippedHorizontally

      @API public boolean isFlippedHorizontally()
      Gibt an, ob das Bild in horizontaler Richtung gekippt, das heißt an der vertikalen Achse gespiegelt ist.
      Returns:
      true, wenn das Objekt gerade horizontal gespiegelt ist. Sonst false.
    • flipHorizontally

      public boolean flipHorizontally()
      Kippt das Bild in horizontaler Richtung. Es wird an der vertikalen Achse gespiegelt.
      Returns:
      Wahr, wenn es in horizontaler Richtung gekippt wurde, falsch, wenn es im Originalzustand angezeigt wird.
      Since:
      0.24.0
    • setFlippedHorizontally

      @API public void setFlippedHorizontally(boolean flippedHorizontally)
      Setzt, ob dieses Bild horizontaler Richtung umgedreht, das heißt an der vertikalen Achse gespiegelt werden soll. Hiermit lassen sich zum Beispiel Bewegungsrichtungen (links/rechts) einfach umsetzen.
      Parameters:
      flippedHorizontally - Ob das Bild horizontal gespiegelt dargestellt werden soll.
      See Also:
    • render

      public void render(Graphics2D g, double pixelPerMeter)
      Zeichnet die Figur an der Position (0|0) mit der Rotation 0.
      Specified by:
      render in class Actor
      Parameters:
      g - Das Graphics2D-Objekt, in das gezeichnet werden soll.
      pixelPerMeter - Gibt an, wie viele Pixel ein Meter misst.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • main

      public static void main(String[] args)