Class Path

    • Constructor Summary

      Constructors 
      Constructor Description
      Path()
      Create a new Path element.
      Path​(java.awt.Color color)
      Create a new Path element.
      Path​(java.lang.String color)
      Create a new Path element with a hue name or hex code
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.awt.Point center​(java.awt.Graphics2D g)
      Get the object's centerpoint
      Path cursorTo​(int x, int y)
      Move the cursor to a new position
      Path curveTo​(int x1, int y1, int x2, int y2, int x3, int y3)
      Make a cubic curve from the current cursor position to a new position.
      protected void drawFill​(java.awt.Graphics2D gc)  
      protected void drawOutline​(java.awt.Graphics2D gc)  
      Path getThis()  
      Path lineTo​(int x, int y)
      Make a line from the current cursor position to a new position
      Path quadTo​(int x1, int y1, int x2, int y2)
      Make a quadratic curve from the current cursor position to a new position.
      Path setLineColor​(java.awt.Color color)
      Set the color of the line, equivalent to setOutline(thickness, color);
      Path setStroke​(java.awt.Stroke stroke)
      Set the stroke of the line.
      Path setThickness​(int thickness)
      Set the thickness of the line, equivalent to setOutline(thickness);
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface paintingcanvas.animation.Animatable

        Modifier and Type Method Description
        default AnimationBuilder colorTo​(int hex, double duration)
        Change the color of this to the specified color over duration seconds.
        default AnimationBuilder colorTo​(int r, int g, int b, double duration)
        Change the color of this to the specified color over duration seconds.
        default AnimationBuilder colorTo​(int r, int g, int b, int a, double duration)
        Change the color of this to the specified color over duration seconds.
        default AnimationBuilder colorTo​(java.awt.Color color, double duration)
        Change the color of this to the specified color over duration seconds.
        default AnimationBuilder colorTo​(java.lang.String name, double duration)
        Change the color of this to the specified color over duration seconds.
        default AnimationBuilder colorTo​(Hue hue, double duration)
        Change the color of this to the specified color over duration seconds.
        Drawable<?> drawable()
        Get the Drawable element from this Animatable.
        default AnimationBuilder fadeIn​(double duration)
        Fade this in over duration seconds.
        default AnimationBuilder fadeOut​(double duration)
        Fade this out over duration seconds.
        default AnimationBuilder moveBy​(int x, int y, double duration)
        Move this by the specified x and y over duration seconds.
        default AnimationBuilder moveHorizontalBy​(int x, double duration)
        Move this by the specified x horizontally over duration seconds.
        default AnimationBuilder moveTo​(int x, int y, double duration)
        Move this to the specified x and y over duration seconds
        default AnimationBuilder moveVerticalBy​(int y, double duration)
        Move this by the specified y vertically over duration seconds.
        default AnimationBuilder rotateBy​(int angle, double duration)
        Rotate this by angle degrees over duration seconds.
        default AnimationBuilder rotateTo​(int angle, double duration)
        Rotate this to the specified angle degrees over duration seconds.
      • Methods inherited from interface paintingcanvas.drawable.Colorable

        Modifier and Type Method Description
        java.awt.Color getColor()
        Get the current color of an element as a Color
        void internalSetColor​(java.awt.Color color)  
        default T setColor​(int hex)
        Set the color of this to the specified color.
        default T setColor​(int r, int g, int b)
        Set the color of this to the specified color.
        default T setColor​(int r, int g, int b, int a)
        Set the color of this to the specified color See Wikipedia for how this works.
        default T setColor​(java.awt.Color color)
        Set the color of the object with a Color object.
        default T setColor​(java.lang.String name)
        Set the color of the object with a hue name or hex code.
        default T setColor​(Hue hue)
        Set the color of the object with a Hue object.
      • Methods inherited from interface paintingcanvas.drawable.Drawable

        Modifier and Type Method Description
        default AnimationBuilder animate()
        Start animating this object.
        default T bringToFront()
        Brings the object in front of all other objects.
        java.awt.Point center​(java.awt.Graphics2D g)
        Get the object's centerpoint
        default Drawable<?> drawable()
        Get the Drawable element from this Animatable.
        default void erase()
        Erase this object from the canvas.
        int getLayer()
        Gets the current layer of the object.
        T getThis()  
        T hide()
        Hide the Object.
        void internalSetLayer​(int layer)  
        void render​(java.awt.Graphics2D g)
        Actually render the object itself
        default T sendToBack()
        Puts the object behind all other objects.
        default T setLayer​(int layer)
        Puts the object on a specific layer.
        T show()
        Show the Object
      • Methods inherited from interface paintingcanvas.drawable.Outlineable

        Modifier and Type Method Description
        java.awt.Color getOutlineColor()
        Gets the outline color
        java.awt.Stroke getOutlineStroke()
        Gets the outline stroke
        void internalSetFilled​(boolean filled)  
        void internalSetOutlineColor​(java.awt.Color color)  
        void internalSetOutlineStroke​(java.awt.Stroke stroke)  
        default T removeOutline()
        Removes the outline from the shape
        default T setFilled​(boolean filled)
        Set whether this object is filled or not
        default T setOutline​(int thickness)
        Sets the parameters for the outline of the shape, with the color defaulting to black
        default T setOutline​(int thickness, java.awt.Color color)
        Sets the parameters for the outline of the shape
        default T setOutline​(java.awt.Color color)
        Sets the outline color of the shape
      • Methods inherited from interface paintingcanvas.drawable.Positionable

        Modifier and Type Method Description
        java.awt.Point getPos()
        Get the position of the element
        double getRotation()
        Get an elements rotation
        default int getX()
        Get the X-position of the element
        default int getY()
        Get the Y-position of the element.
        double internalGetRotation()  
        void internalSetPos​(int x, int y)  
        void internalSetRotation​(double rotation)  
        default T move​(int x, int y)
        Moves this drawable by the specified x and y.
        default T moveHorizontal​(int x)
        Moves this drawable by the specified x and y.
        default T moveVertical​(int y)
        Moves this drawable by the specified x and y.
        default T rotate​(double rotation)
        Rotate this element by rotation degrees.
        default T setPos​(int x, int y)
        Set the position of the element.
        default T setRotation​(double rotation)
        Set an elements rotation to rotation degrees.
        default T setX​(int x)
        Set the X-position of the object
        default T setY​(int y)
        Set the Y-position of the element
    • Constructor Detail

      • Path

        public Path()
        Create a new Path element. The path is initially empty.
        
         Path path = new Path().lineTo(100, 100)
                               .quadTo(150, 0, 200, 100)
                               .lineTo(200, 200)
                               .lineTo(100, 100)
                               .setColor(new Color(255, 0, 0))
                               .setThickness(5);
         
      • Path

        public Path​(java.awt.Color color)
        Create a new Path element. The path is initially empty.
        
         Path path = new Path(new Color(255, 0, 0)).lineTo(100, 100)
                               .quadTo(150, 0, 200, 100)
                               .lineTo(200, 200)
                               .lineTo(100, 100)
                               .setThickness(5);
         
        Parameters:
        color - The color of the path
      • Path

        public Path​(java.lang.String color)
        Create a new Path element with a hue name or hex code
        Parameters:
        color - The name of the color (case-insensitive)
        See Also:
        Misc.stringToColor(String)
    • Method Detail

      • setStroke

        public Path setStroke​(java.awt.Stroke stroke)
        Set the stroke of the line.
        Parameters:
        stroke - a Stroke object to define this line's stroke
        Returns:
        The original object to allow method chaining
      • setThickness

        public Path setThickness​(int thickness)
        Set the thickness of the line, equivalent to setOutline(thickness);
        Parameters:
        thickness - The thickness of the line in pixels
        Returns:
        The original object to allow method chaining
      • setLineColor

        public Path setLineColor​(java.awt.Color color)
        Set the color of the line, equivalent to setOutline(thickness, color);
        Parameters:
        color - The color of the line
        Returns:
        The original object to allow method chaining
      • cursorTo

        public Path cursorTo​(int x,
                             int y)
        Move the cursor to a new position
        Parameters:
        x - The X-position of the new cursor position
        y - The Y-position of the new cursor position
        Returns:
        The original object to allow method chaining
      • lineTo

        public Path lineTo​(int x,
                           int y)
        Make a line from the current cursor position to a new position
        Parameters:
        x - The X-position of the line endpoint
        y - The Y-position of the line endpoint
        Returns:
        The original object to allow method chaining
      • quadTo

        public Path quadTo​(int x1,
                           int y1,
                           int x2,
                           int y2)
        Make a quadratic curve from the current cursor position to a new position. See Wikipedia: Bézier curve for more information
        Parameters:
        x1 - The X-position of the control point
        y1 - The Y-position of the control point
        x2 - The X-position of the curve endpoint
        y2 - The Y-position of the curve endpoint
        Returns:
        The original object to allow method chaining
      • curveTo

        public Path curveTo​(int x1,
                            int y1,
                            int x2,
                            int y2,
                            int x3,
                            int y3)
        Make a cubic curve from the current cursor position to a new position. See Wikipedia: Bézier curve for more information
        Parameters:
        x1 - The X-position of the first control point
        y1 - The Y-position of the first control point
        x2 - The X-position of the second control point
        y2 - The Y-position of the second control point
        x3 - The X-position of the curve endpoint
        y3 - The Y-position of the curve endpoint
        Returns:
        The original object to allow method chaining
      • drawOutline

        protected void drawOutline​(java.awt.Graphics2D gc)
      • drawFill

        protected void drawFill​(java.awt.Graphics2D gc)
      • center

        public java.awt.Point center​(java.awt.Graphics2D g)
        Description copied from interface: Drawable
        Get the object's centerpoint
        
         import java.awt.Point;
        
         Point p = drawable.getStartpoint();
         int x = p.x;
         int y = p.y;
         
        Parameters:
        g - Graphics context
        Returns:
        the object's center-point
      • getThis

        public Path getThis()