Class ImageBox

All Implemented Interfaces:
Iterable<Box>

public class ImageBox extends LeafBox
Ein Bild, dessen Abmessungen gesetzt werden können und das gespiegelt werden kann.
Author:
Josef Friedrich
  • Constructor Details

    • ImageBox

      public ImageBox(BufferedImage image)
      Erstellt eine neue ImageBox mit dem gegebenen BufferedImage.
      Parameters:
      image - Das BufferedImage, das dargestellt werden soll.
    • ImageBox

      public ImageBox(String image)
      Erstellt eine neue ImageBox mit dem Bild, das unter dem angegebenen Namen registriert ist.
      Parameters:
      image - Der Name des Bildes, das in Controller.images registriert ist.
  • Method Details

    • width

      @Setter public ImageBox width(double width)
      Setzt die Breite des Bildes in Pixel.
      Overrides:
      width in class Box
      Parameters:
      width - Die Breite des Bildes in Pixel.
      Returns:
      Eine Referenz auf die eigene Instanz des Bildes, damit nach dem Erbauer/Builder-Entwurfsmuster die Eigenschaften des Bildes durch aneinander gekettete Setter festgelegt werden können, z.B. image.width(..).height(..).
    • height

      @Setter public ImageBox height(double height)
      Setzt die Höhe des Bildes in Pixel.
      Overrides:
      height in class Box
      Parameters:
      height - Die Höhe des Bildes in Pixel.
      Returns:
      Eine Referenz auf die eigene Instanz des Bildes, damit nach dem Erbauer/Builder-Entwurfsmuster die Eigenschaften des Bildes durch aneinander gekettete Setter festgelegt werden können, z.B. image.width(..).height(..).
    • hFlip

      @Setter public ImageBox hFlip(boolean hFlip)
      Spiegelt das Bild horizontal oder gibt den aktuellen Spiegelungszustand ein.
      Parameters:
      hFlip - true zum Spiegeln des Bildes horizontal, false zum Aufheben der Spiegelung.
      Returns:
      Eine Referenz auf die eigene Instanz des Bildes, damit nach dem Erbauer/Builder-Entwurfsmuster die Eigenschaften des Bildes durch aneinander gekettete Setter festgelegt werden können.
    • hFlip

      @Setter public ImageBox hFlip()
      Spiegelt das Bild horizontal (aktiviert die horizontale Spiegelung).
      Returns:
      Eine Referenz auf die eigene Instanz des Bildes, damit nach dem Erbauer/Builder-Entwurfsmuster die Eigenschaften des Bildes durch aneinander gekettete Setter festgelegt werden können.
    • vFlip

      @Setter public ImageBox vFlip(boolean vFlip)
      Spiegelt das Bild vertikal oder gibt den aktuellen Spiegelungszustand ein.
      Parameters:
      vFlip - true zum Spiegeln des Bildes vertikal, false zum Aufheben der Spiegelung.
      Returns:
      Eine Referenz auf die eigene Instanz des Bildes, damit nach dem Erbauer/Builder-Entwurfsmuster die Eigenschaften des Bildes durch aneinander gekettete Setter festgelegt werden können.
    • vFlip

      @Setter public ImageBox vFlip()
      Spiegelt das Bild vertikal (aktiviert die vertikale Spiegelung).
      Returns:
      Eine Referenz auf die eigene Instanz des Bildes, damit nach dem Erbauer/Builder-Entwurfsmuster die Eigenschaften des Bildes durch aneinander gekettete Setter festgelegt werden können.
    • calculateDimension

      protected void calculateDimension()
      Description copied from class: Box
      Berechnet rekursiv die Abmessung (die Höhe und Breite) der eigenen Box.

      Single-Child-Code-Beispiel

       
       protected void calculateDimension()
       {
           width = child.width + 2 * margin;
           height = child.height + 2 * margin;
       }
        

      Multiple-Child-Code-Beispiel

       
       protected void calculateDimension()
       {
           int maxWidth = 0;
           for (Box child : childs)
           {
               if (child.width > maxWidth)
               {
                   maxWidth = child.width;
               }
               height += child.height;
           }
           width = maxWidth;
       }
        
      Specified by:
      calculateDimension in class Box