## Uses of Interface
java.awt.geom.PathIterator

- Packages that use PathIterator
  Package | Description
  --- | ---
  java.awt | Contains all of the classes for creating user interfaces and for painting graphics and images.
  java.awt.geom | Provides the Java 2D classes for defining and performing operations on objects related to two-dimensional geometry.

- - ### Uses of PathIterator in java.awt

    Methods in java.awt that return PathIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `PathIterator` | Polygon.`getPathIterator(AffineTransform at)` Returns an iterator object that iterates along the boundary of this `Polygon` and provides access to the geometry of the outline of this `Polygon`.
    `PathIterator` | Shape.`getPathIterator(AffineTransform at)` Returns an iterator object that iterates along the `Shape` boundary and provides access to the geometry of the `Shape` outline.
    `PathIterator` | Polygon.`getPathIterator(AffineTransform at, double flatness)` Returns an iterator object that iterates along the boundary of the `Shape` and provides access to the geometry of the outline of the `Shape`.
    `PathIterator` | Shape.`getPathIterator(AffineTransform at, double flatness)` Returns an iterator object that iterates along the `Shape` boundary and provides access to a flattened view of the `Shape` outline geometry.

  - ### Uses of PathIterator in java.awt.geom

    Classes in java.awt.geom that implement PathIterator
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `FlatteningPathIterator` The `FlatteningPathIterator` class returns a flattened view of another `PathIterator` object.

    Methods in java.awt.geom that return PathIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `PathIterator` | RoundRectangle2D.`getPathIterator(AffineTransform at)` Returns an iteration object that defines the boundary of this `RoundRectangle2D`.
    `PathIterator` | Arc2D.`getPathIterator(AffineTransform at)` Returns an iteration object that defines the boundary of the arc.
    `PathIterator` | CubicCurve2D.`getPathIterator(AffineTransform at)` Returns an iteration object that defines the boundary of the shape.
    `PathIterator` | Area.`getPathIterator(AffineTransform at)` Creates a `PathIterator` for the outline of this `Area` object.
    `PathIterator` | Ellipse2D.`getPathIterator(AffineTransform at)` Returns an iteration object that defines the boundary of this `Ellipse2D`.
    `PathIterator` | QuadCurve2D.`getPathIterator(AffineTransform at)` Returns an iteration object that defines the boundary of the shape of this `QuadCurve2D`.
    `PathIterator` | Path2D.Float.`getPathIterator(AffineTransform at)` Returns an iterator object that iterates along the `Shape` boundary and provides access to the geometry of the `Shape` outline.
    `PathIterator` | Path2D.Double.`getPathIterator(AffineTransform at)` Returns an iterator object that iterates along the `Shape` boundary and provides access to the geometry of the `Shape` outline.
    `PathIterator` | Line2D.`getPathIterator(AffineTransform at)` Returns an iteration object that defines the boundary of this `Line2D`.
    `PathIterator` | Rectangle2D.`getPathIterator(AffineTransform at)` Returns an iteration object that defines the boundary of this `Rectangle2D`.
    `PathIterator` | CubicCurve2D.`getPathIterator(AffineTransform at, double flatness)` Return an iteration object that defines the boundary of the flattened shape.
    `PathIterator` | Area.`getPathIterator(AffineTransform at, double flatness)` Creates a `PathIterator` for the flattened outline of this `Area` object.
    `PathIterator` | QuadCurve2D.`getPathIterator(AffineTransform at, double flatness)` Returns an iteration object that defines the boundary of the flattened shape of this `QuadCurve2D`.
    `PathIterator` | Path2D.`getPathIterator(AffineTransform at, double flatness)` Returns an iterator object that iterates along the `Shape` boundary and provides access to a flattened view of the `Shape` outline geometry.
    `PathIterator` | Line2D.`getPathIterator(AffineTransform at, double flatness)` Returns an iteration object that defines the boundary of this flattened `Line2D`.
    `PathIterator` | RectangularShape.`getPathIterator(AffineTransform at, double flatness)` Returns an iterator object that iterates along the `Shape` object's boundary and provides access to a flattened view of the outline of the `Shape` object's geometry.
    `PathIterator` | Rectangle2D.`getPathIterator(AffineTransform at, double flatness)` Returns an iteration object that defines the boundary of the flattened `Rectangle2D`.

    Methods in java.awt.geom with parameters of type PathIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract void` | Path2D.`append(PathIterator pi, boolean connect)` Appends the geometry of the specified `PathIterator` object to the path, possibly connecting the new geometry to the existing path segments with a line segment.
    `void` | Path2D.Float.`append(PathIterator pi, boolean connect)` Appends the geometry of the specified `PathIterator` object to the path, possibly connecting the new geometry to the existing path segments with a line segment.
    `void` | Path2D.Double.`append(PathIterator pi, boolean connect)` Appends the geometry of the specified `PathIterator` object to the path, possibly connecting the new geometry to the existing path segments with a line segment.
    `static boolean` | Path2D.`contains(PathIterator pi, double x, double y)` Tests if the specified coordinates are inside the closed boundary of the specified `PathIterator`.
    `static boolean` | Path2D.`contains(PathIterator pi, double x, double y, double w, double h)` Tests if the specified rectangular area is entirely inside the closed boundary of the specified `PathIterator`.
    `static boolean` | Path2D.`contains(PathIterator pi, Point2D p)` Tests if the specified `Point2D` is inside the closed boundary of the specified `PathIterator`.
    `static boolean` | Path2D.`contains(PathIterator pi, Rectangle2D r)` Tests if the specified `Rectangle2D` is entirely inside the closed boundary of the specified `PathIterator`.
    `static boolean` | Path2D.`intersects(PathIterator pi, double x, double y, double w, double h)` Tests if the interior of the specified `PathIterator` intersects the interior of a specified set of rectangular coordinates.
    `static boolean` | Path2D.`intersects(PathIterator pi, Rectangle2D r)` Tests if the interior of the specified `PathIterator` intersects the interior of a specified `Rectangle2D`.

    Constructors in java.awt.geom with parameters of type PathIterator
    Constructor | Description
    --- | ---
    `FlatteningPathIterator(PathIterator src, double flatness)` Constructs a new `FlatteningPathIterator` object that flattens a path as it iterates over it.
    `FlatteningPathIterator(PathIterator src, double flatness, int limit)` Constructs a new `FlatteningPathIterator` object that flattens a path as it iterates over it.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.