org.jfree.chart.plot.dial

Class StandardDialScale

Implemented Interfaces:
Cloneable, DialLayer, DialScale, PublicCloneable, Serializable

public class StandardDialScale
extends AbstractDialLayer
implements DialScale, Cloneable, PublicCloneable, Serializable

A scale for a DialPlot.

Constructor Summary

StandardDialScale()
Creates a new instance of DialScale.
StandardDialScale(double lowerBound, double upperBound, double startAngle, double extent, double majorTickIncrement, int minorTickCount)
Creates a new instance.

Method Summary

double
angleToValue(double angle)
Converts the given angle to a data value, based on this scale.
Object
clone()
Returns a clone of this instance.
void
draw(Graphics2D g2, DialPlot plot, Rectangle2D frame, Rectangle2D view)
Draws the scale on the dial plot.
boolean
equals(Object obj)
Tests this StandardDialScale for equality with an arbitrary object.
double
getExtent()
Returns the extent.
boolean
getFirstTickLabelVisible()
Returns a flag that controls whether or not the first tick label is visible.
double
getMajorTickIncrement()
Returns the increment (in data units) between major tick labels.
double
getMajorTickLength()
Returns the length factor for the major tick marks.
Paint
getMajorTickPaint()
Returns the major tick paint.
Stroke
getMajorTickStroke()
Returns the stroke used to draw the major tick marks.
int
getMinorTickCount()
Returns the number of minor tick marks between major tick marks.
double
getMinorTickLength()
Returns the length factor for the minor tick marks.
Paint
getMinorTickPaint()
Returns the paint used to draw the minor tick marks.
double
getStartAngle()
Returns the start angle for the scale (in degrees using the same orientation as Java's Arc2D class).
Font
getTickLabelFont()
Returns the font used to draw the tick labels.
NumberFormat
getTickLabelFormatter()
Returns the number formatter used to convert the tick label values to strings.
double
getTickLabelOffset()
Returns the tick label offset.
Paint
getTickLabelPaint()
Returns the paint used to draw the tick labels.
boolean
getTickLabelsVisible()
Returns true if the tick labels should be displayed, and false otherwise.
double
getTickRadius()
Returns the radius (as a percentage of the maximum space available) of the outer limit of the tick marks.
int
hashCode()
Returns a hash code for this instance.
boolean
isClippedToWindow()
Returns true to indicate that this layer should be clipped within the dial window.
void
setExtent(double extent)
Sets the extent and sends a DialLayerChangeEvent to all registered listeners.
void
setFirstTickLabelVisible(boolean visible)
Sets a flag that controls whether or not the first tick label is visible, and sends a DialLayerChangeEvent to all registered listeners.
void
setMajorTickIncrement(double increment)
Sets the increment (in data units) between major tick labels and sends a DialLayerChangeEvent to all registered listeners.
void
setMajorTickLength(double length)
Sets the length factor for the major tick marks and sends a DialLayerChangeEvent to all registered listeners.
void
setMajorTickPaint(Paint paint)
Sets the major tick paint and sends a DialLayerChangeEvent to all registered listeners.
void
setMajorTickStroke(Stroke stroke)
Sets the stroke used to draw the major tick marks and sends a DialLayerChangeEvent to all registered listeners.
void
setMinorTickCount(int count)
Sets the number of minor tick marks between major tick marks and sends a DialLayerChangeEvent to all registered listeners.
void
setMinorTickLength(double length)
Sets the length factor for the minor tick marks and sends a DialLayerChangeEvent to all registered listeners.
void
setMinorTickPaint(Paint paint)
Sets the paint used to draw the minor tick marks and sends a DialLayerChangeEvent to all registered listeners.
void
setStartAngle(double angle)
Sets the start angle for the scale and sends a DialLayerChangeEvent to all registered listeners.
void
setTickLabelFont(Font font)
Sets the font used to display the tick labels and sends a DialLayerChangeEvent to all registered listeners.
void
setTickLabelFormatter(NumberFormat formatter)
Sets the number formatter used to convert the tick label values to strings, and sends a DialLayerChangeEvent to all registered listeners.
void
setTickLabelOffset(double offset)
Sets the tick label offset and sends a DialLayerChangeEvent to all registered listeners.
void
setTickLabelPaint(Paint paint)
Sets the paint used to draw the tick labels and sends a DialLayerChangeEvent to all registered listeners.
void
setTickLabelsVisible(boolean visible)
Sets the flag that controls whether or not the tick labels are displayed, and sends a DialLayerChangeEvent to all registered listeners.
void
setTickRadius(double radius)
Sets the tick radius and sends a DialLayerChangeEvent to all registered listeners.
double
valueToAngle(double value)
Converts a data value to an angle against this scale.

Methods inherited from class org.jfree.chart.plot.dial.AbstractDialLayer

addChangeListener, clone, equals, hasListener, hashCode, isVisible, notifyListeners, removeChangeListener, setVisible

Constructor Details

StandardDialScale

public StandardDialScale()
Creates a new instance of DialScale.

StandardDialScale

public StandardDialScale(double lowerBound,
                         double upperBound,
                         double startAngle,
                         double extent,
                         double majorTickIncrement,
                         int minorTickCount)
Creates a new instance.
Parameters:
lowerBound - the lower bound of the scale.
upperBound - the upper bound of the scale.
startAngle - the start angle (in degrees, using the same orientation as Java's Arc2D class).
extent - the extent (in degrees, counter-clockwise).
majorTickIncrement - the interval between major tick marks
minorTickCount - the number of minor ticks between major tick marks.

Method Details

angleToValue

public double angleToValue(double angle)
Converts the given angle to a data value, based on this scale.
Specified by:
angleToValue in interface DialScale
Parameters:
angle - the angle.
Returns:
The data value.

clone

public Object clone()
            throws CloneNotSupportedException
Returns a clone of this instance.
Overrides:
clone in interface AbstractDialLayer
Returns:
A clone.

draw

public void draw(Graphics2D g2,
                 DialPlot plot,
                 Rectangle2D frame,
                 Rectangle2D view)
Draws the scale on the dial plot.
Specified by:
draw in interface DialLayer
Parameters:
g2 - the graphics target (null not permitted).
plot - the dial plot (null not permitted).
frame - the reference frame that is used to construct the geometry of the plot (null not permitted).
view - the visible part of the plot (null not permitted).

equals

public boolean equals(Object obj)
Tests this StandardDialScale for equality with an arbitrary object.
Overrides:
equals in interface AbstractDialLayer
Parameters:
obj - the object (null permitted).
Returns:
A boolean.

getExtent

public double getExtent()
Returns the extent.
Returns:
The extent.

getFirstTickLabelVisible

public boolean getFirstTickLabelVisible()
Returns a flag that controls whether or not the first tick label is visible.
Returns:
A boolean.

getMajorTickIncrement

public double getMajorTickIncrement()
Returns the increment (in data units) between major tick labels.
Returns:
The increment between major tick labels.

getMajorTickLength

public double getMajorTickLength()
Returns the length factor for the major tick marks. The value is subtracted from the tick radius to determine the inner starting point for the tick marks.
Returns:
The length factor.

getMajorTickPaint

public Paint getMajorTickPaint()
Returns the major tick paint.
Returns:
The major tick paint (never null).

getMajorTickStroke

public Stroke getMajorTickStroke()
Returns the stroke used to draw the major tick marks.
Returns:
The stroke (never null).

getMinorTickCount

public int getMinorTickCount()
Returns the number of minor tick marks between major tick marks.
Returns:
The number of minor tick marks between major tick marks.

getMinorTickLength

public double getMinorTickLength()
Returns the length factor for the minor tick marks. The value is subtracted from the tick radius to determine the inner starting point for the tick marks.
Returns:
The length factor.

getMinorTickPaint

public Paint getMinorTickPaint()
Returns the paint used to draw the minor tick marks.
Returns:
The paint (never null).

getStartAngle

public double getStartAngle()
Returns the start angle for the scale (in degrees using the same orientation as Java's Arc2D class).
Returns:
The start angle.

getTickLabelFont

public Font getTickLabelFont()
Returns the font used to draw the tick labels.
Returns:
The font (never null).

getTickLabelFormatter

public NumberFormat getTickLabelFormatter()
Returns the number formatter used to convert the tick label values to strings.
Returns:
The formatter (never null).

getTickLabelOffset

public double getTickLabelOffset()
Returns the tick label offset.
Returns:
The tick label offset.

getTickLabelPaint

public Paint getTickLabelPaint()
Returns the paint used to draw the tick labels.
Returns:
The paint (null not permitted).

getTickLabelsVisible

public boolean getTickLabelsVisible()
Returns true if the tick labels should be displayed, and false otherwise.
Returns:
A boolean.

getTickRadius

public double getTickRadius()
Returns the radius (as a percentage of the maximum space available) of the outer limit of the tick marks.
Returns:
The tick radius.

hashCode

public int hashCode()
Returns a hash code for this instance.
Overrides:
hashCode in interface AbstractDialLayer
Returns:
A hash code.

isClippedToWindow

public boolean isClippedToWindow()
Returns true to indicate that this layer should be clipped within the dial window.
Specified by:
isClippedToWindow in interface DialLayer
Returns:
true.

setExtent

public void setExtent(double extent)
Sets the extent and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
extent - the extent.
See Also:
getExtent()

setFirstTickLabelVisible

public void setFirstTickLabelVisible(boolean visible)
Sets a flag that controls whether or not the first tick label is visible, and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
visible - the new flag value.

setMajorTickIncrement

public void setMajorTickIncrement(double increment)
Sets the increment (in data units) between major tick labels and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
increment - the increment.

setMajorTickLength

public void setMajorTickLength(double length)
Sets the length factor for the major tick marks and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
length - the length.

setMajorTickPaint

public void setMajorTickPaint(Paint paint)
Sets the major tick paint and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
paint - the paint (null not permitted).

setMajorTickStroke

public void setMajorTickStroke(Stroke stroke)
Sets the stroke used to draw the major tick marks and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
stroke - the stroke (null not permitted).

setMinorTickCount

public void setMinorTickCount(int count)
Sets the number of minor tick marks between major tick marks and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
count - the count.

setMinorTickLength

public void setMinorTickLength(double length)
Sets the length factor for the minor tick marks and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
length - the length.

setMinorTickPaint

public void setMinorTickPaint(Paint paint)
Sets the paint used to draw the minor tick marks and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
paint - the paint (null not permitted).

setStartAngle

public void setStartAngle(double angle)
Sets the start angle for the scale and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
angle - the angle (in degrees).

setTickLabelFont

public void setTickLabelFont(Font font)
Sets the font used to display the tick labels and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
font - the font (null not permitted).

setTickLabelFormatter

public void setTickLabelFormatter(NumberFormat formatter)
Sets the number formatter used to convert the tick label values to strings, and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
formatter - the formatter (null not permitted).

setTickLabelOffset

public void setTickLabelOffset(double offset)
Sets the tick label offset and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
offset - the offset.

setTickLabelPaint

public void setTickLabelPaint(Paint paint)
Sets the paint used to draw the tick labels and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
paint - the paint (null not permitted).

setTickLabelsVisible

public void setTickLabelsVisible(boolean visible)
Sets the flag that controls whether or not the tick labels are displayed, and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
visible - the new flag value.

setTickRadius

public void setTickRadius(double radius)
Sets the tick radius and sends a DialLayerChangeEvent to all registered listeners.
Parameters:
radius - the radius.

valueToAngle

public double valueToAngle(double value)
Converts a data value to an angle against this scale.
Specified by:
valueToAngle in interface DialScale
Parameters:
value - the data value.
Returns:
The angle (in degrees, using the same specification as Java's Arc2D class).