Module java.desktop
Package java.awt.geom

Class Ellipse2D

所有已实现的接口:
Shape, Cloneable
直接已知的子类:
Ellipse2D.Double, Ellipse2D.Float

public abstract class Ellipse2D extends RectangularShape
Ellipse2D类描述了由一个框定矩形定义的椭圆。

这个类只是所有存储2D椭圆的对象的抽象超类。坐标的实际存储表示留给子类。

自 JDK 版本:
1.2
  • Constructor Details

    • Ellipse2D

      protected Ellipse2D()
      这是一个不能直接实例化的抽象类。有特定类型的实现子类可用于实例化,并提供多种格式来存储满足下面各种访问器方法所需信息的方法。
      自 JDK 版本:
      1.2
      另请参阅:
  • Method Details

    • contains

      public boolean contains(double x, double y)
      测试指定的坐标是否在Shape的边界内,如内部定义中所描述的。
      参数:
      x - 要测试的指定X坐标
      y - 要测试的指定Y坐标
      返回:
      如果指定的坐标在Shape边界内,则返回true;否则返回false
      自 JDK 版本:
      1.2
    • intersects

      public boolean intersects(double x, double y, double w, double h)
      测试Shape的内部是否与指定矩形区域的内部相交。如果矩形区域包含在Shape的内部和指定的矩形区域中的任何点都包含在Shape的内部,则认为矩形区域与Shape相交。

      Shape.intersects()方法允许Shape实现在以下情况下保守地返回true

      • 矩形区域和Shape相交的可能性很高,但
      • 准确确定此交集的计算代价过高。
      这意味着对于某些Shapes,即使矩形区域不与Shape相交,此方法可能返回true。与大多数Shape对象相比,Area类执行更准确的几何相交计算,因此如果需要更精确的答案,则可以使用该类。
      参数:
      x - 指定矩形区域左上角的X坐标
      y - 指定矩形区域左上角的Y坐标
      w - 指定矩形区域的宽度
      h - 指定矩形区域的高度
      返回:
      如果Shape的内部与矩形区域的内部相交,或者两者高度可能相交且计算交集的代价太高,则返回true;否则返回false
      自 JDK 版本:
      1.2
      另请参阅:
    • contains

      public boolean contains(double x, double y, double w, double h)
      测试Shape的内部是否完全包含指定的矩形区域。所有位于矩形区域内部的坐标必须位于整个矩形区域内部才能被认为完全包含在Shape内部。

      Shape.contains()方法允许Shape实现在以下情况下保守地返回false

      • intersect方法返回true
      • 确定Shape是否完全包含矩形区域的计算代价过高。
      这意味着对于某些Shapes,即使intersect方法返回true,此方法可能返回false。与大多数Shape对象相比,Area类执行更准确的几何计算,因此如果需要更精确的答案,则可以使用该类。
      参数:
      x - 指定矩形区域左上角的X坐标
      y - 指定矩形区域左上角的Y坐标
      w - 指定矩形区域的宽度
      h - 指定矩形区域的高度
      返回:
      如果Shape的内部完全包含指定的矩形区域,则返回true;否则返回false,或者如果Shape包含矩形区域且intersects方法返回true且包含计算代价过高,则返回false
      自 JDK 版本:
      1.2
      另请参阅:
    • getPathIterator

      public PathIterator getPathIterator(AffineTransform at)
      返回一个定义此Ellipse2D边界的迭代对象。此类的迭代器是多线程安全的,这意味着此Ellipse2D类保证对此Ellipse2D对象的几何修改不会影响已经在处理中的任何几何迭代。
      参数:
      at - 应用于迭代返回的坐标的可选AffineTransform,如果希望使用未转换的坐标,则为null
      返回:
      返回PathIterator对象,按一段一段返回此Ellipse2D的轮廓几何。
      自 JDK 版本:
      1.2
    • hashCode

      public int hashCode()
      返回此Ellipse2D的哈希码。
      覆盖:
      hashCode 在类 Object
      返回:
      返回此Ellipse2D的哈希码。
      自 JDK 版本:
      1.6
      另请参阅:
    • equals

      public boolean equals(Object obj)
      确定指定的Object是否等于此Ellipse2D。如果指定的ObjectEllipse2D的实例,并且其位置和大小与此Ellipse2D相同,则它等于此Ellipse2D
      覆盖:
      equals 在类 Object
      参数:
      obj - 与此Ellipse2D进行比较的Object
      返回:
      如果objEllipse2D的实例并且具有相同的值,则返回true;否则返回false
      自 JDK 版本:
      1.6
      另请参阅: