Class Polygon

  • All Implemented Interfaces:
    Animatable

    public class Polygon
    extends Drawable<Polygon>
    A Polygon Element.
    
     Polygon polygon = new Polygon(100, 100,
         new int[] {0, 25, 50},
         new int[] {50, 25, 0},
     );
     
    • Field Summary

      Fields 
      Modifier and Type Field Description
      java.awt.Polygon polygon
      The internal polygon element
    • Constructor Summary

      Constructors 
      Constructor Description
      Polygon​(int[][] points)
      Create a new Polygon element from a list of points
      Polygon​(int[] xPoints, int[] yPoints)
      Create a new Polygon element from a list of x-positions and y-positions
      Polygon​(int x, int y)
      Create a new empty polygon, meant to be used in conjunction with point(int, int)
      Polygon​(int x, int y, int[][] points)
      Create a new Polygon element from a list of points
      Polygon​(int x, int y, int[] xPoints, int[] yPoints)
      Create a new Polygon element from a list of x-positions and y-positions
      Polygon​(int x, int y, java.awt.Polygon polygon)
      Create a new Polygon element from a Polygon.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.awt.Point center​(java.awt.Graphics g)
      Get the object's centerpoint
      protected void drawFilled​(java.awt.Graphics2D gc)
      the color is set to `color`
      protected void drawOutline​(java.awt.Graphics2D gc)
      the color is set to `outlineColor`, the stroke is set to `outlineStroke`
      Polygon getThis()  
      void point​(int x, int y)
      Adds a point to this polygon
      • Methods inherited from class paintingcanvas.drawable.Drawable

        Modifier and Type Method Description
        AnimationBuilder animate()
        Start animating this object.
        java.awt.Point center​(java.awt.Graphics g)
        Get the object's centerpoint
        Drawable<?> drawable()
        Get the Drawable element from this Animatable.
        protected abstract void drawFilled​(java.awt.Graphics2D gc)
        the color is set to `color`
        protected abstract void drawOutline​(java.awt.Graphics2D gc)
        the color is set to `outlineColor`, the stroke is set to `outlineStroke`
        void erase()
        Erase this object from the canvas.
        java.awt.Color getColor()
        Get the current color of an element as a Color
        java.awt.Color getOutlineColor()
        Gets the outline color
        java.awt.Stroke getOutlineStroke()
        Gets the outline stroke
        java.awt.Point getPos()
        Get the position of the element
        double getRotation()
        Get an elements rotation
        protected abstract T getThis()  
        int getX()
        Get the X-position of the element
        int getY()
        Get the Y-position of the element.
        T hide()
        Hide the Object.
        T move​(int x, int y)
        Moves this drawable by the specified x and y.
        T moveHorizontal​(int x)
        Moves this drawable by the specified x and y.
        T moveVertical​(int y)
        Moves this drawable by the specified x and y.
        T removeOutline()
        Removes the outline from the shape
        void render​(java.awt.Graphics g)
        Actually render the object itself
        T rotate​(double rotation)
        Rotate this element by rotation°.
        T setColor​(int hex)
        Set the color of the object with a 8-bit RGB hex literal.
        T setColor​(int r, int g, int b)
        Set the color of the element with RGB.
        T setColor​(java.awt.Color color)
        Set the color of the object with a Color object.
        T setColor​(java.lang.String color)
        Set the color of the object with a certain color by name (see Hue for list of all valid names)
        T setFilled​(boolean filled)
        Set whether this object is filled or not
        T setOutline​(int thickness)
        Sets the parameters for the outline of the shape, with the color defaulting to black
        T setOutline​(int thickness, java.awt.Color color)
        Sets the parameters for the outline of the shape
        T setOutline​(java.awt.Color color)
        Sets the outline color of the shape
        T setPos​(int x, int y)
        Set the position of the element.
        T setRotation​(double rotation)
        Set an elements rotation to rotation°.
        T setX​(int x)
        Set the X-position of the object
        T setY​(int y)
        Set the Y-position of the element
        T show()
        Show the Object
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • polygon

        public final java.awt.Polygon polygon
        The internal polygon element
        See Also:
        Polygon
    • Constructor Detail

      • Polygon

        public Polygon​(int x,
                       int y)
        Create a new empty polygon, meant to be used in conjunction with point(int, int)
        
         Polygon p = new Polygon(100, 100)
                             .point(0, 50)
                             .point(25, 25)
                             .point(50, 0)
         
        Parameters:
        x - The X-position of the polygon
        y - The Y-position of the polygon
        See Also:
        point(int, int)
      • Polygon

        public Polygon​(int x,
                       int y,
                       java.awt.Polygon polygon)
        Create a new Polygon element from a Polygon.
        
         Polygon polygon = new Polygon(100, 100, new java.awt.Polygon(
             new int[] {0, 25, 50},
             new int[] {50, 25, 0},
             3
         ));
         
        Parameters:
        x - The X-position of the polygon
        y - The Y-position of the polygon
        polygon - The Polygon element
      • Polygon

        public Polygon​(int x,
                       int y,
                       int[] xPoints,
                       int[] yPoints)
        Create a new Polygon element from a list of x-positions and y-positions
        
         Polygon polygon = new Polygon(100, 100,
             new int[] {0, 25, 50},
             new int[] {50, 25, 0},
         );
         
        Parameters:
        x - The X-position of the polygon
        y - The Y-position of the polygon
        xPoints - List of X-points
        yPoints - List of Y-points
      • Polygon

        public Polygon​(int[] xPoints,
                       int[] yPoints)
        Create a new Polygon element from a list of x-positions and y-positions
        
         Polygon polygon = new Polygon(
             new int[] {0, 25, 50},
             new int[] {50, 25, 0},
         );
         
        Parameters:
        xPoints - List of X-points
        yPoints - List of Y-points
      • Polygon

        public Polygon​(int x,
                       int y,
                       int[][] points)
        Create a new Polygon element from a list of points
        
         int[][] points = {{0, 50}, {25, 25}, {50, 0}};
        
         Polygon polygon = new Polygon(100, 100, points);
         
        Parameters:
        x - The X-position of the polygon
        y - The Y-position of the polygon
        points - A 2D array containing pairs of (x, y) points
      • Polygon

        public Polygon​(int[][] points)
        Create a new Polygon element from a list of points
        
         int[][] points = {{0, 50}, {25, 25}, {50, 0}};
        
         Polygon polygon = new Polygon(points);
         
        Parameters:
        points - A 2D array containing pairs of (x, y) points
    • Method Detail

      • drawOutline

        protected void drawOutline​(java.awt.Graphics2D gc)
        Description copied from class: Drawable
        the color is set to `outlineColor`, the stroke is set to `outlineStroke`
        Specified by:
        drawOutline in class Drawable<Polygon>
        Parameters:
        gc - The graphics context to draw the object with
      • drawFilled

        protected void drawFilled​(java.awt.Graphics2D gc)
        Description copied from class: Drawable
        the color is set to `color`
        Specified by:
        drawFilled in class Drawable<Polygon>
        Parameters:
        gc - The graphics context to draw the object with
      • center

        public java.awt.Point center​(java.awt.Graphics g)
        Description copied from class: Drawable
        Get the object's centerpoint
        
         import java.awt.Point;
        
         Point p = drawable.getStartpoint();
         int x = p.x;
         int y = p.y;
         
        Overrides:
        center in class Drawable<Polygon>
        Parameters:
        g - Graphics context
        Returns:
        The object's center-point
      • point

        public void point​(int x,
                          int y)
        Adds a point to this polygon
        Parameters:
        x - the x-position of said point
        y - the y-position of said point