Arc2D.Float (Java Platform SE 8 )
Keywords: java.awt.geom.Arc2D.Float class
Date: 2026-07-22

java.awt.geom

## Class Arc2D.Float

- java.lang.Object
- - java.awt.geom.RectangularShape
  - - java.awt.geom.Arc2D
    - - java.awt.geom.Arc2D.Float

- All Implemented Interfaces:
    Shape, Serializable, Cloneable
  Enclosing class:
    Arc2D

      public static class Arc2D.Float
      extends Arc2D
      implements Serializable

  This class defines an arc specified in `float` precision.
  Since:
    1.2
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class java.awt.geom.Arc2D

      `Arc2D.Double, Arc2D.Float`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `float` | `extent` The angular extent of the arc in degrees.
    `float` | `height` The overall height of the full ellipse of which this arc is a partial section (not considering the angular extents).
    `float` | `start` The starting angle of the arc in degrees.
    `float` | `width` The overall width of the full ellipse of which this arc is a partial section (not considering the angular extents).
    `float` | `x` The X coordinate of the upper-left corner of the framing rectangle of the arc.
    `float` | `y` The Y coordinate of the upper-left corner of the framing rectangle of the arc.

    - ### Fields inherited from class java.awt.geom.Arc2D

      `CHORD, OPEN, PIE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Float()` Constructs a new OPEN arc, initialized to location (0, 0), size (0, 0), angular extents (start = 0, extent = 0).
    `Float(float x, float y, float w, float h, float start, float extent, int type)` Constructs a new arc, initialized to the specified location, size, angular extents, and closure type.
    `Float(int type)` Constructs a new arc, initialized to location (0, 0), size (0, 0), angular extents (start = 0, extent = 0), and the specified closure type.
    `Float(Rectangle2D ellipseBounds, float start, float extent, int type)` Constructs a new arc, initialized to the specified location, size, angular extents, and closure type.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `double` | `getAngleExtent()` Returns the angular extent of the arc.
    `double` | `getAngleStart()` Returns the starting angle of the arc.
    `double` | `getHeight()` Returns the height of the framing rectangle in `double` precision.
    `double` | `getWidth()` Returns the width of the framing rectangle in `double` precision.
    `double` | `getX()` Returns the X coordinate of the upper-left corner of the framing rectangle in `double` precision.
    `double` | `getY()` Returns the Y coordinate of the upper-left corner of the framing rectangle in `double` precision.
    `boolean` | `isEmpty()` Determines whether the `RectangularShape` is empty.
    `protected Rectangle2D` | `makeBounds(double x, double y, double w, double h)` Constructs a `Rectangle2D` of the appropriate precision to hold the parameters calculated to be the framing rectangle of this arc.
    `void` | `setAngleExtent(double angExt)` Sets the angular extent of this arc to the specified double value.
    `void` | `setAngleStart(double angSt)` Sets the starting angle of this arc to the specified double value.
    `void` | `setArc(double x, double y, double w, double h, double angSt, double angExt, int closure)` Sets the location, size, angular extents, and closure type of this arc to the specified double values.

    - ### Methods inherited from class java.awt.geom.Arc2D

      `contains, contains, contains, containsAngle, equals, getArcType, getBounds2D, getEndPoint, getPathIterator, getStartPoint, hashCode, intersects, setAngles, setAngles, setAngleStart, setArc, setArc, setArc, setArcByCenter, setArcByTangent, setArcType, setFrame`

    - ### Methods inherited from class java.awt.geom.RectangularShape

      `clone, contains, getBounds, getCenterX, getCenterY, getFrame, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, intersects, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### x

          public float x

      The X coordinate of the upper-left corner of the framing rectangle of the arc.
      Since:
        1.2

    - #### y

          public float y

      The Y coordinate of the upper-left corner of the framing rectangle of the arc.
      Since:
        1.2

    - #### width

          public float width

      The overall width of the full ellipse of which this arc is a partial section (not considering the angular extents).
      Since:
        1.2

    - #### height

          public float height

      The overall height of the full ellipse of which this arc is a partial section (not considering the angular extents).
      Since:
        1.2

    - #### start

          public float start

      The starting angle of the arc in degrees.
      Since:
        1.2

    - #### extent

          public float extent

      The angular extent of the arc in degrees.
      Since:
        1.2

  - ### Constructor Detail

    - #### Float

          public Float()

      Constructs a new OPEN arc, initialized to location (0, 0), size (0, 0), angular extents (start = 0, extent = 0).
      Since:
        1.2

    - #### Float

          public Float(int type)

      Constructs a new arc, initialized to location (0, 0), size (0, 0), angular extents (start = 0, extent = 0), and the specified closure type.
      Parameters:
        `type` - The closure type for the arc: `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
      Since:
        1.2

    - #### Float

          public Float(float x,
                       float y,
                       float w,
                       float h,
                       float start,
                       float extent,
                       int type)

      Constructs a new arc, initialized to the specified location, size, angular extents, and closure type.
      Parameters:
        `x` - The X coordinate of the upper-left corner of the arc's framing rectangle.
        `y` - The Y coordinate of the upper-left corner of the arc's framing rectangle.
        `w` - The overall width of the full ellipse of which this arc is a partial section.
        `h` - The overall height of the full ellipse of which this arc is a partial section.
        `start` - The starting angle of the arc in degrees.
        `extent` - The angular extent of the arc in degrees.
        `type` - The closure type for the arc: `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
      Since:
        1.2

    - #### Float

          public Float(Rectangle2D ellipseBounds,
                       float start,
                       float extent,
                       int type)

      Constructs a new arc, initialized to the specified location, size, angular extents, and closure type.
      Parameters:
        `ellipseBounds` - The framing rectangle that defines the outer boundary of the full ellipse of which this arc is a partial section.
        `start` - The starting angle of the arc in degrees.
        `extent` - The angular extent of the arc in degrees.
        `type` - The closure type for the arc: `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
      Since:
        1.2

  - ### Method Detail

    - #### getX

          public double getX()

      Returns the X coordinate of the upper-left corner of the framing rectangle in `double` precision. Note that the arc partially inscribes the framing rectangle of this `RectangularShape`.
      Specified by:
        `getX` in class `RectangularShape`
      Returns:
        the X coordinate of the upper-left corner of the framing rectangle.
      Since:
        1.2

    - #### getY

          public double getY()

      Returns the Y coordinate of the upper-left corner of the framing rectangle in `double` precision. Note that the arc partially inscribes the framing rectangle of this `RectangularShape`.
      Specified by:
        `getY` in class `RectangularShape`
      Returns:
        the Y coordinate of the upper-left corner of the framing rectangle.
      Since:
        1.2

    - #### getWidth

          public double getWidth()

      Returns the width of the framing rectangle in `double` precision. Note that the arc partially inscribes the framing rectangle of this `RectangularShape`.
      Specified by:
        `getWidth` in class `RectangularShape`
      Returns:
        the width of the framing rectangle.
      Since:
        1.2

    - #### getHeight

          public double getHeight()

      Returns the height of the framing rectangle in `double` precision. Note that the arc partially inscribes the framing rectangle of this `RectangularShape`.
      Specified by:
        `getHeight` in class `RectangularShape`
      Returns:
        the height of the framing rectangle.
      Since:
        1.2

    - #### getAngleStart

          public double getAngleStart()

      Returns the starting angle of the arc.
      Specified by:
        `getAngleStart` in class `Arc2D`
      Returns:
        A double value that represents the starting angle of the arc in degrees.
      Since:
        1.2
      See Also:
        `Arc2D.setAngleStart(double)`

    - #### getAngleExtent

          public double getAngleExtent()

      Returns the angular extent of the arc.
      Specified by:
        `getAngleExtent` in class `Arc2D`
      Returns:
        A double value that represents the angular extent of the arc in degrees.
      Since:
        1.2
      See Also:
        `Arc2D.setAngleExtent(double)`

    - #### isEmpty

          public boolean isEmpty()

      Determines whether the `RectangularShape` is empty. When the `RectangularShape` is empty, it encloses no area.
      Specified by:
        `isEmpty` in class `RectangularShape`
      Returns:
        `true` if the `RectangularShape` is empty; `false` otherwise.
      Since:
        1.2

    - #### setArc

          public void setArc(double x,
                             double y,
                             double w,
                             double h,
                             double angSt,
                             double angExt,
                             int closure)

      Sets the location, size, angular extents, and closure type of this arc to the specified double values.
      Specified by:
        `setArc` in class `Arc2D`
      Parameters:
        `x` - The X coordinate of the upper-left corner of the arc.
        `y` - The Y coordinate of the upper-left corner of the arc.
        `w` - The overall width of the full ellipse of which this arc is a partial section.
        `h` - The overall height of the full ellipse of which this arc is a partial section.
        `angSt` - The starting angle of the arc in degrees.
        `angExt` - The angular extent of the arc in degrees.
        `closure` - The closure type for the arc: `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
      Since:
        1.2

    - #### setAngleStart

          public void setAngleStart(double angSt)

      Sets the starting angle of this arc to the specified double value.
      Specified by:
        `setAngleStart` in class `Arc2D`
      Parameters:
        `angSt` - The starting angle of the arc in degrees.
      Since:
        1.2
      See Also:
        `Arc2D.getAngleStart()`

    - #### setAngleExtent

          public void setAngleExtent(double angExt)

      Sets the angular extent of this arc to the specified double value.
      Specified by:
        `setAngleExtent` in class `Arc2D`
      Parameters:
        `angExt` - The angular extent of the arc in degrees.
      Since:
        1.2
      See Also:
        `Arc2D.getAngleExtent()`

    - #### makeBounds

          protected Rectangle2D makeBounds(double x,
                                           double y,
                                           double w,
                                           double h)

      Constructs a `Rectangle2D` of the appropriate precision to hold the parameters calculated to be the framing rectangle of this arc.
      Specified by:
        `makeBounds` in class `Arc2D`
      Parameters:
        `x` - The X coordinate of the upper-left corner of the framing rectangle.
        `y` - The Y coordinate of the upper-left corner of the framing rectangle.
        `w` - The width of the framing rectangle.
        `h` - The height of the framing rectangle.
      Returns:
        a `Rectangle2D` that is the framing rectangle of this arc.
      Since:
        1.2

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.