Class Circle

  • All Implemented Interfaces:
    Animatable

    public class Circle
    extends Drawable<Circle>
    A Circle element.
    
     // Create a new Circle at (100, 100) with a radius of 20.
     Circle circle = new Circle(100, 100, 20);
     
    • Field Summary

      Fields 
      Modifier and Type Field Description
      int radius
      The radius of the circle
    • Constructor Summary

      Constructors 
      Constructor Description
      Circle​(int centerX, int centerY, int radius)
      Create a new Circle element.
      Circle​(int centerX, int centerY, int radius, java.awt.Color color)
      Create a new Circle element with a specified Color.
      Circle​(int centerX, int centerY, int radius, java.lang.String color)
      Create a new Circle element with a certain color by name (see Hue for list of all valid names)
    • 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`
      int getRadius()
      Gets the radius of the circle.
      protected Circle getThis()  
      Circle setRadius​(int r)
      Sets the radius of the circle.
      • 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

      • radius

        public int radius
        The radius of the circle
    • Constructor Detail

      • Circle

        public Circle​(int centerX,
                      int centerY,
                      int radius)
        Create a new Circle element.
        
         // Create a new Circle centered at (100, 100) with a radius of 20.
         Circle circle = new Circle(100, 100, 20);
         
        Parameters:
        centerX - The X-position of the circle
        centerY - The Y-position of the circle
        radius - The radius of the circle
      • Circle

        public Circle​(int centerX,
                      int centerY,
                      int radius,
                      java.awt.Color color)
        Create a new Circle element with a specified Color.
        
         // Create a new red Circle centered at (100, 100) with a radius of 20.
         Circle circle = new Circle(100, 100, 20, new Color(255, 0, 0));
         
        Parameters:
        centerX - The X-position of the circle
        centerY - The Y-position of the circle
        radius - The radius of the circle
        color - The color of the circle
      • Circle

        public Circle​(int centerX,
                      int centerY,
                      int radius,
                      java.lang.String color)
        Create a new Circle element with a certain color by name (see Hue for list of all valid names)
        
         // Create a new red Circle centered at (100, 100) with a radius of 20.
         Circle circle = new Circle(100, 100, 20, new Color(255, 0, 0));
         
        Parameters:
        centerX - The X-position of the circle
        centerY - The Y-position of the circle
        radius - The radius of the circle
        color - The name of the color (case-insensitive)
    • Method Detail

      • 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<Circle>
        Parameters:
        gc - The graphics context to draw the object with
      • 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<Circle>
        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<Circle>
        Parameters:
        g - Graphics context
        Returns:
        The object's center-point
      • getRadius

        public int getRadius()
        Gets the radius of the circle.
        Returns:
        The radius of the circle in pixels
        See Also:
        setRadius(int)
      • setRadius

        public Circle setRadius​(int r)
        Sets the radius of the circle.
        Parameters:
        r - The new radius of the circle in pixels
        Returns:
        The original object to allow method chaining
        See Also:
        getRadius()