Class Ellipse2D

java.lang.Object
java.awt.geom.RectangularShape
java.awt.geom.Ellipse2D
All Implemented Interfaces:
Shape,Cloneable
Direct Known Subclasses:
Ellipse2D.Double,Ellipse2D.Float

public abstract classEllipse2DextendsRectangularShape
TheEllipse2D class describes an ellipse that is defined by a framing rectangle.

This class is only the abstract superclass for all objects which store a 2D ellipse. The actual storage representation of the coordinates is left to the subclass.

Since:
1.2
  • Constructor Details

    • Ellipse2D

      protected Ellipse2D()
      This is an abstract class that cannot be instantiated directly. Type-specific implementation subclasses are available for instantiation and provide a number of formats for storing the information necessary to satisfy the various accessor methods below.
      Since:
      1.2
      See Also:
  • Method Details

    • contains

      public boolean contains(double x, double y)
      Tests if the specified coordinates are inside the boundary of theShape, as described by thedefinition of insideness.
      Parameters:
      x - the specified X coordinate to be tested
      y - the specified Y coordinate to be tested
      Returns:
      true if the specified coordinates are inside theShape boundary;false otherwise.
      Since:
      1.2
    • intersects

      public boolean intersects(double x, double y, double w, double h)
      Tests if the interior of theShape intersects the interior of a specified rectangular area. The rectangular area is considered to intersect theShape if any point is contained in both the interior of theShape and the specified rectangular area.

      TheShape.intersects() method allows aShape implementation to conservatively returntrue when:

      • there is a high probability that the rectangular area and theShape intersect, but
      • the calculations to accurately determine this intersection are prohibitively expensive.
      This means that for someShapes this method might returntrue even though the rectangular area does not intersect theShape. TheArea class performs more accurate computations of geometric intersection than mostShape objects and therefore can be used if a more precise answer is required.

      Parameters:
      x - the X coordinate of the upper-left corner of the specified rectangular area
      y - the Y coordinate of the upper-left corner of the specified rectangular area
      w - the width of the specified rectangular area
      h - the height of the specified rectangular area
      Returns:
      true if the interior of theShape and the interior of the rectangular area intersect, or are both highly likely to intersect and intersection calculations would be too expensive to perform;false otherwise.
      Since:
      1.2
      See Also:
    • contains

      public boolean contains(double x, double y, double w, double h)
      Tests if the interior of theShape entirely contains the specified rectangular area. All coordinates that lie inside the rectangular area must lie within theShape for the entire rectangular area to be considered contained within theShape.

      TheShape.contains() method allows aShape implementation to conservatively returnfalse when:

      • theintersect method returnstrue and
      • the calculations to determine whether or not theShape entirely contains the rectangular area are prohibitively expensive.
      This means that for someShapes this method might returnfalse even though theShape contains the rectangular area. TheArea class performs more accurate geometric computations than mostShape objects and therefore can be used if a more precise answer is required.

      Parameters:
      x - the X coordinate of the upper-left corner of the specified rectangular area
      y - the Y coordinate of the upper-left corner of the specified rectangular area
      w - the width of the specified rectangular area
      h - the height of the specified rectangular area
      Returns:
      true if the interior of theShape entirely contains the specified rectangular area;false otherwise or, if theShape contains the rectangular area and theintersects method returnstrue and the containment calculations would be too expensive to perform.
      Since:
      1.2
      See Also:
    • getPathIterator

      public PathIterator getPathIterator(AffineTransform at)
      Returns an iteration object that defines the boundary of thisEllipse2D. The iterator for this class is multi-threaded safe, which means that thisEllipse2D class guarantees that modifications to the geometry of thisEllipse2D object do not affect any iterations of that geometry that are already in process.
      Parameters:
      at - an optionalAffineTransform to be applied to the coordinates as they are returned in the iteration, ornull if untransformed coordinates are desired
      Returns:
      thePathIterator object that returns the geometry of the outline of thisEllipse2D, one segment at a time.
      Since:
      1.2
    • hashCode

      public int hashCode()
      Returns the hashcode for thisEllipse2D.
      Overrides:
      hashCode in class Object
      Returns:
      the hashcode for thisEllipse2D.
      Since:
      1.6
      See Also:
    • equals

      public boolean equals(Object obj)
      Determines whether or not the specifiedObject is equal to thisEllipse2D. The specifiedObject is equal to thisEllipse2D if it is an instance ofEllipse2D and if its location and size are the same as thisEllipse2D.
      Overrides:
      equals in class Object
      Parameters:
      obj - anObject to be compared with thisEllipse2D.
      Returns:
      true ifobj is an instance ofEllipse2D and has the same values;false otherwise.
      Since:
      1.6
      See Also: