Class Picture

All Implemented Interfaces:
Drawable, Fillable, Strokeable

public class Picture extends Shape
  • Constructor Details

    • Picture

      public Picture(String source)
    • Picture

      public Picture(double x, double y, String source)
    • Picture

      public Picture(Picture picture)
  • Method Details

    • copy

      public Shape copy()
      Description copied from class: Shape
      Erzeugt eine Kopie dieser Form mit denselben Eigenschaften.

      Unterklassen implementieren diese Methode mit dem genauen Typ der Unterklasse. In Rectangle sieht die Umsetzung beispielsweise so aus:

      
       public Rectangle copy() {
           return new Rectangle(this);
       }
       

      Die Methode kann beliebig umgesetzt werden, um eine 1-zu-1-Kopie dieser Form zu erhalten. In der Regel besitzt aber jede Form einen Konstruktor, der alle Werte einer andern Form übernimmt. Die gezeigte Implementierung ist daher im Regelfall ausreichend.

      Specified by:
      copy in class Shape
      Returns:
      Eine genaue Kopie dieser Form.
    • copyFrom

      public void copyFrom(Shape shape)
      Description copied from class: Shape
      Kopiert die Eigenschaften der angegebenen Form in diese.

      Unterklassen überschreiben diese Methode, um weitere Eigenschaften zu kopieren (zum Beispiel den Radius eines Kreises). Überschreibende Methoden sollten immer mit dem Aufruf super.copyFrom(shape) die Basiseigenschaften kopieren.

      Die Methode kopiert so viele Eigenschaften wie möglich von der angegebenen Form in diese. Wenn die andere Form einen anderen Typ hat, dann werden trotzdem die Basiseigenschaften (Konturlinie, Füllung, Position, Rotation, Skalierung, Sichtbarkeit und Ankerpunkt) in diese Form kopiert. Soweit sinnvoll übernehmen implementierende Unterklassen auch andere Werte. Eine Ellipse kopiert beispielsweise auch die Breite und Höhe eines Rectangle.

      Wird null übergeben, dann passiert nichts.

      Overrides:
      copyFrom in class Shape
      Parameters:
      shape - Die Originalform, von der kopiert wird.
    • getWidth

      public double getWidth()
      Description copied from class: Shape
      Liefert die aktuelle Breite dieser Form.

      Die Breite einer Form ist immer die Breite ihrer Begrenzung, bevor Drehungen und andere Transformationen auf sie angewandt wurden.

      Die Begrenzungen der tatsächlich gezeichneten Form wird mit Shape.getBounds() abgerufen.

      Specified by:
      getWidth in class Shape
      Returns:
      Die Breite der Form.
    • setWidth

      public void setWidth(double width)
    • getHeight

      public double getHeight()
      Description copied from class: Shape
      Liefert die aktuelle Höhe dieser Form.

      Die Höhe einer Form ist immer die Höhe ihrer Begrenzung, bevor Drehungen und andere Transformationen auf sie angewandt wurden.

      Die Begrenzungen der tatsächlich gezeichneten Form wird mit Shape.getBounds() abgerufen.

      Specified by:
      getHeight in class Shape
      Returns:
      Die Höhe der Form.
    • setHeight

      public void setHeight(double height)
    • getImage

      public BufferedImage getImage()
    • scale

      public void scale(double factor)
      Description copied from class: Shape
      Setzt den Skalierungsfaktor auf den angegebenen Faktor.

      Bei einem Faktor größer 0 wird die Form vergrößert, bei einem Faktor kleiner 0 verkleinert. Bei negativen Werten wird die Form entlang der x- bzw. y-Achse gespiegelt.

      Das Seitenverhältnis wird immer beibehalten.

      Overrides:
      scale in class Shape
      Parameters:
      factor - Der Skalierungsfaktor.
    • getShape

      public Shape getShape()
      Description copied from class: Shape
      Gibt eine Java-AWT Shape Version dieser Form zurück. Intern werden die AWT Shapes benutzt, um sie auf den Grafikkontext zu zeichnen.

      Wenn diese Form nicht durch eine AWT-Shape dargestellt wird, liefert die Methode null.

      Specified by:
      getShape in class Shape
      Returns:
      Eine Java-AWT Shape die diese Form repräsentiert oder null.
    • flip

      public void flip(Options.Direction dir)
    • tint

      public void tint(Color tintColor)
    • draw

      public void draw(Graphics2D graphics, AffineTransform transform)
      Description copied from class: Shape
      Zeichnet die Form, aber wendet zuvor noch eine zusätzliche Transformations- matrix an. Wird u.A. von der ShapeGroup verwendet.
      Overrides:
      draw in class Shape