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:
java.io.Serializable
,java.lang.Cloneable
,Annotation
,XYAnnotation
,XYAnnotationBoundsInfo
,PublicCloneable
public class XYDataImageAnnotation extends AbstractXYAnnotation implements java.lang.Cloneable, PublicCloneable, XYAnnotationBoundsInfo
An annotation that allows an image to be placed within a rectangle specified in data coordinates on anXYPlot
. Note that this annotation is not currently serializable, so don't use it if you plan on serializing your chart(s).- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private double
h
The image display area height in data coordinates.private java.awt.Image
image
The image.private boolean
includeInDataBounds
A flag indicating whether or not the annotation should contribute to the data range for a plot/renderer.private double
w
The image display area width in data coordinates.private double
x
The x-coordinate (in data space).private double
y
The y-coordinate (in data space).
-
Constructor Summary
Constructors Constructor Description XYDataImageAnnotation(java.awt.Image image, double x, double y, double w, double h)
Creates a new annotation to be displayed within the specified rectangle.XYDataImageAnnotation(java.awt.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
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.double
getHeight()
Returns the height (in data space) of the data rectangle into which the image will be drawn.java.awt.Image
getImage()
Returns the image for the annotation.boolean
getIncludeInDataBounds()
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.Range
getXRange()
Returns the x-range for the annotation.double
getY()
Returns the y-coordinate (in data space) for the annotation.Range
getYRange()
Returns the y-range for the annotation.int
hashCode()
Returns a hash code for this object.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
-
image
private transient java.awt.Image image
The image.
-
x
private double x
The x-coordinate (in data space).
-
y
private double y
The y-coordinate (in data space).
-
w
private double w
The image display area width in data coordinates.
-
h
private double h
The image display area height in data coordinates.
-
includeInDataBounds
private boolean includeInDataBounds
A flag indicating whether or not the annotation should contribute to the data range for a plot/renderer.
-
-
Constructor Detail
-
XYDataImageAnnotation
public XYDataImageAnnotation(java.awt.Image image, double x, double y, double w, double h)
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(java.awt.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 Detail
-
getImage
public java.awt.Image 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
public Range getXRange()
Returns the x-range for the annotation.- Specified by:
getXRange
in interfaceXYAnnotationBoundsInfo
- Returns:
- The range.
-
getYRange
public Range getYRange()
Returns the y-range for the annotation.- Specified by:
getYRange
in interfaceXYAnnotationBoundsInfo
- Returns:
- The range.
-
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 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
public boolean equals(java.lang.Object obj)
Tests this object for equality with an arbitrary object.- Overrides:
equals
in classAbstractXYAnnotation
- Parameters:
obj
- the object (null
permitted).- Returns:
- A boolean.
-
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 for this object.- 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.
-
-