W3cubDocs

/OpenJDK 21

Class GeneralPath

All Implemented Interfaces:
Shape, Serializable, Cloneable
public final class GeneralPath extends Path2D.Float
The GeneralPath class represents a geometric path constructed from straight lines, and quadratic and cubic (Bézier) curves. It can contain multiple subpaths.

GeneralPath is a legacy final class which exactly implements the behavior of its superclass Path2D.Float. Together with Path2D.Double, the Path2D classes provide full implementations of a general geometric path that support all of the functionality of the Shape and PathIterator interfaces with the ability to explicitly select different levels of internal coordinate precision.

Use Path2D.Float (or this legacy GeneralPath subclass) when dealing with data that can be represented and used with floating point precision. Use Path2D.Double for data that requires the accuracy or range of double precision.

Since:
1.2
See Also:

Nested Class Summary

Nested classes/interfaces declared in class java.awt.geom.Path2D

Path2D.Double, Path2D.Float

Field Summary

Fields declared in class java.awt.geom.Path2D

WIND_EVEN_ODD, WIND_NON_ZERO

Constructor Summary

Constructor Description
GeneralPath()
Constructs a new empty single precision GeneralPath object with a default winding rule of Path2D.WIND_NON_ZERO.
GeneralPath(int rule)
Constructs a new GeneralPath object with the specified winding rule to control operations that require the interior of the path to be defined.
GeneralPath(int rule, int initialCapacity)
Constructs a new GeneralPath object with the specified winding rule and the specified initial capacity to store path coordinates.
GeneralPath(Shape s)
Constructs a new GeneralPath object from an arbitrary Shape object.

Method Summary

Methods declared in class java.lang.Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

GeneralPath

public GeneralPath()
Constructs a new empty single precision GeneralPath object with a default winding rule of Path2D.WIND_NON_ZERO.
Since:
1.2

GeneralPath

public GeneralPath(int rule)
Constructs a new GeneralPath object with the specified winding rule to control operations that require the interior of the path to be defined.
Parameters:
rule - the winding rule
Throws:
IllegalArgumentException - if rule is not either Path2D.WIND_EVEN_ODD or Path2D.WIND_NON_ZERO
Since:
1.2
See Also:

GeneralPath

public GeneralPath(int rule, int initialCapacity)
Constructs a new GeneralPath object with the specified winding rule and the specified initial capacity to store path coordinates. This number is an initial guess as to how many path segments will be added to the path, but the storage is expanded as needed to store whatever path segments are added.
Parameters:
rule - the winding rule
initialCapacity - the estimate for the number of path segments in the path
Throws:
IllegalArgumentException - if rule is not either Path2D.WIND_EVEN_ODD or Path2D.WIND_NON_ZERO
NegativeArraySizeException - if initialCapacity is negative
Since:
1.2
See Also:

GeneralPath

public GeneralPath(Shape s)
Constructs a new GeneralPath object from an arbitrary Shape object. All of the initial geometry and the winding rule for this path are taken from the specified Shape object.
Parameters:
s - the specified Shape object
Throws:
NullPointerException - if s is null
Since:
1.2

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/java/awt/geom/GeneralPath.html