Package net.sf.jasperreports.charts.base
Class JRBaseMeterPlot
- java.lang.Object
-
- net.sf.jasperreports.charts.base.JRBaseChartPlot
-
- net.sf.jasperreports.charts.base.JRBaseMeterPlot
-
- All Implemented Interfaces:
Serializable
,Cloneable
,JRChartPlot
,JRMeterPlot
,JRChangeEventsSupport
,JRCloneable
- Direct Known Subclasses:
JRDesignMeterPlot
public class JRBaseMeterPlot extends JRBaseChartPlot implements JRMeterPlot
An immutable representation of the layout of a Meter chart.- Author:
- Barry Klawans (bklawans@users.sourceforge.net)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sf.jasperreports.charts.base.JRBaseChartPlot
JRBaseChartPlot.JRBaseSeriesColor
-
Nested classes/interfaces inherited from interface net.sf.jasperreports.charts.JRChartPlot
JRChartPlot.JRSeriesColor
-
-
Field Summary
Fields Modifier and Type Field Description protected JRDataRange
dataRange
The range displayed by the Meter.protected List<JRMeterInterval>
intervals
The defined intervals for the Meter.protected Integer
meterAngle
The extend of the meter face in degrees.protected Color
meterBackgroundColor
The color to use for the face of the meter.protected Color
needleColor
The color to use for the pointer on the meter.protected MeterShapeEnum
shape
The shape to use when drawing the Meter.protected Color
tickColor
The color to use for each tick on the face of the meter.protected Integer
tickCount
The number of major ticks on the meter scale.protected Double
tickInterval
How often to draw ticks around the face of the meter.protected JRFont
tickLabelFont
The font to use when writing tick labels.protected String
units
Optional description of what the meter is displaying.protected JRValueDisplay
valueDisplay
Formatting information for the textual display of the value.-
Fields inherited from class net.sf.jasperreports.charts.base.JRBaseChartPlot
backcolor, backgroundAlpha, chart, foregroundAlpha, labelRotation, orientation, PROPERTY_BACKCOLOR, PROPERTY_BACKGROUND_ALPHA, PROPERTY_FOREGROUND_ALPHA, PROPERTY_LABEL_ROTATION, PROPERTY_ORIENTATION, PROPERTY_SERIES_COLORS, seriesColors
-
-
Constructor Summary
Constructors Constructor Description JRBaseMeterPlot(JRChartPlot plot, JRChart chart)
Constructs a copy of an existing meter.JRBaseMeterPlot(JRMeterPlot meterPlot, ChartsBaseObjectFactory factory)
Constructs a copy of an existing meter and registers all expressions maintained by the meter plot with a factory.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
clone(JRChart parentChart)
void
collectExpressions(ChartsExpressionCollector collector)
Adds all the expression used by this plot with the specified collector.JRDataRange
getDataRange()
Returns the range of values that the Meter can display.List<JRMeterInterval>
getIntervals()
Returns a list of all the intervals contained in this Meter.Integer
getMeterAngle()
Returns the size of the Meter face in degrees.Color
getMeterBackgroundColor()
Returns the background color of the meter.Color
getNeedleColor()
Returns the color used when drawing the meter's pointer.MeterShapeEnum
getShape()
Returns the shape of the Meter.Color
getTickColor()
Returns the color used when drawing tick marks on the meter.Integer
getTickCount()
Returns the number of major ticks on the meter scale.Double
getTickInterval()
Returns the spacing between the ticks on the face of the meter.JRFont
getTickLabelFont()
Returns the font used to write tick labels on the meter.String
getUnits()
Returns the name of the units that the Meter is displaying.JRValueDisplay
getValueDisplay()
Returns a description of how the value of the Meter is displayed.-
Methods inherited from class net.sf.jasperreports.charts.base.JRBaseChartPlot
addSeriesColor, clearSeriesColors, clone, getBackcolor, getBackgroundAlpha, getChart, getEventSupport, getForegroundAlpha, getLabelRotation, getOrientation, getOwnBackcolor, getSeriesColors, getStyleResolver, setBackcolor, setBackgroundAlpha, setForegroundAlpha, setLabelRotation, setOrientation, setSeriesColors
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.jasperreports.charts.JRChartPlot
addSeriesColor, clearSeriesColors, getBackcolor, getBackgroundAlpha, getChart, getForegroundAlpha, getLabelRotation, getOrientation, getOwnBackcolor, getSeriesColors, setBackcolor, setBackgroundAlpha, setForegroundAlpha, setLabelRotation, setOrientation, setSeriesColors
-
Methods inherited from interface net.sf.jasperreports.engine.JRCloneable
clone
-
-
-
-
Field Detail
-
dataRange
protected JRDataRange dataRange
The range displayed by the Meter.
-
valueDisplay
protected JRValueDisplay valueDisplay
Formatting information for the textual display of the value.
-
shape
protected MeterShapeEnum shape
The shape to use when drawing the Meter. Only applied if the meter is over 180 degrees wide and less than a full circle.
-
intervals
protected List<JRMeterInterval> intervals
The defined intervals for the Meter. Each interval indicates a subsection of the meter and a color to use for that section.
-
meterAngle
protected Integer meterAngle
The extend of the meter face in degrees. It will always be centered around the straight up position.
-
units
protected String units
Optional description of what the meter is displaying. It will be appended to the textual representation of the value.
-
tickInterval
protected Double tickInterval
How often to draw ticks around the face of the meter. The interval is relative to the meter range - if the meter displays 100 to 200 and the tickInterval is 20, there will be 4 ticks at 120, 140, 160 and 180.
-
meterBackgroundColor
protected Color meterBackgroundColor
The color to use for the face of the meter.
-
needleColor
protected Color needleColor
The color to use for the pointer on the meter.
-
tickColor
protected Color tickColor
The color to use for each tick on the face of the meter.
-
tickCount
protected Integer tickCount
The number of major ticks on the meter scale.
-
tickLabelFont
protected JRFont tickLabelFont
The font to use when writing tick labels.
-
-
Constructor Detail
-
JRBaseMeterPlot
public JRBaseMeterPlot(JRChartPlot plot, JRChart chart)
Constructs a copy of an existing meter.- Parameters:
plot
- the plot to copy
-
JRBaseMeterPlot
public JRBaseMeterPlot(JRMeterPlot meterPlot, ChartsBaseObjectFactory factory)
Constructs a copy of an existing meter and registers all expressions maintained by the meter plot with a factory.- Parameters:
meterPlot
- the meter to copyfactory
- the factory to register expressions with
-
-
Method Detail
-
getDataRange
public JRDataRange getDataRange()
Description copied from interface:JRMeterPlot
Returns the range of values that the Meter can display.- Specified by:
getDataRange
in interfaceJRMeterPlot
- Returns:
- the range of values that the Meter can display
-
getValueDisplay
public JRValueDisplay getValueDisplay()
Description copied from interface:JRMeterPlot
Returns a description of how the value of the Meter is displayed. This includes any font and color information, the location of the value, a formatting mask and an optional "units" string to append to the value.- Specified by:
getValueDisplay
in interfaceJRMeterPlot
- Returns:
- a description of how the value of the Meter is displayed.
-
getShape
public MeterShapeEnum getShape()
Description copied from interface:JRMeterPlot
Returns the shape of the Meter. The shape is only relevant if the Meter face is over 180 degrees wide, and controls how the portion of the circle described by the Meter but outside of the Meter is drawn. (If the meter is 240 degrees wide the shape setting controls how the remaining 120 degrees is displayed.)
The value returned is one of the shape constants defined inMeterShapeEnum
.- Specified by:
getShape
in interfaceJRMeterPlot
- Returns:
- a description of how the value of the Meter is displayed.
-
getIntervals
public List<JRMeterInterval> getIntervals()
Description copied from interface:JRMeterPlot
Returns a list of all the intervals contained in this Meter. The return value is nevernull
but can be an empty list. Each element in the list is aJRMeterInterval
- Specified by:
getIntervals
in interfaceJRMeterPlot
- Returns:
- a list of all the intervals contained in this Meter
-
getMeterAngle
public Integer getMeterAngle()
Description copied from interface:JRMeterPlot
Returns the size of the Meter face in degrees. By default the meter dial is a semicircle.- Specified by:
getMeterAngle
in interfaceJRMeterPlot
- Returns:
- the size of the Meter face in degrees
-
getUnits
public String getUnits()
Description copied from interface:JRMeterPlot
Returns the name of the units that the Meter is displaying. This value will be appended to the value when displayed.- Specified by:
getUnits
in interfaceJRMeterPlot
- Returns:
- the name of the units that the Meter is displaying
-
getTickInterval
public Double getTickInterval()
Description copied from interface:JRMeterPlot
Returns the spacing between the ticks on the face of the meter. The spacing is relative to the range that the meter is displaying - if the range is 0 to 500 and the tick interval is 50 then 10 ticks will be displayed.- Specified by:
getTickInterval
in interfaceJRMeterPlot
- Returns:
- the spacing between the ticks on the face of the meter
-
getMeterBackgroundColor
public Color getMeterBackgroundColor()
Description copied from interface:JRMeterPlot
Returns the background color of the meter. This is the color of the meter's face.- Specified by:
getMeterBackgroundColor
in interfaceJRMeterPlot
- Returns:
- the background color of the meter.
-
getNeedleColor
public Color getNeedleColor()
Description copied from interface:JRMeterPlot
Returns the color used when drawing the meter's pointer.- Specified by:
getNeedleColor
in interfaceJRMeterPlot
- Returns:
- the color used when drawing the meter's pointer
-
getTickColor
public Color getTickColor()
Description copied from interface:JRMeterPlot
Returns the color used when drawing tick marks on the meter.- Specified by:
getTickColor
in interfaceJRMeterPlot
- Returns:
- the color used when drawing tick marks on the meter
-
getTickCount
public Integer getTickCount()
Description copied from interface:JRMeterPlot
Returns the number of major ticks on the meter scale.- Specified by:
getTickCount
in interfaceJRMeterPlot
- Returns:
- the spacing between the ticks on the face of the meter
-
getTickLabelFont
public JRFont getTickLabelFont()
Description copied from interface:JRMeterPlot
Returns the font used to write tick labels on the meter.- Specified by:
getTickLabelFont
in interfaceJRMeterPlot
- Returns:
- the font used to write tick labels on the meter
-
collectExpressions
public void collectExpressions(ChartsExpressionCollector collector)
Adds all the expression used by this plot with the specified collector. All collected expression that are also registered with a factory will be included with the report is compiled.- Specified by:
collectExpressions
in interfaceJRChartPlot
- Parameters:
collector
- the expression collector to use
-
clone
public Object clone(JRChart parentChart)
- Specified by:
clone
in interfaceJRChartPlot
- Overrides:
clone
in classJRBaseChartPlot
-
-