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

クラスPath2D.Double

java.lang.Object
java.awt.geom.Path2D
java.awt.geom.Path2D.Double
すべての実装されたインタフェース:
Shape, Serializable, Cloneable
含まれているクラス:
Path2D

public static class Path2D.Double extends Path2D implements Serializable
Doubleクラスは、座標が倍精度浮動小数点で格納される幾何学的パスを定義します。
導入されたバージョン:
1.6
関連項目:
  • ネストされたクラスのサマリー

    クラス java.awt.geom.Path2Dで宣言されたネストされたクラス/インタフェース

    Path2D.Double, Path2D.Float
  • フィールドのサマリー

    クラス java.awt.geom.Path2Dで宣言されたフィールド

    WIND_EVEN_ODD, WIND_NON_ZERO
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    Path2D.WIND_NON_ZEROのデフォルトの屈曲規則を使用して、新しい空の倍精度Path2Dオブジェクトを構築します。
    Double(int rule)
    パスの内部を定義する必要があるオペレーションを制御するために屈曲規則を指定して、新しい空の倍精度Path2Dオブジェクトを構築します。
    Double(int rule, int initialCapacity)
    屈曲規則、およびパス・セグメントを格納できる初期容量を指定して、新しい空の倍精度Path2Dオブジェクトを構築します。
    任意のShapeオブジェクトから、新しい空の倍精度Path2Dを構築します。
    AffineTransformオブジェクトによって変換される、任意のShapeオブジェクトから新しい倍精度Path2Dオブジェクトを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    final void
    append(PathIterator pi, boolean connect)
    指定されたPathIteratorオブジェクトの幾何学的図形をパスに追加します。その新しい幾何学的図形をライン・セグメントで既存のパス・セグメントに接続することも可能です。
    final Object
    このオブジェクトと同じクラスの新しいオブジェクトを作成します。
    final void
    curveTo(double x1, double y1, double x2, double y2, double x3, double y3)
    3つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)と点(x2,y2)をベジェ制御点として使用して、現在の座標と指定された座標(x3,y3)の両方を通るベジェ曲線として描画します。
    高精度で、かつgetBoundsメソッドより正確なShapeのバウンディング・ボックスを返します。
    Shapeの境界に沿って反復し、Shapeの輪郭の幾何学的図形へのアクセスを提供するイテレータ・オブジェクトを返します。
    final void
    lineTo(double x, double y)
    現在の座標から倍精度で新しく指定された座標まで直線を描画して点をパスに追加します。
    final void
    moveTo(double x, double y)
    倍精度で指定された座標に移動して点をパスに追加します。
    final void
    quadTo(double x1, double y1, double x2, double y2)
    2つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)を2次パラメトリック制御点として使用して、現在の座標と指定された座標(x2,y2)を通る2次曲線として描画します。
    final void
    指定されたAffineTransformを使用して、このパスの幾何学的図形を変換します。
    final void
    このPath2Dインスタンスの容量を現在のサイズに縮小します。

    クラス java.lang.Objectで宣言されたメソッド

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • Double

      public Double()
      Path2D.WIND_NON_ZEROのデフォルトの屈曲規則を使用して、新しい空の倍精度Path2Dオブジェクトを構築します。
      導入されたバージョン:
      1.6
    • Double

      public Double(int rule)
      パスの内部を定義する必要があるオペレーションを制御するために屈曲規則を指定して、新しい空の倍精度Path2Dオブジェクトを構築します。
      パラメータ:
      rule - 屈曲規則
      例外:
      IllegalArgumentException - rulePath2D.WIND_EVEN_ODDまたはPath2D.WIND_NON_ZEROでない場合
      導入されたバージョン:
      1.6
      関連項目:
    • Double

      public Double(int rule, int initialCapacity)
      屈曲規則、およびパス・セグメントを格納できる初期容量を指定して、新しい空の倍精度Path2Dオブジェクトを構築します。 この数字は、パスに存在するパス・セグメントの数についての初期推定ですが、このパスにパス・セグメントが追加されるときに、必要に応じて格納するためのストレージが拡張されます。
      パラメータ:
      rule - 屈曲規則
      initialCapacity - パスにあるパス・セグメントの数の推定値
      例外:
      IllegalArgumentException - rulePath2D.WIND_EVEN_ODDまたはPath2D.WIND_NON_ZEROでない場合
      NegativeArraySizeException - initialCapacityが負の場合
      導入されたバージョン:
      1.6
      関連項目:
    • Double

      public Double(Shape s)
      任意のShapeオブジェクトから、新しい空の倍精度Path2Dを構築します。 このパスの初期幾何学的図形および屈曲規則はすべて、指定されたShapeオブジェクトからとられます。
      パラメータ:
      s - 指定されたShapeオブジェクト
      例外:
      NullPointerException - snullである場合
      導入されたバージョン:
      1.6
    • Double

      public Double(Shape s, AffineTransform at)
      AffineTransformオブジェクトによって変換される、任意のShapeオブジェクトから新しい倍精度Path2Dオブジェクトを構築します。 このパスの初期幾何学的図形および屈曲規則はすべて、指定されたShapeオブジェクトからとられ、指定されたAffineTransformオブジェクトによって変換されます。
      パラメータ:
      s - 指定されたShapeオブジェクト
      at - 指定されたAffineTransformオブジェクト
      例外:
      NullPointerException - snullである場合
      導入されたバージョン:
      1.6
  • メソッドの詳細

    • trimToSize

      public final void trimToSize()
      クラス: Path2Dからコピーされた説明
      このPath2Dインスタンスの容量を現在のサイズに縮小します。 アプリケーションは、この操作を使用してパスのストレージを最小限に抑えることができます。
      定義:
      クラスPath2DtrimToSize
    • moveTo

      public final void moveTo(double x, double y)
      倍精度で指定された座標に移動して点をパスに追加します。
      定義:
      moveTo、クラスPath2D
      パラメータ:
      x - 指定されたX座標
      y - 指定されたY座標
      導入されたバージョン:
      1.6
    • lineTo

      public final void lineTo(double x, double y)
      現在の座標から倍精度で新しく指定された座標まで直線を描画して点をパスに追加します。
      定義:
      lineTo、クラスPath2D
      パラメータ:
      x - 指定されたX座標
      y - 指定されたY座標
      導入されたバージョン:
      1.6
    • quadTo

      public final void quadTo(double x1, double y1, double x2, double y2)
      2つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)を2次パラメトリック制御点として使用して、現在の座標と指定された座標(x2,y2)を通る2次曲線として描画します。 すべての座標は、倍精度で指定されます。
      定義:
      quadTo、クラスPath2D
      パラメータ:
      x1 - 2次制御点のX座標
      y1 - 2次制御点のY座標
      x2 - 最後の終点のX座標
      y2 - 最後の終点のY座標
      導入されたバージョン:
      1.6
    • curveTo

      public final void curveTo(double x1, double y1, double x2, double y2, double x3, double y3)
      3つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)と点(x2,y2)をベジェ制御点として使用して、現在の座標と指定された座標(x3,y3)の両方を通るベジェ曲線として描画します。 すべての座標は、倍精度で指定されます。
      定義:
      curveTo、クラスPath2D
      パラメータ:
      x1 - 最初のベジェ制御点のX座標
      y1 - 最初のベジェ制御点のY座標
      x2 - 2番目のベジェ制御点のX座標
      y2 - 2番目のベジェ制御点のY座標
      x3 - 最後の終点のX座標
      y3 - 最後の終点のY座標
      導入されたバージョン:
      1.6
    • append

      public final void append(PathIterator pi, boolean connect)
      指定されたPathIteratorオブジェクトの幾何学的図形をパスに追加します。その新しい幾何学的図形をライン・セグメントで既存のパス・セグメントに接続することも可能です。 connectパラメータがtrueであり、パスが空でない場合、追加されたShapeの幾何学的図形の初期moveTolineToセグメントに変わります。 そのような接続lineToセグメントのデスティネーションの座標が現在開いているサブパスの終了座標と一致する場合、セグメントは不要なので省略されます。 指定されたShapeの屈曲規則は無視され、追加された幾何学的図形はこのパスに指定された屈曲規則に制御されます。
      定義:
      append、クラスPath2D
      パラメータ:
      pi - このパスに幾何学的図形が追加されるPathIterator
      connect - 新しい幾何学的図形を既存のパスに接続するために初期moveToセグメントをlineToセグメントに変えるかどうかを制御するboolean値
      導入されたバージョン:
      1.6
    • transform

      public final void transform(AffineTransform at)
      指定されたAffineTransformを使用して、このパスの幾何学的図形を変換します。 幾何学的図形は適切に変換され、これにより、このオブジェクトによって定義される境界が永久的に変更されます。
      定義:
      transform、クラスPath2D
      パラメータ:
      at - 領域を変換するのに使うAffineTransform
      導入されたバージョン:
      1.6
    • getBounds2D

      public final Rectangle2D getBounds2D()
      高精度で、かつgetBoundsメソッドより正確なShapeのバウンディング・ボックスを返します。 返されたRectangle2Dが、Shapeを囲む最小のバウンディング・ボックスであるという保証はありません。Shapeが、示されたRectangle2D内に完全に含まれているだけです。 戻り値を、倍精度値を使用して寸法を格納するRectangle2Dのインスタンスにすることができるため、このメソッドによって返されたバウンディング・ボックスは通常、getBoundsメソッドによって返されたものより厳密であり、オーバーフローの問題のために失敗することはありません。

      内側の定義によって、shapeの定義する輪郭上の点が、返されたboundsオブジェクトに含まれていると見なされない状況が発生する場合があります。ただし、これは、これらの点が元のshapeにも含まれていないと見なされる場合のみです。

      pointcontains(point)メソッドに従ってshapeの内側にある場合は、boundscontains(point)メソッドに従って、返されたRectangle2D境界オブジェクトの内側にある必要があります。 具体的には、次のようになります。

      shape.contains(p)にはbounds.contains(p)が必要

      pointshapeの内側にない場合は、引き続きboundsオブジェクトに含まれている可能性があります。

      bounds.contains(p)shape.contains(p)を示さない

      定義:
      getBounds2D、インタフェースShape
      戻り値:
      Shapeの高精度のバウンディング・ボックスであるRectangle2Dのインスタンス。
      導入されたバージョン:
      1.6
      関連項目:
    • getPathIterator

      public final PathIterator getPathIterator(AffineTransform at)
      Shapeの境界に沿って反復し、Shapeの輪郭の幾何学的図形へのアクセスを提供するイテレータ・オブジェクトを返します。 オプションのAffineTransformが指定されると、反復処理で返される座標がそれに応じて変換されます。

      このメソッドを呼び出すたびに、同時に使用されているほかのすべてのPathIteratorオブジェクトとは無関係に、Shapeオブジェクトの幾何学的図形をトラバースする新しいPathIteratorオブジェクトが返されます。

      Shapeインタフェースを実装するオブジェクトにより、進行中の反復が、このような反復中に発生する可能性のある元のオブジェクトの幾何学的図形へのどのような変更からも切り離されることを推奨しますが、これは保証されません。

      このクラスのイテレータは、マルチ・スレッドに対して安全ではありません。つまりこのPath2Dクラスでは、このPath2Dオブジェクトの幾何学的図形を変更すると、この幾何学的図形についてすでに進行中の反復処理に影響を及ぼす場合があります。

      定義:
      getPathIterator、インタフェースShape
      パラメータ:
      at - AffineTransform
      戻り値:
      このShapeの境界に沿って反復し、このShapeの輪郭線の幾何学的図形へのアクセスを提供する新しいPathIterator
      導入されたバージョン:
      1.6
    • clone

      public final Object clone()
      このオブジェクトと同じクラスの新しいオブジェクトを作成します。
      定義:
      clone、クラスPath2D
      戻り値:
      このインスタンスの複製。
      例外:
      OutOfMemoryError - 十分なメモリーがない場合。
      導入されたバージョン:
      1.6
      関連項目: