Class CompassPlot

    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        For serialization.
        See Also:
        Constant Field Values
      • DEFAULT_LABEL_FONT

        public static final java.awt.Font DEFAULT_LABEL_FONT
        The default label font.
      • NO_LABELS

        public static final int NO_LABELS
        A constant for the label type.
        See Also:
        Constant Field Values
      • VALUE_LABELS

        public static final int VALUE_LABELS
        A constant for the label type.
        See Also:
        Constant Field Values
      • labelType

        private int labelType
        The label type (NO_LABELS, VALUE_LABELS).
      • labelFont

        private java.awt.Font labelFont
        The label font.
      • drawBorder

        private boolean drawBorder
        A flag that controls whether or not a border is drawn.
      • roseHighlightPaint

        private transient java.awt.Paint roseHighlightPaint
        The rose highlight paint.
      • rosePaint

        private transient java.awt.Paint rosePaint
        The rose paint.
      • roseCenterPaint

        private transient java.awt.Paint roseCenterPaint
        The rose center paint.
      • compassFont

        private java.awt.Font compassFont
        The compass font.
      • circle1

        private transient java.awt.geom.Ellipse2D circle1
        A working shape.
      • circle2

        private transient java.awt.geom.Ellipse2D circle2
        A working shape.
      • a1

        private transient java.awt.geom.Area a1
        A working area.
      • a2

        private transient java.awt.geom.Area a2
        A working area.
      • rect1

        private transient java.awt.geom.Rectangle2D rect1
        A working shape.
      • datasets

        private ValueDataset[] datasets
        An array of value datasets.
      • seriesNeedle

        private MeterNeedle[] seriesNeedle
        An array of needles.
      • localizationResources

        protected static java.util.ResourceBundle localizationResources
        The resourceBundle for the localization.
      • revolutionDistance

        protected double revolutionDistance
        The count to complete one revolution. Can be arbitrarily set For degrees (the default) it is 360, for radians this is 2*Pi, etc
    • Constructor Detail

      • CompassPlot

        public CompassPlot()
        Default constructor.
      • CompassPlot

        public CompassPlot​(ValueDataset dataset)
        Constructs a new compass plot.
        Parameters:
        dataset - the dataset for the plot (null permitted).
    • Method Detail

      • getLabelFont

        public java.awt.Font getLabelFont()
        Returns the label font.
        Returns:
        The label font.
        See Also:
        setLabelFont(Font)
      • setLabelFont

        public void setLabelFont​(java.awt.Font font)
        Sets the label font and sends a PlotChangeEvent to all registered listeners.
        Parameters:
        font - the new label font.
        See Also:
        getLabelFont()
      • getRosePaint

        public java.awt.Paint getRosePaint()
        Returns the paint used to fill the outer circle of the compass.
        Returns:
        The paint (never null).
        See Also:
        setRosePaint(Paint)
      • setRosePaint

        public void setRosePaint​(java.awt.Paint paint)
        Sets the paint used to fill the outer circle of the compass, and sends a PlotChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null not permitted).
        See Also:
        getRosePaint()
      • getRoseCenterPaint

        public java.awt.Paint getRoseCenterPaint()
        Returns the paint used to fill the inner background area of the compass.
        Returns:
        The paint (never null).
        See Also:
        setRoseCenterPaint(Paint)
      • setRoseCenterPaint

        public void setRoseCenterPaint​(java.awt.Paint paint)
        Sets the paint used to fill the inner background area of the compass, and sends a PlotChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null not permitted).
        See Also:
        getRoseCenterPaint()
      • getRoseHighlightPaint

        public java.awt.Paint getRoseHighlightPaint()
        Returns the paint used to draw the circles, symbols and labels on the compass.
        Returns:
        The paint (never null).
        See Also:
        setRoseHighlightPaint(Paint)
      • setRoseHighlightPaint

        public void setRoseHighlightPaint​(java.awt.Paint paint)
        Sets the paint used to draw the circles, symbols and labels of the compass, and sends a PlotChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null not permitted).
        See Also:
        getRoseHighlightPaint()
      • getDrawBorder

        public boolean getDrawBorder()
        Returns a flag that controls whether or not a border is drawn.
        Returns:
        The flag.
        See Also:
        setDrawBorder(boolean)
      • setDrawBorder

        public void setDrawBorder​(boolean status)
        Sets a flag that controls whether or not a border is drawn.
        Parameters:
        status - the flag status.
        See Also:
        getDrawBorder()
      • setSeriesPaint

        public void setSeriesPaint​(int series,
                                   java.awt.Paint paint)
        Sets the series paint.
        Parameters:
        series - the series index.
        paint - the paint.
        See Also:
        setSeriesOutlinePaint(int, Paint)
      • setSeriesOutlinePaint

        public void setSeriesOutlinePaint​(int series,
                                          java.awt.Paint p)
        Sets the series outline paint.
        Parameters:
        series - the series index.
        p - the paint.
        See Also:
        setSeriesPaint(int, Paint)
      • setSeriesOutlineStroke

        public void setSeriesOutlineStroke​(int series,
                                           java.awt.Stroke stroke)
        Sets the series outline stroke.
        Parameters:
        series - the series index.
        stroke - the stroke.
        See Also:
        setSeriesOutlinePaint(int, Paint)
      • setSeriesNeedle

        public void setSeriesNeedle​(int type)
        Sets the needle type.
        Parameters:
        type - the type.
        See Also:
        setSeriesNeedle(int, int)
      • setSeriesNeedle

        public void setSeriesNeedle​(int index,
                                    MeterNeedle needle)
        Sets the needle for a series and sends a PlotChangeEvent to all registered listeners.
        Parameters:
        index - the series index.
        needle - the needle.
      • getDatasets

        public ValueDataset[] getDatasets()
        Returns an array of dataset references for the plot.
        Returns:
        The dataset for the plot, cast as a ValueDataset.
        See Also:
        addDataset(ValueDataset)
      • addDataset

        public void addDataset​(ValueDataset dataset,
                               MeterNeedle needle)
        Adds a dataset to the compass.
        Parameters:
        dataset - the new dataset (null ignored).
        needle - the needle (null permitted).
      • draw

        public void draw​(java.awt.Graphics2D g2,
                         java.awt.geom.Rectangle2D area,
                         java.awt.geom.Point2D anchor,
                         PlotState parentState,
                         PlotRenderingInfo info)
        Draws the plot on a Java 2D graphics device (such as the screen or a printer).
        Specified by:
        draw in class Plot
        Parameters:
        g2 - the graphics device.
        area - the area within which the plot should be drawn.
        anchor - the anchor point (null permitted).
        parentState - the state from the parent plot, if there is one.
        info - collects info about the drawing.
      • getPlotType

        public java.lang.String getPlotType()
        Returns a short string describing the type of plot.
        Specified by:
        getPlotType in class Plot
        Returns:
        A string describing the plot.
      • zoom

        public void zoom​(double percent)
        No zooming is implemented for compass plot, so this method is empty.
        Overrides:
        zoom in class Plot
        Parameters:
        percent - the zoom amount.
      • getCompassFont

        protected java.awt.Font getCompassFont​(int radius)
        Returns the font for the compass, adjusted for the size of the plot.
        Parameters:
        radius - the radius.
        Returns:
        The font.
      • equals

        public boolean equals​(java.lang.Object obj)
        Tests an object for equality with this plot.
        Overrides:
        equals in class Plot
        Parameters:
        obj - the object (null permitted).
        Returns:
        A boolean.
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Returns a clone of the plot.
        Specified by:
        clone in interface PublicCloneable
        Overrides:
        clone in class Plot
        Returns:
        A clone.
        Throws:
        java.lang.CloneNotSupportedException - this class will not throw this exception, but subclasses (if any) might.
      • setRevolutionDistance

        public void setRevolutionDistance​(double size)
        Sets the count to complete one revolution. Can be arbitrarily set For degrees (the default) it is 360, for radians this is 2*Pi, etc
        Parameters:
        size - the count to complete one revolution.
        See Also:
        getRevolutionDistance()
      • getRevolutionDistance

        public double getRevolutionDistance()
        Gets the count to complete one revolution.
        Returns:
        The count to complete one revolution.
        See Also:
        setRevolutionDistance(double)
      • writeObject

        private void writeObject​(java.io.ObjectOutputStream stream)
                          throws java.io.IOException
        Provides serialization support.
        Parameters:
        stream - the output stream.
        Throws:
        java.io.IOException - if there is an I/O error.
      • readObject

        private void readObject​(java.io.ObjectInputStream stream)
                         throws java.io.IOException,
                                java.lang.ClassNotFoundException
        Provides serialization support.
        Parameters:
        stream - the input stream.
        Throws:
        java.io.IOException - if there is an I/O error.
        java.lang.ClassNotFoundException - if there is a classpath problem.