モジュール java.desktop
パッケージ java.awt.geom

クラスEllipse2D

  • すべての実装されたインタフェース:
    Shape, Cloneable
    直系の既知のサブクラス:
    Ellipse2D.Double, Ellipse2D.Float

    public abstract class Ellipse2D
    extends RectangularShape
    Ellipse2Dクラスは、表示枠矩形によって定義される楕円を記述します。

    このクラスは、2D楕円を格納するすべてのオブジェクトの抽象スーパー・クラスにすぎません。 座標の実際の記憶域表現はサブクラスに委ねられます。

    導入されたバージョン:
    1.2
    • コンストラクタの詳細

      • Ellipse2D

        protected Ellipse2D()
        これは、インスタンスを直接には生成できない抽象クラスです。 インスタンス生成のためには型固有の実装サブクラスが用意されており、これらのサブクラスにより、下記の各種アクセス用メソッドに必要な情報を格納するための形式が多数提供されます。
        導入されたバージョン:
        1.2
        関連項目:
        Ellipse2D.FloatEllipse2D.Double
    • メソッドの詳細

      • contains

        public boolean contains​(double x,
                                double y)
        指定された座標が、内側の定義によって記述されたShapeの境界の内側にあるかどうかをテストします。
        パラメータ:
        x - テストされる指定されたX座標
        y - テストされる指定されたY座標
        戻り値:
        指定された座標がShape境界の内側にある場合はtrue、それ以外の場合はfalse
        導入されたバージョン:
        1.2
      • intersects

        public boolean intersects​(double x,
                                  double y,
                                  double w,
                                  double h)
        Shapeの内部が指定された矩形領域の内部と交差しているかどうかをテストします。 Shapeの内部と指定された矩形領域の両方に含まれている点が存在する場合、その矩形領域はShapeと交差していると見なされます。

        Shape.intersects()メソッドを使用すると、次のような場合に、Shape実装は内部的にtrueを返すことができます。

        • 矩形領域とShapeが交差している可能性が高いが、
        • この共通部分を正確に判断する計算の負荷がかなり大きい。
        つまり、Shapesによっては、矩形領域がShapeと交差していない場合でもこのメソッドがtrueを返すことがあります。 Areaクラスは、ほとんどのShapeオブジェクトより正確な、幾何学的な共通部分の計算を実行するため、より的確な答えが必要な場合に使用できます。
        パラメータ:
        x - 指定された矩形領域の左上隅のX座標
        y - 指定された矩形領域の左上隅のY座標
        w - 指定された矩形領域の幅
        h - 指定された矩形領域の高さ
        戻り値:
        Shapeの内部と矩形領域の内部が交差しているか、またはどちらも交差している可能性が高いが、負荷が大きすぎて共通部分の計算を実行できない場合はtrue、それ以外の場合はfalse
        導入されたバージョン:
        1.2
        関連項目:
        Area
      • contains

        public boolean contains​(double x,
                                double y,
                                double w,
                                double h)
        Shapeの内部に、指定された矩形領域が完全に含まれるかどうかをテストします。 矩形領域全体がShape内に含まれていると見なされるには、矩形領域の内側にあるすべての座標がShape内にある必要があります。

        Shape.contains()メソッドを使用すると、次のような場合に、Shape実装は内部的にfalseを返すことができます。

        • intersectメソッドがtrueを返し、かつ
        • Shapeに矩形領域が完全に含まれるかどうかを判定するための計算の負荷が非常に大きい。
        つまり、Shapesによっては、Shapeに矩形領域が含まれている場合でもこのメソッドがfalseを返すことがあります。 Areaクラスは、ほとんどのShapeオブジェクトより正確な幾何学的計算を実行するため、より的確な答えが必要な場合に使用できます。
        パラメータ:
        x - 指定された矩形領域の左上隅のX座標
        y - 指定された矩形領域の左上隅のY座標
        w - 指定された矩形領域の幅
        h - 指定された矩形領域の高さ
        戻り値:
        Shapeの内部に、指定された矩形領域が完全に含まれる場合はtrue、それ以外の場合、またはShapeに矩形領域が含まれ、intersectsメソッドがtrueを返し、さらに負荷が大きすぎて包含の計算を実行できない場合はfalse
        導入されたバージョン:
        1.2
        関連項目:
        AreaShape.intersects(double, double, double, double)
      • getPathIterator

        public PathIterator getPathIterator​(AffineTransform at)
        このEllipse2Dの境界を定義する反復オブジェクトを返します。 このクラスのイテレータは、マルチ・スレッドに対して安全です。つまりこのEllipse2Dクラスは、このEllipse2Dオブジェクトの幾何学的図形に対する変更が、幾何学的図形についてすでに進行中の反復処理に影響を与えないことを保証します。
        パラメータ:
        at - 反復処理で返されるときに座標に適用されるオプションのAffineTransform、または変換されていない座標が必要な場合はnull
        戻り値:
        このEllipse2Dの輪郭の幾何学的図形を一度に1セグメントずつ返すPathIteratorオブジェクト。
        導入されたバージョン:
        1.2
      • equals

        public boolean equals​(Object obj)
        指定されたObjectがこのEllipse2Dと等しいかどうかを判定します。 指定されたObjectは、Ellipse2Dのインスタンスであり、位置およびサイズがこのEllipse2Dと同じ場合に、このEllipse2Dと等しいと見なされます。
        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        obj - このEllipse2Dと比較されるObject
        戻り値:
        objEllipse2Dのインスタンスであり、同じ値を持つ場合はtrue、そうでない場合はfalse
        導入されたバージョン:
        1.6
        関連項目:
        Object.hashCode()HashMap