Class Polygon

All Implemented Interfaces:
Drawable, Fillable, Strokeable
Direct Known Subclasses:
Quad, Triangle

public class Polygon extends Shape
  • Field Details

    • points

      protected Point2D[] points
  • Constructor Details

    • Polygon

      public Polygon(double x, double y, Point2D... points)
    • Polygon

      public Polygon(Point2D... points)
    • Polygon

      public Polygon(double x1, double y1, double x2, double y2, double... coordinates)
    • Polygon

      public Polygon(Polygon polygon)
  • Method Details

    • 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.
    • 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.
    • getPoints

      public Point2D[] getPoints()
    • 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.
    • 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.
    • 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.