java.awt.geom
Class RoundRectangle2D

java.lang.Object
  extended by java.awt.geom.RectangularShape
      extended by java.awt.geom.RoundRectangle2D
All Implemented Interfaces:
Shape, Cloneable
Direct Known Subclasses:
RoundRectangle2D.Double, RoundRectangle2D.Float

public abstract class RoundRectangle2D
extends RectangularShape

This class implements a rectangle with rounded corners.


Nested Class Summary
static class RoundRectangle2D.Double
          A subclass of RoundRectangle which keeps its parameters as doubles.
static class RoundRectangle2D.Float
          A subclass of RoundRectangle which keeps its parameters as floats.
 
Constructor Summary
protected RoundRectangle2D()
          Create a RoundRectangle2D.
 
Method Summary
 boolean contains(double x, double y)
          Return true if this object contains the specified point.
 boolean contains(double x, double y, double w, double h)
          Return true if this object contains the specified rectangle
abstract  double getArcHeight()
          Return the arc height of this round rectangle.
abstract  double getArcWidth()
          Return the arc width of this round rectangle.
 PathIterator getPathIterator(AffineTransform at)
          Return a new path iterator which iterates over this rectangle.
 boolean intersects(double x, double y, double w, double h)
          Return true if the given rectangle intersects this shape.
 void setFrame(double x, double y, double w, double h)
          Set the boundary of this round rectangle.
abstract  void setRoundRect(double x, double y, double w, double h, double arcWidth, double arcHeight)
          Set the values of this round rectangle.
 void setRoundRect(RoundRectangle2D rr)
          Set the values of this round rectangle to be the same as those of the argument.
 
Methods inherited from class java.awt.geom.RectangularShape
clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.awt.Shape
getBounds2D
 

Constructor Detail

RoundRectangle2D

protected RoundRectangle2D()
Create a RoundRectangle2D. This is protected because this class is abstract and cannot be instantiated.

Method Detail

getArcHeight

public abstract double getArcHeight()
Return the arc height of this round rectangle. The arc height and width control the roundness of the corners of the rectangle.

Returns:
The arc height.
See Also:
getArcWidth()

getArcWidth

public abstract double getArcWidth()
Return the arc width of this round rectangle. The arc width and height control the roundness of the corners of the rectangle.

Returns:
The arc width.
See Also:
getArcHeight()

setRoundRect

public abstract void setRoundRect(double x,
                                  double y,
                                  double w,
                                  double h,
                                  double arcWidth,
                                  double arcHeight)
Set the values of this round rectangle.

Parameters:
x - The x coordinate
y - The y coordinate
w - The width
h - The height
arcWidth - The arc width
arcHeight - The arc height

contains

public boolean contains(double x,
                        double y)
Return true if this object contains the specified point.

Parameters:
x - The x coordinate
y - The y coordinate
Returns:
true if (x,y) lies inside the shape

contains

public boolean contains(double x,
                        double y,
                        double w,
                        double h)
Return true if this object contains the specified rectangle

Parameters:
x - The x coordinate
y - The y coordinate
w - The width
h - The height
Returns:
true if the rectangle is contained in this shape
See Also:
Area

getPathIterator

public PathIterator getPathIterator(AffineTransform at)
Return a new path iterator which iterates over this rectangle.

Parameters:
at - An affine transform to apply to the object
Returns:
a new iterator over the boundary

intersects

public boolean intersects(double x,
                          double y,
                          double w,
                          double h)
Return true if the given rectangle intersects this shape.

Parameters:
x - The x coordinate
y - The y coordinate
w - The width
h - The height
Returns:
true if the rectangle intersects this shape
See Also:
Area

setFrame

public void setFrame(double x,
                     double y,
                     double w,
                     double h)
Set the boundary of this round rectangle.

Specified by:
setFrame in class RectangularShape
Parameters:
x - The x coordinate
y - The y coordinate
w - The width
h - The height
See Also:
RectangularShape.getFrame()

setRoundRect

public void setRoundRect(RoundRectangle2D rr)
Set the values of this round rectangle to be the same as those of the argument.

Parameters:
rr - The round rectangle to copy