Class PolylineSvgNodeRenderer

    • Field Detail

      • previousOrientationVector

        private Vector previousOrientationVector
        Orientation vector which is used for marker angle calculation.
      • points

        protected java.util.List<Point> points
        A List of Point objects representing the path to be drawn by the polyline tag.
    • Constructor Detail

      • PolylineSvgNodeRenderer

        public PolylineSvgNodeRenderer()
    • Method Detail

      • getPoints

        protected java.util.List<Point> getPoints()
        Returns a list of Point objects representing the path to be drawn by the polyline tag.
        Returns:
        a list of Point objects
      • setPoints

        protected void setPoints​(java.lang.String pointsAttribute)
        Parses a string of space separated x,y pairs into individual Point objects and appends them topoints. Throws an SvgProcessingException if pointsAttribute does not have a valid list of numerical x,y pairs.
        Parameters:
        pointsAttribute - A string of space separated x,y value pairs
      • getObjectBoundingBox

        public Rectangle getObjectBoundingBox​(SvgDrawContext context)
        Description copied from interface: ISvgNodeRenderer
        Calculates the current object bounding box.
        Specified by:
        getObjectBoundingBox in interface ISvgNodeRenderer
        Parameters:
        context - the current context, for instance it contains current viewport and available font data
        Returns:
        the Rectangle representing the current object's bounding box, or null if bounding box is undefined
      • doDraw

        protected void doDraw​(SvgDrawContext context)
        Draws this element to a canvas-like object maintained in the context.
        Specified by:
        doDraw in class AbstractSvgNodeRenderer
        Parameters:
        context - the object that knows the place to draw this element and maintains its state
      • drawMarker

        public void drawMarker​(SvgDrawContext context,
                               MarkerVertexType markerVertexType)
        Description copied from interface: IMarkerCapable
        Draws a marker in the specified context. The marker is drawn on the vertices defined according to the given marker type.
        Specified by:
        drawMarker in interface IMarkerCapable
        Parameters:
        context - the object that knows the place to draw this element and maintains its state
        markerVertexType - type of marker that determine on which vertices of the given element marker should be drawn
      • getAutoOrientAngle

        public double getAutoOrientAngle​(MarkerSvgNodeRenderer marker,
                                         boolean reverse)
        Description copied from interface: IMarkerCapable
        Calculates marker orientation angle if orient attribute is set to auto
        Specified by:
        getAutoOrientAngle in interface IMarkerCapable
        Parameters:
        marker - marker for which the rotation angle should be calculated
        reverse - indicates that the resulting angle should be rotated 180 degrees
        Returns:
        marker orientation angle so that its positive x-axis is pointing in the direction of the path at the point it is placed