org.jfree.chart.plot.dial

## Class ArcDialFrame

- java.lang.Object
- - org.jfree.chart.plot.dial.AbstractDialLayer
  - - org.jfree.chart.plot.dial.ArcDialFrame

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, DialFrame, DialLayer, org.jfree.util.PublicCloneable

    public class ArcDialFrame
    extends AbstractDialLayer
    implements DialFrame, java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable

A standard frame for the `DialPlot` class.

Since:
  1.0.7
See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`ArcDialFrame()` Creates a new instance of `ArcDialFrame` that spans 180 degrees.
`ArcDialFrame(double startAngle, double extent)` Creates a new instance of `ArcDialFrame` that spans the arc specified.

### Method Summary

Methods
`java.lang.Object` `clone()` Returns a clone of this instance.
`void` `draw(java.awt.Graphics2D g2, DialPlot plot, java.awt.geom.Rectangle2D frame, java.awt.geom.Rectangle2D view)` Draws the frame.
`boolean` `equals(java.lang.Object obj)` Tests this instance for equality with an arbitrary object.
`java.awt.Paint` `getBackgroundPaint()` Returns the background paint (never `null`).
`double` `getExtent()` Returns the extent.
`java.awt.Paint` `getForegroundPaint()` Returns the foreground paint.
`double` `getInnerRadius()` Returns the inner radius, relative to the framing rectangle.
`double` `getOuterRadius()` Returns the outer radius, relative to the framing rectangle.
`protected java.awt.Shape` `getOuterWindow(java.awt.geom.Rectangle2D frame)` Returns the outer window.
`double` `getStartAngle()` Returns the start angle.
`java.awt.Stroke` `getStroke()` Returns the stroke.
`java.awt.Shape` `getWindow(java.awt.geom.Rectangle2D frame)` Returns the shape for the window for this dial.
`int` `hashCode()` Returns a hash code for this instance.
`boolean` `isClippedToWindow()` Returns `false` to indicate that this dial layer is not clipped to the dial window.
`void` `setBackgroundPaint(java.awt.Paint paint)` Sets the background paint and sends a `DialLayerChangeEvent` to all registered listeners.
`void` `setExtent(double extent)` Sets the extent and sends a `DialLayerChangeEvent` to all registered listeners.
`void` `setForegroundPaint(java.awt.Paint paint)` Sets the foreground paint and sends a `DialLayerChangeEvent` to all registered listeners.
`void` `setInnerRadius(double radius)` Sets the inner radius and sends a `DialLayerChangeEvent` to all registered listeners.
`void` `setOuterRadius(double radius)` Sets the outer radius and sends a `DialLayerChangeEvent` to all registered listeners.
`void` `setStartAngle(double angle)` Sets the start angle and sends a `DialLayerChangeEvent` to all registered listeners.
`void` `setStroke(java.awt.Stroke stroke)` Sets the stroke and sends a `DialLayerChangeEvent` to all registered listeners.

### Methods inherited from class org.jfree.chart.plot.dial.AbstractDialLayer

`addChangeListener, hasListener, isVisible, notifyListeners, removeChangeListener, setVisible`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.jfree.chart.plot.dial.DialLayer

`addChangeListener, hasListener, isVisible, removeChangeListener`

### Constructor Detail

#### ArcDialFrame

    public ArcDialFrame()

Creates a new instance of `ArcDialFrame` that spans 180 degrees.

#### ArcDialFrame

    public ArcDialFrame(double startAngle,
                double extent)

Creates a new instance of `ArcDialFrame` that spans the arc specified.

Parameters:
  `startAngle` - the startAngle (in degrees).
  `extent` - the extent of the arc (in degrees, counter-clockwise).

### Method Detail

#### getBackgroundPaint

    public java.awt.Paint getBackgroundPaint()

Returns the background paint (never `null`).

Returns:
  The background paint.
See Also:
  `setBackgroundPaint(Paint)`

#### setBackgroundPaint

    public void setBackgroundPaint(java.awt.Paint paint)

Sets the background paint and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `paint` - the paint (`null` not permitted).
See Also:
  `getBackgroundPaint()`

#### getForegroundPaint

    public java.awt.Paint getForegroundPaint()

Returns the foreground paint.

Returns:
  The foreground paint (never `null`).
See Also:
  `setForegroundPaint(Paint)`

#### setForegroundPaint

    public void setForegroundPaint(java.awt.Paint paint)

Sets the foreground paint and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `paint` - the paint (`null` not permitted).
See Also:
  `getForegroundPaint()`

#### getStroke

    public java.awt.Stroke getStroke()

Returns the stroke.

Returns:
  The stroke (never `null`).
See Also:
  `setStroke(Stroke)`

#### setStroke

    public void setStroke(java.awt.Stroke stroke)

Sets the stroke and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `stroke` - the stroke (`null` not permitted).
See Also:
  `getStroke()`

#### getInnerRadius

    public double getInnerRadius()

Returns the inner radius, relative to the framing rectangle.

Returns:
  The inner radius.
See Also:
  `setInnerRadius(double)`

#### setInnerRadius

    public void setInnerRadius(double radius)

Sets the inner radius and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `radius` - the inner radius.
See Also:
  `getInnerRadius()`

#### getOuterRadius

    public double getOuterRadius()

Returns the outer radius, relative to the framing rectangle.

Returns:
  The outer radius.
See Also:
  `setOuterRadius(double)`

#### setOuterRadius

    public void setOuterRadius(double radius)

Sets the outer radius and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `radius` - the outer radius.
See Also:
  `getOuterRadius()`

#### getStartAngle

    public double getStartAngle()

Returns the start angle.

Returns:
  The start angle.
See Also:
  `setStartAngle(double)`

#### setStartAngle

    public void setStartAngle(double angle)

Sets the start angle and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `angle` - the angle.
See Also:
  `getStartAngle()`

#### getExtent

    public double getExtent()

Returns the extent.

Returns:
  The extent.
See Also:
  `setExtent(double)`

#### setExtent

    public void setExtent(double extent)

Sets the extent and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `extent` - the extent.
See Also:
  `getExtent()`

#### getWindow

    public java.awt.Shape getWindow(java.awt.geom.Rectangle2D frame)

Returns the shape for the window for this dial. Some dial layers will request that their drawing be clipped within this window.

Specified by:
  `getWindow` in interface `DialFrame`
Parameters:
  `frame` - the reference frame (`null` not permitted).
Returns:
  The shape of the dial's window.

#### getOuterWindow

    protected java.awt.Shape getOuterWindow(java.awt.geom.Rectangle2D frame)

Returns the outer window.

Parameters:
  `frame` - the frame.
Returns:
  The outer window.

#### draw

    public void draw(java.awt.Graphics2D g2,
            DialPlot plot,
            java.awt.geom.Rectangle2D frame,
            java.awt.geom.Rectangle2D view)

Draws the frame.

Specified by:
  `draw` in interface `DialLayer`
Parameters:
  `g2` - the graphics target.
  `plot` - the plot.
  `frame` - the dial's reference frame.
  `view` - the dial's view rectangle.

#### isClippedToWindow

    public boolean isClippedToWindow()

Returns `false` to indicate that this dial layer is not clipped to the dial window.

Specified by:
  `isClippedToWindow` in interface `DialLayer`
Returns:
  `false`.

#### equals

    public boolean equals(java.lang.Object obj)

Tests this instance for equality with an arbitrary object.

Overrides:
  `equals` in class `AbstractDialLayer`
Parameters:
  `obj` - the object (`null` permitted).
Returns:
  A boolean.

#### hashCode

    public int hashCode()

Returns a hash code for this instance.

Overrides:
  `hashCode` in class `AbstractDialLayer`
Returns:
  The hash code.

#### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

Returns a clone of this instance.

Specified by:
  `clone` in interface `org.jfree.util.PublicCloneable`
Overrides:
  `clone` in class `AbstractDialLayer`
Returns:
  A clone.
Throws:
  `java.lang.CloneNotSupportedException` - if any attribute of this instance cannot be cloned.