Class Subpath


  • public class Subpath
    extends java.lang.Object
    As subpath is a part of a path comprising a sequence of connected segments.
    Since:
    5.5.6
    • Field Detail

      • startPoint

        private Point2D startPoint
      • segments

        private java.util.List<Shape> segments
      • closed

        private boolean closed
    • Constructor Detail

      • Subpath

        public Subpath()
      • Subpath

        public Subpath​(Subpath subpath)
        Copy constuctor.
        Parameters:
        subpath -
      • Subpath

        public Subpath​(Point2D startPoint)
        Constructs a new subpath starting at the given point.
      • Subpath

        public Subpath​(float startPointX,
                       float startPointY)
        Constructs a new subpath starting at the given point.
    • Method Detail

      • setStartPoint

        public void setStartPoint​(Point2D startPoint)
        Sets the start point of the subpath.
        Parameters:
        startPoint -
      • setStartPoint

        public void setStartPoint​(float x,
                                  float y)
        Sets the start point of the subpath.
        Parameters:
        x -
        y -
      • getStartPoint

        public Point2D getStartPoint()
        Returns:
        The point this subpath starts at.
      • getLastPoint

        public Point2D getLastPoint()
        Returns:
        The last point of the subpath.
      • addSegment

        public void addSegment​(Shape segment)
        Adds a segment to the subpath. Note: each new segment shall start at the end of the previous segment.
        Parameters:
        segment - new segment.
      • getSegments

        public java.util.List<Shape> getSegments()
        Returns:
        List comprising all the segments the subpath made on.
      • isEmpty

        public boolean isEmpty()
        Checks whether subpath is empty or not.
        Returns:
        true if the subpath is empty, false otherwise.
      • isSinglePointOpen

        public boolean isSinglePointOpen()
        Returns:
        true if this subpath contains only one point and it is not closed, false otherwise
      • isSinglePointClosed

        public boolean isSinglePointClosed()
      • isClosed

        public boolean isClosed()
        Returns a boolean value indicating whether the subpath must be closed or not. Ignore this value if the subpath is a rectangle because in this case it is already closed (of course if you paint the path using re operator)
        Returns:
        boolean value indicating whether the path must be closed or not.
        Since:
        5.5.6
      • setClosed

        public void setClosed​(boolean closed)
      • isDegenerate

        public boolean isDegenerate()
        Returns a boolean indicating whether the subpath is degenerate or not. A degenerate subpath is the subpath consisting of a single-point closed path or of two or more points at the same coordinates.
        Returns:
        boolean value indicating whether the path is degenerate or not.
        Since:
        5.5.6
      • getPiecewiseLinearApproximation

        public java.util.List<Point2D> getPiecewiseLinearApproximation()
        Returns:
        List containing points of piecewise linear approximation for this subpath.
        Since:
        5.5.6