org.jfree.chart.annotations
Class XYImageAnnotation

java.lang.Object
  extended by org.jfree.chart.annotations.AbstractXYAnnotation
      extended by org.jfree.chart.annotations.XYImageAnnotation
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, XYAnnotation, org.jfree.util.PublicCloneable

public class XYImageAnnotation
extends AbstractXYAnnotation
implements java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable

An annotation that allows an image to be placed at some location on an XYPlot. TODO: implement serialization properly (image is not serializable).

See Also:
Serialized Form

Constructor Summary
XYImageAnnotation(double x, double y, java.awt.Image image)
          Creates a new annotation to be displayed at the specified (x, y) location.
 
Method Summary
 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.
 int hashCode()
          Returns a hash code for this object.
 
Methods inherited from class org.jfree.chart.annotations.AbstractXYAnnotation
addEntity, getToolTipText, getURL, setToolTipText, setURL
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XYImageAnnotation

public XYImageAnnotation(double x,
                         double y,
                         java.awt.Image image)
Creates a new annotation to be displayed at the specified (x, y) location.

Parameters:
x - the x-coordinate (in data space).
y - the y-coordinate (in data space).
image - the image (null not permitted).
Method Detail

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 the XYPlot class, you don't normally need to call this method directly.

Specified by:
draw in interface XYAnnotation
Specified by:
draw in class AbstractXYAnnotation
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 class AbstractXYAnnotation
Parameters:
obj - the object (null permitted).
Returns:
A boolean.

hashCode

public int hashCode()
Returns a hash code for this object.

Overrides:
hashCode in class java.lang.Object
Returns:
A hash code.

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Returns a clone of the annotation.

Specified by:
clone in interface org.jfree.util.PublicCloneable
Overrides:
clone in class java.lang.Object
Returns:
A clone.
Throws:
java.lang.CloneNotSupportedException - if the annotation can't be cloned.