Class GeneralPath
java.lang.Object
java.awt.geom.Path2D
java.awt.geom.Path2D.Float
java.awt.geom.GeneralPath
- All Implemented Interfaces:
Shape
,Serializable
,Cloneable
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 inherited from class java.awt.geom.Path2D
Path2D.Double, Path2D.Float
-
Field Summary
Fields inherited from class java.awt.geom.Path2D
WIND_EVEN_ODD, WIND_NON_ZERO
-
Constructor Summary
ConstructorDescriptionConstructs a new empty single precisionGeneralPath
object with a default winding rule ofPath2D.WIND_NON_ZERO
.GeneralPath
(int rule) Constructs a newGeneralPath
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 newGeneralPath
object with the specified winding rule and the specified initial capacity to store path coordinates.GeneralPath
(Shape s) Constructs a newGeneralPath
object from an arbitraryShape
object. -
Method Summary
Methods inherited from class java.awt.geom.Path2D.Float
append, clone, curveTo, curveTo, getBounds2D, getPathIterator, lineTo, lineTo, moveTo, moveTo, quadTo, quadTo, transform, trimToSize
Methods inherited from class java.awt.geom.Path2D
append, closePath, contains, contains, contains, contains, contains, contains, contains, contains, createTransformedShape, getBounds, getCurrentPoint, getPathIterator, getWindingRule, intersects, intersects, intersects, intersects, reset, setWindingRule
-
Constructor Details
-
GeneralPath
public GeneralPath()Constructs a new empty single precisionGeneralPath
object with a default winding rule ofPath2D.WIND_NON_ZERO
.- Since:
- 1.2
-
GeneralPath
public GeneralPath(int rule) Constructs a newGeneralPath
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
- ifrule
is not eitherPath2D.WIND_EVEN_ODD
orPath2D.WIND_NON_ZERO
- Since:
- 1.2
- See Also:
-
GeneralPath
public GeneralPath(int rule, int initialCapacity) Constructs a newGeneralPath
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 ruleinitialCapacity
- the estimate for the number of path segments in the path- Throws:
IllegalArgumentException
- ifrule
is not eitherPath2D.WIND_EVEN_ODD
orPath2D.WIND_NON_ZERO
NegativeArraySizeException
- ifinitialCapacity
is negative- Since:
- 1.2
- See Also:
-
GeneralPath
Constructs a newGeneralPath
object from an arbitraryShape
object. All of the initial geometry and the winding rule for this path are taken from the specifiedShape
object.- Parameters:
s
- the specifiedShape
object- Throws:
NullPointerException
- ifs
isnull
- Since:
- 1.2
-