Package org.jfree.chart.annotations
Class XYLineAnnotation
- java.lang.Object
-
- org.jfree.chart.annotations.AbstractAnnotation
-
- org.jfree.chart.annotations.AbstractXYAnnotation
-
- org.jfree.chart.annotations.XYLineAnnotation
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Annotation
,XYAnnotation
,PublicCloneable
public class XYLineAnnotation extends AbstractXYAnnotation implements java.lang.Cloneable, PublicCloneable, java.io.Serializable
A simple line annotation that can be placed on anXYPlot
. Instances of this class are immutable.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.awt.Paint
paint
The line color.private static long
serialVersionUID
For serialization.private java.awt.Stroke
stroke
The line stroke.private double
x1
The x-coordinate.private double
x2
The x-coordinate.private double
y1
The y-coordinate.private double
y2
The y-coordinate.
-
Constructor Summary
Constructors Constructor Description XYLineAnnotation(double x1, double y1, double x2, double y2)
Creates a new annotation that draws a line from (x1, y1) to (x2, y2) where the coordinates are measured in data space (that is, against the plot's axes).XYLineAnnotation(double x1, double y1, double x2, double y2, java.awt.Stroke stroke, java.awt.Paint paint)
Creates a new annotation that draws a line from (x1, y1) to (x2, y2) where the coordinates are measured in data space (that is, against the plot's axes).
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canEqual(java.lang.Object other)
Ensures symmetry between super/subclass implementations of equals.java.lang.Object
clone()
Returns a clone of the annotation.void
draw(java.awt.Graphics2D g2, XYPlot plot, java.awt.geom.Rectangle2D dataArea, ValueAxis domainAxis, ValueAxis rangeAxis, int rendererIndex, PlotRenderingInfo info)
Draws the annotation.boolean
equals(java.lang.Object obj)
Tests this object for equality with an arbitrary object.java.awt.Paint
getPaint()
Returns the paint used for drawing the line (set in the constructor).java.awt.Stroke
getStroke()
Returns the stroke used for drawing the line (set in the constructor).double
getX1()
Returns the x-coordinate for the starting point of the line (set in the constructor).double
getX2()
Returns the x-coordinate for the ending point of the line (set in the constructor).double
getY1()
Returns the y-coordinate for the starting point of the line (set in the constructor).double
getY2()
Returns the y-coordinate for the ending point of the line (set in the constructor).int
hashCode()
Returns a hash code.private void
readObject(java.io.ObjectInputStream stream)
Provides serialization support.private void
writeObject(java.io.ObjectOutputStream stream)
Provides serialization support.-
Methods inherited from class org.jfree.chart.annotations.AbstractXYAnnotation
addEntity, getToolTipText, getURL, setToolTipText, setURL
-
Methods inherited from class org.jfree.chart.annotations.AbstractAnnotation
addChangeListener, fireAnnotationChanged, getNotify, hasListener, notifyListeners, removeChangeListener, setNotify
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jfree.chart.annotations.Annotation
addChangeListener, removeChangeListener
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
For serialization.- See Also:
- Constant Field Values
-
x1
private double x1
The x-coordinate.
-
y1
private double y1
The y-coordinate.
-
x2
private double x2
The x-coordinate.
-
y2
private double y2
The y-coordinate.
-
stroke
private transient java.awt.Stroke stroke
The line stroke.
-
paint
private transient java.awt.Paint paint
The line color.
-
-
Constructor Detail
-
XYLineAnnotation
public XYLineAnnotation(double x1, double y1, double x2, double y2)
Creates a new annotation that draws a line from (x1, y1) to (x2, y2) where the coordinates are measured in data space (that is, against the plot's axes). All the line coordinates are required to be finite values.- Parameters:
x1
- the x-coordinate for the start of the line.y1
- the y-coordinate for the start of the line.x2
- the x-coordinate for the end of the line.y2
- the y-coordinate for the end of the line.
-
XYLineAnnotation
public XYLineAnnotation(double x1, double y1, double x2, double y2, java.awt.Stroke stroke, java.awt.Paint paint)
Creates a new annotation that draws a line from (x1, y1) to (x2, y2) where the coordinates are measured in data space (that is, against the plot's axes).- Parameters:
x1
- the x-coordinate for the start of the line (must be finite).y1
- the y-coordinate for the start of the line (must be finite).x2
- the x-coordinate for the end of the line (must be finite).y2
- the y-coordinate for the end of the line (must be finite).stroke
- the line stroke (null
not permitted).paint
- the line color (null
not permitted).
-
-
Method Detail
-
getX1
public double getX1()
Returns the x-coordinate for the starting point of the line (set in the constructor).- Returns:
- The x-coordinate for the starting point of the line.
-
getY1
public double getY1()
Returns the y-coordinate for the starting point of the line (set in the constructor).- Returns:
- The y-coordinate for the starting point of the line.
-
getX2
public double getX2()
Returns the x-coordinate for the ending point of the line (set in the constructor).- Returns:
- The x-coordinate for the ending point of the line.
-
getY2
public double getY2()
Returns the y-coordinate for the ending point of the line (set in the constructor).- Returns:
- The y-coordinate for the ending point of the line.
-
getStroke
public java.awt.Stroke getStroke()
Returns the stroke used for drawing the line (set in the constructor).- Returns:
- The stroke (never
null
).
-
getPaint
public java.awt.Paint getPaint()
Returns the paint used for drawing the line (set in the constructor).- Returns:
- The paint (never
null
).
-
draw
public void draw(java.awt.Graphics2D g2, XYPlot plot, java.awt.geom.Rectangle2D dataArea, ValueAxis domainAxis, ValueAxis rangeAxis, int rendererIndex, PlotRenderingInfo info)
Draws the annotation. This method is called by theXYPlot
class, you won't normally need to call it yourself.- Specified by:
draw
in interfaceXYAnnotation
- Specified by:
draw
in classAbstractXYAnnotation
- Parameters:
g2
- the graphics device.plot
- the plot.dataArea
- the data area.domainAxis
- the domain axis.rangeAxis
- the range axis.rendererIndex
- the renderer index.info
- if supplied, this info object will be populated with entity information.
-
equals
public boolean equals(java.lang.Object obj)
Tests this object for equality with an arbitrary object.- Overrides:
equals
in classAbstractXYAnnotation
- Parameters:
obj
- the object to test against (null
permitted).- Returns:
true
orfalse
.
-
canEqual
public boolean canEqual(java.lang.Object other)
Ensures symmetry between super/subclass implementations of equals. For more detail, see http://jqno.nl/equalsverifier/manual/inheritance.- Overrides:
canEqual
in classAbstractXYAnnotation
- Parameters:
other
- Object- Returns:
- true ONLY if the parameter is THIS class type
-
hashCode
public int hashCode()
Returns a hash code.- Overrides:
hashCode
in classAbstractXYAnnotation
- Returns:
- A hash code.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
Returns a clone of the annotation.- Specified by:
clone
in interfacePublicCloneable
- Overrides:
clone
in classAbstractAnnotation
- Returns:
- A clone.
- Throws:
java.lang.CloneNotSupportedException
- if the annotation can't be cloned.
-
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.
-
-