Java™ Platform
Standard Ed. 6

Package java.awt.geom

Provides the Java 2D classes for defining and performing operations on objects related to two-dimensional geometry.

See:
Description

Interface Summary
PathIterator The `PathIterator` interface provides the mechanism for objects that implement the `Shape` interface to return the geometry of their boundary by allowing a caller to retrieve the path of that boundary a segment at a time.

Class Summary
AffineTransform The `AffineTransform` class represents a 2D affine transform that performs a linear mapping from 2D coordinates to other 2D coordinates that preserves the "straightness" and "parallelness" of lines.
Arc2D `Arc2D` is the abstract superclass for all objects that store a 2D arc defined by a framing rectangle, start angle, angular extent (length of the arc), and a closure type (`OPEN`, `CHORD`, or `PIE`).
Arc2D.Double This class defines an arc specified in `double` precision.
Arc2D.Float This class defines an arc specified in `float` precision.
Area An `Area` object stores and manipulates a resolution-independent description of an enclosed area of 2-dimensional space.
CubicCurve2D The `CubicCurve2D` class defines a cubic parametric curve segment in `(x,y)` coordinate space.
CubicCurve2D.Double A cubic parametric curve segment specified with `double` coordinates.
CubicCurve2D.Float A cubic parametric curve segment specified with `float` coordinates.
Dimension2D The `Dimension2D` class is to encapsulate a width and a height dimension.
Ellipse2D The `Ellipse2D` class describes an ellipse that is defined by a framing rectangle.
Ellipse2D.Double The `Double` class defines an ellipse specified in `double` precision.
Ellipse2D.Float The `Float` class defines an ellipse specified in `float` precision.
FlatteningPathIterator The `FlatteningPathIterator` class returns a flattened view of another `PathIterator` object.
GeneralPath The `GeneralPath` class represents a geometric path constructed from straight lines, and quadratic and cubic (Bézier) curves.
Line2D This `Line2D` represents a line segment in `(x,y)` coordinate space.
Line2D.Double A line segment specified with double coordinates.
Line2D.Float A line segment specified with float coordinates.
Path2D The `Path2D` class provides a simple, yet flexible shape which represents an arbitrary geometric path.
Path2D.Double The `Double` class defines a geometric path with coordinates stored in double precision floating point.
Path2D.Float The `Float` class defines a geometric path with coordinates stored in single precision floating point.
Point2D The `Point2D` class defines a point representing a location in `(x,y)` coordinate space.
Point2D.Double The `Double` class defines a point specified in `double` precision.
Point2D.Float The `Float` class defines a point specified in float precision.
QuadCurve2D The `QuadCurve2D` class defines a quadratic parametric curve segment in `(x,y)` coordinate space.
QuadCurve2D.Double A quadratic parametric curve segment specified with `double` coordinates.
QuadCurve2D.Float A quadratic parametric curve segment specified with `float` coordinates.
Rectangle2D The `Rectangle2D` class describes a rectangle defined by a location `(x,y)` and dimension `(w x h)`.
Rectangle2D.Double The `Double` class defines a rectangle specified in double coordinates.
Rectangle2D.Float The `Float` class defines a rectangle specified in float coordinates.
RectangularShape `RectangularShape` is the base class for a number of `Shape` objects whose geometry is defined by a rectangular frame.
RoundRectangle2D The `RoundRectangle2D` class defines a rectangle with rounded corners defined by a location `(x,y)`, a dimension `(w x h)`, and the width and height of an arc with which to round the corners.
RoundRectangle2D.Double The `Double` class defines a rectangle with rounded corners all specified in `double` coordinates.
RoundRectangle2D.Float The `Float` class defines a rectangle with rounded corners all specified in `float` coordinates.

Exception Summary
IllegalPathStateException The `IllegalPathStateException` represents an exception that is thrown if an operation is performed on a path that is in an illegal state with respect to the particular operation being performed, such as appending a path segment to a `GeneralPath` without an initial moveto.
NoninvertibleTransformException The `NoninvertibleTransformException` class represents an exception that is thrown if an operation is performed requiring the inverse of an `AffineTransform` object but the `AffineTransform` is in a non-invertible state.

Package java.awt.geom Description

Provides the Java 2D classes for defining and performing operations on objects related to two-dimensional geometry. Some important features of the package include:

• classes for manipulating geometry, such as AffineTransform and the PathIterator interface which is implemented by all Shape objects.
• classes that implement the Shape interface, such as CubicCurve2D, Ellipse2D, Line2D, Rectangle2D, and GeneralShape.
• the Area class which provides mechanisms for add (union), subtract, intersect, and exclusiveOR operations on other Shape objects.

Since:
1.2

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.