Class DefaultDrawingSupplier

java.lang.Object
org.jfree.chart.plot.DefaultDrawingSupplier
All Implemented Interfaces:
Serializable, Cloneable, DrawingSupplier, PublicCloneable

public class DefaultDrawingSupplier extends Object implements DrawingSupplier, Cloneable, PublicCloneable, Serializable
A default implementation of the DrawingSupplier interface. All Plot instances have a new instance of this class installed by default.
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      For serialization.
      See Also:
    • DEFAULT_PAINT_SEQUENCE

      public static final Paint[] DEFAULT_PAINT_SEQUENCE
      The default fill paint sequence.
    • DEFAULT_OUTLINE_PAINT_SEQUENCE

      public static final Paint[] DEFAULT_OUTLINE_PAINT_SEQUENCE
      The default outline paint sequence.
    • DEFAULT_FILL_PAINT_SEQUENCE

      public static final Paint[] DEFAULT_FILL_PAINT_SEQUENCE
      The default fill paint sequence.
    • DEFAULT_STROKE_SEQUENCE

      public static final Stroke[] DEFAULT_STROKE_SEQUENCE
      The default stroke sequence.
    • DEFAULT_OUTLINE_STROKE_SEQUENCE

      public static final Stroke[] DEFAULT_OUTLINE_STROKE_SEQUENCE
      The default outline stroke sequence.
    • DEFAULT_SHAPE_SEQUENCE

      public static final Shape[] DEFAULT_SHAPE_SEQUENCE
      The default shape sequence.
    • paintSequence

      private transient Paint[] paintSequence
      The paint sequence.
    • paintIndex

      private int paintIndex
      The current paint index.
    • outlinePaintSequence

      private transient Paint[] outlinePaintSequence
      The outline paint sequence.
    • outlinePaintIndex

      private int outlinePaintIndex
      The current outline paint index.
    • fillPaintSequence

      private transient Paint[] fillPaintSequence
      The fill paint sequence.
    • fillPaintIndex

      private int fillPaintIndex
      The current fill paint index.
    • strokeSequence

      private transient Stroke[] strokeSequence
      The stroke sequence.
    • strokeIndex

      private int strokeIndex
      The current stroke index.
    • outlineStrokeSequence

      private transient Stroke[] outlineStrokeSequence
      The outline stroke sequence.
    • outlineStrokeIndex

      private int outlineStrokeIndex
      The current outline stroke index.
    • shapeSequence

      private transient Shape[] shapeSequence
      The shape sequence.
    • shapeIndex

      private int shapeIndex
      The current shape index.
  • Constructor Details

    • DefaultDrawingSupplier

      public DefaultDrawingSupplier()
      Creates a new supplier, with default sequences for fill paint, outline paint, stroke and shapes.
    • DefaultDrawingSupplier

      public DefaultDrawingSupplier(Paint[] paintSequence, Paint[] outlinePaintSequence, Stroke[] strokeSequence, Stroke[] outlineStrokeSequence, Shape[] shapeSequence)
      Creates a new supplier.
      Parameters:
      paintSequence - the fill paint sequence.
      outlinePaintSequence - the outline paint sequence.
      strokeSequence - the stroke sequence.
      outlineStrokeSequence - the outline stroke sequence.
      shapeSequence - the shape sequence.
    • DefaultDrawingSupplier

      public DefaultDrawingSupplier(Paint[] paintSequence, Paint[] fillPaintSequence, Paint[] outlinePaintSequence, Stroke[] strokeSequence, Stroke[] outlineStrokeSequence, Shape[] shapeSequence)
      Creates a new supplier.
      Parameters:
      paintSequence - the paint sequence.
      fillPaintSequence - the fill paint sequence.
      outlinePaintSequence - the outline paint sequence.
      strokeSequence - the stroke sequence.
      outlineStrokeSequence - the outline stroke sequence.
      shapeSequence - the shape sequence.
  • Method Details

    • getNextPaint

      public Paint getNextPaint()
      Returns the next paint in the sequence.
      Specified by:
      getNextPaint in interface DrawingSupplier
      Returns:
      The paint.
    • getNextOutlinePaint

      public Paint getNextOutlinePaint()
      Returns the next outline paint in the sequence.
      Specified by:
      getNextOutlinePaint in interface DrawingSupplier
      Returns:
      The paint.
    • getNextFillPaint

      public Paint getNextFillPaint()
      Returns the next fill paint in the sequence.
      Specified by:
      getNextFillPaint in interface DrawingSupplier
      Returns:
      The paint.
    • getNextStroke

      public Stroke getNextStroke()
      Returns the next stroke in the sequence.
      Specified by:
      getNextStroke in interface DrawingSupplier
      Returns:
      The stroke.
    • getNextOutlineStroke

      public Stroke getNextOutlineStroke()
      Returns the next outline stroke in the sequence.
      Specified by:
      getNextOutlineStroke in interface DrawingSupplier
      Returns:
      The stroke.
    • getNextShape

      public Shape getNextShape()
      Returns the next shape in the sequence.
      Specified by:
      getNextShape in interface DrawingSupplier
      Returns:
      The shape.
    • createStandardSeriesShapes

      public static Shape[] createStandardSeriesShapes()
      Creates an array of standard shapes to display for the items in series on charts.
      Returns:
      The array of shapes.
    • equals

      public boolean equals(Object obj)
      Tests this object for equality with another object.
      Overrides:
      equals in class Object
      Parameters:
      obj - the object (null permitted).
      Returns:
      A boolean.
    • equalShapes

      private boolean equalShapes(Shape[] s1, Shape[] s2)
      A utility method for testing the equality of two arrays of shapes.
      Parameters:
      s1 - the first array (null permitted).
      s2 - the second array (null permitted).
      Returns:
      A boolean.
    • writeObject

      private void writeObject(ObjectOutputStream stream) throws IOException
      Handles serialization.
      Parameters:
      stream - the output stream.
      Throws:
      IOException - if there is an I/O problem.
    • readObject

      private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
      Restores a serialized object.
      Parameters:
      stream - the input stream.
      Throws:
      IOException - if there is an I/O problem.
      ClassNotFoundException - if there is a problem loading a class.
    • intArray

      private static int[] intArray(double a, double b, double c)
      Helper method to avoid lots of explicit casts in getShape(). Returns an array containing the provided doubles cast to ints.
      Parameters:
      a - x
      b - y
      c - z
      Returns:
      int[3] with converted params.
    • intArray

      private static int[] intArray(double a, double b, double c, double d)
      Helper method to avoid lots of explicit casts in getShape(). Returns an array containing the provided doubles cast to ints.
      Parameters:
      a - x
      b - y
      c - z
      d - t
      Returns:
      int[4] with converted params.
    • clone

      public Object clone() throws CloneNotSupportedException
      Returns a clone.
      Specified by:
      clone in interface PublicCloneable
      Overrides:
      clone in class Object
      Returns:
      A clone.
      Throws:
      CloneNotSupportedException - if a component of the supplier does not support cloning.