Package org.jfree.chart.annotations
Class XYDataImageAnnotation
java.lang.Object
org.jfree.chart.annotations.AbstractAnnotation
org.jfree.chart.annotations.AbstractXYAnnotation
org.jfree.chart.annotations.XYDataImageAnnotation
- All Implemented Interfaces:
Serializable
,Cloneable
,Annotation
,XYAnnotation
,XYAnnotationBoundsInfo
,PublicCloneable
public class XYDataImageAnnotation
extends AbstractXYAnnotation
implements Cloneable, PublicCloneable, XYAnnotationBoundsInfo
An annotation that allows an image to be placed within a rectangle specified
in data coordinates on an
XYPlot
. Note that this annotation
is not currently serializable, so don't use it if you plan on serializing
your chart(s).- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate double
The image display area height in data coordinates.private Image
The image.private boolean
A flag indicating whether or not the annotation should contribute to the data range for a plot/renderer.private double
The image display area width in data coordinates.private double
The x-coordinate (in data space).private double
The y-coordinate (in data space). -
Constructor Summary
ConstructorsConstructorDescriptionXYDataImageAnnotation
(Image image, double x, double y, double w, double h) Creates a new annotation to be displayed within the specified rectangle.XYDataImageAnnotation
(Image image, double x, double y, double w, double h, boolean includeInDataBounds) Creates a new annotation to be displayed within the specified rectangle. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Ensures symmetry between super/subclass implementations of equals.clone()
Returns a clone of the annotation.void
draw
(Graphics2D g2, XYPlot plot, Rectangle2D dataArea, ValueAxis domainAxis, ValueAxis rangeAxis, int rendererIndex, PlotRenderingInfo info) Draws the annotation.boolean
Tests this object for equality with an arbitrary object.double
Returns the height (in data space) of the data rectangle into which the image will be drawn.getImage()
Returns the image for the annotation.boolean
Returns the flag that controls whether or not the annotation should contribute to the autoRange for the axis it is plotted against.double
getWidth()
Returns the width (in data space) of the data rectangle into which the image will be drawn.double
getX()
Returns the x-coordinate (in data space) for the annotation.Returns the x-range for the annotation.double
getY()
Returns the y-coordinate (in data space) for the annotation.Returns the y-range for the annotation.int
hashCode()
Returns a hash code for this object.private void
readObject
(ObjectInputStream stream) Provides serialization support.private void
writeObject
(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 Details
-
image
The image. -
x
private double xThe x-coordinate (in data space). -
y
private double yThe y-coordinate (in data space). -
w
private double wThe image display area width in data coordinates. -
h
private double hThe image display area height in data coordinates. -
includeInDataBounds
private boolean includeInDataBoundsA flag indicating whether or not the annotation should contribute to the data range for a plot/renderer.
-
-
Constructor Details
-
XYDataImageAnnotation
Creates a new annotation to be displayed within the specified rectangle.- Parameters:
image
- the image (null
not permitted).x
- the x-coordinate (in data space).y
- the y-coordinate (in data space).w
- the image display area width.h
- the image display area height.
-
XYDataImageAnnotation
public XYDataImageAnnotation(Image image, double x, double y, double w, double h, boolean includeInDataBounds) Creates a new annotation to be displayed within the specified rectangle.- Parameters:
image
- the image (null
not permitted).x
- the x-coordinate (in data space).y
- the y-coordinate (in data space).w
- the image display area width.h
- the image display area height.includeInDataBounds
- a flag that controls whether or not the annotation is included in the data bounds for the axis autoRange.
-
-
Method Details
-
getImage
Returns the image for the annotation.- Returns:
- The image.
-
getX
public double getX()Returns the x-coordinate (in data space) for the annotation.- Returns:
- The x-coordinate.
-
getY
public double getY()Returns the y-coordinate (in data space) for the annotation.- Returns:
- The y-coordinate.
-
getWidth
public double getWidth()Returns the width (in data space) of the data rectangle into which the image will be drawn.- Returns:
- The width.
-
getHeight
public double getHeight()Returns the height (in data space) of the data rectangle into which the image will be drawn.- Returns:
- The height.
-
getIncludeInDataBounds
public boolean getIncludeInDataBounds()Returns the flag that controls whether or not the annotation should contribute to the autoRange for the axis it is plotted against.- Specified by:
getIncludeInDataBounds
in interfaceXYAnnotationBoundsInfo
- Returns:
- A boolean.
-
getXRange
Returns the x-range for the annotation.- Specified by:
getXRange
in interfaceXYAnnotationBoundsInfo
- Returns:
- The range.
-
getYRange
Returns the y-range for the annotation.- Specified by:
getYRange
in interfaceXYAnnotationBoundsInfo
- Returns:
- The range.
-
draw
public void draw(Graphics2D g2, XYPlot plot, Rectangle2D dataArea, ValueAxis domainAxis, ValueAxis rangeAxis, int rendererIndex, PlotRenderingInfo info) Draws the annotation. This method is called by the drawing code in theXYPlot
class, you don't normally need to call this method directly.- 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
Tests this object for equality with an arbitrary object.- Overrides:
equals
in classAbstractXYAnnotation
- Parameters:
obj
- the object (null
permitted).- Returns:
- A boolean.
-
canEqual
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 for this object.- Overrides:
hashCode
in classAbstractXYAnnotation
- Returns:
- A hash code.
-
clone
Returns a clone of the annotation.- Specified by:
clone
in interfacePublicCloneable
- Overrides:
clone
in classAbstractAnnotation
- Returns:
- A clone.
- Throws:
CloneNotSupportedException
- if the annotation can't be cloned.
-
writeObject
Provides serialization support.- Parameters:
stream
- the output stream.- Throws:
IOException
- if there is an I/O error.
-
readObject
Provides serialization support.- Parameters:
stream
- the input stream.- Throws:
IOException
- if there is an I/O error.ClassNotFoundException
- if there is a classpath problem.
-