Package org.jfree.chart.annotations
Class XYPolygonAnnotation
- java.lang.Object
-
- org.jfree.chart.annotations.AbstractAnnotation
-
- org.jfree.chart.annotations.AbstractXYAnnotation
-
- org.jfree.chart.annotations.XYPolygonAnnotation
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,Annotation,XYAnnotation,PublicCloneable
public class XYPolygonAnnotation extends AbstractXYAnnotation implements java.lang.Cloneable, PublicCloneable, java.io.Serializable
A polygon annotation that can be placed on anXYPlot. The polygon coordinates are specified in data space.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.awt.PaintfillPaintThe paint used to fill the box.private java.awt.PaintoutlinePaintThe paint used to draw the box outline.private double[]polygonThe polygon.private static longserialVersionUIDFor serialization.private java.awt.StrokestrokeThe stroke used to draw the box outline.
-
Constructor Summary
Constructors Constructor Description XYPolygonAnnotation(double[] polygon)Creates a new annotation (where, by default, the polygon is drawn with a black outline).XYPolygonAnnotation(double[] polygon, java.awt.Stroke stroke, java.awt.Paint outlinePaint)Creates a new annotation where the box is drawn as an outline using the specifiedstrokeandoutlinePaint.XYPolygonAnnotation(double[] polygon, java.awt.Stroke stroke, java.awt.Paint outlinePaint, java.awt.Paint fillPaint)Creates a new annotation.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanEqual(java.lang.Object other)Ensures symmetry between super/subclass implementations of equals.java.lang.Objectclone()Returns a clone.voiddraw(java.awt.Graphics2D g2, XYPlot plot, java.awt.geom.Rectangle2D dataArea, ValueAxis domainAxis, ValueAxis rangeAxis, int rendererIndex, PlotRenderingInfo info)Draws the annotation.booleanequals(java.lang.Object obj)Tests this annotation for equality with an arbitrary object.java.awt.PaintgetFillPaint()Returns the fill paint.java.awt.PaintgetOutlinePaint()Returns the outline paint.java.awt.StrokegetOutlineStroke()Returns the outline stroke.double[]getPolygonCoordinates()Returns the coordinates of the polygon's vertices.inthashCode()Returns a hash code for this instance.private voidreadObject(java.io.ObjectInputStream stream)Provides serialization support.private voidwriteObject(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
-
polygon
private double[] polygon
The polygon.
-
stroke
private transient java.awt.Stroke stroke
The stroke used to draw the box outline.
-
outlinePaint
private transient java.awt.Paint outlinePaint
The paint used to draw the box outline.
-
fillPaint
private transient java.awt.Paint fillPaint
The paint used to fill the box.
-
-
Constructor Detail
-
XYPolygonAnnotation
public XYPolygonAnnotation(double[] polygon)
Creates a new annotation (where, by default, the polygon is drawn with a black outline). The array of polygon coordinates must contain an even number of coordinates (each pair is an (x, y) location on the plot) and the last point is automatically joined back to the first point.- Parameters:
polygon- the coordinates of the polygon's vertices (nullnot permitted).
-
XYPolygonAnnotation
public XYPolygonAnnotation(double[] polygon, java.awt.Stroke stroke, java.awt.Paint outlinePaint)Creates a new annotation where the box is drawn as an outline using the specifiedstrokeandoutlinePaint. The array of polygon coordinates must contain an even number of coordinates (each pair is an (x, y) location on the plot) and the last point is automatically joined back to the first point.- Parameters:
polygon- the coordinates of the polygon's vertices (nullnot permitted).stroke- the shape stroke (nullpermitted).outlinePaint- the shape color (nullpermitted).
-
XYPolygonAnnotation
public XYPolygonAnnotation(double[] polygon, java.awt.Stroke stroke, java.awt.Paint outlinePaint, java.awt.Paint fillPaint)Creates a new annotation. The array of polygon coordinates must contain an even number of coordinates (each pair is an (x, y) location on the plot) and the last point is automatically joined back to the first point.- Parameters:
polygon- the coordinates of the polygon's vertices (nullnot permitted).stroke- the shape stroke (nullpermitted).outlinePaint- the shape color (nullpermitted).fillPaint- the paint used to fill the shape (nullpermitted).
-
-
Method Detail
-
getPolygonCoordinates
public double[] getPolygonCoordinates()
Returns the coordinates of the polygon's vertices. The returned array is a copy, so it is safe to modify without altering the annotation's state.- Returns:
- The coordinates of the polygon's vertices.
-
getFillPaint
public java.awt.Paint getFillPaint()
Returns the fill paint.- Returns:
- The fill paint (possibly
null).
-
getOutlineStroke
public java.awt.Stroke getOutlineStroke()
Returns the outline stroke.- Returns:
- The outline stroke (possibly
null).
-
getOutlinePaint
public java.awt.Paint getOutlinePaint()
Returns the outline paint.- Returns:
- The outline paint (possibly
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 usually called by theXYPlotclass, you shouldn't need to call it directly.- Specified by:
drawin interfaceXYAnnotation- Specified by:
drawin 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- the plot rendering info.
-
equals
public boolean equals(java.lang.Object obj)
Tests this annotation for equality with an arbitrary object.- Overrides:
equalsin classAbstractXYAnnotation- Parameters:
obj- the object (nullpermitted).- 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:
canEqualin classAbstractXYAnnotation- Parameters:
other- Object- Returns:
- true ONLY if the parameter is THIS class type
-
hashCode
public int hashCode()
Returns a hash code for this instance.- Overrides:
hashCodein classAbstractXYAnnotation- Returns:
- A hash code.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedExceptionReturns a clone.- Specified by:
clonein interfacePublicCloneable- Overrides:
clonein classAbstractAnnotation- Returns:
- A clone.
- Throws:
java.lang.CloneNotSupportedException- not thrown by this class, but may be by subclasses.
-
writeObject
private void writeObject(java.io.ObjectOutputStream stream) throws java.io.IOExceptionProvides serialization support.- Parameters:
stream- the output stream (nullnot permitted).- 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.ClassNotFoundExceptionProvides serialization support.- Parameters:
stream- the input stream (nullnot permitted).- Throws:
java.io.IOException- if there is an I/O error.java.lang.ClassNotFoundException- if there is a classpath problem.
-
-