- 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
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 Double()
Path2D.WIND_NON_ZERO
のデフォルトの屈曲規則を使用して、新しい空の倍精度Path2D
オブジェクトを構築します。Double(int rule)
パスの内部を定義する必要があるオペレーションを制御するために屈曲規則を指定して、新しい空の倍精度Path2D
オブジェクトを構築します。Double(int rule, int initialCapacity)
屈曲規則、およびパス・セグメントを格納できる初期容量を指定して、新しい空の倍精度Path2D
オブジェクトを構築します。Double(Shape s)
任意のShape
オブジェクトから、新しい空の倍精度Path2D
を構築します。Double(Shape s, AffineTransform at)
AffineTransform
オブジェクトによって変換される、任意のShape
オブジェクトから新しい倍精度Path2D
オブジェクトを構築します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 void
append(PathIterator pi, boolean connect)
指定されたPathIterator
オブジェクトの幾何学的図形をパスに追加します。その新しい幾何学的図形をライン・セグメントで既存のパス・セグメントに接続することも可能です。Object
clone()
このオブジェクトと同じクラスの新しいオブジェクトを作成します。void
curveTo(double x1, double y1, double x2, double y2, double x3, double y3)
3つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)
と点(x2,y2)
をベジェ制御点として使用して、現在の座標と指定された座標(x3,y3)
の両方を通るベジェ曲線として描画します。Rectangle2D
getBounds2D()
高精度で、かつgetBounds
メソッドより正確なShape
のバウンディング・ボックスを返します。PathIterator
getPathIterator(AffineTransform at)
Shape
の境界に沿って反復し、Shape
の輪郭の幾何学的図形へのアクセスを提供するイテレータ・オブジェクトを返します。void
lineTo(double x, double y)
現在の座標から倍精度で新しく指定された座標まで直線を描画して点をパスに追加します。void
moveTo(double x, double y)
倍精度で指定された座標に移動して点をパスに追加します。void
quadTo(double x1, double y1, double x2, double y2)
2つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)
を2次パラメトリック制御点として使用して、現在の座標と指定された座標(x2,y2)
を通る2次曲線として描画します。void
transform(AffineTransform at)
指定されたAffineTransform
を使用して、このパスの幾何学的図形を変換します。-
クラス java.awt.geom.Path2Dで宣言されたメソッド
append, closePath, contains, contains, contains, contains, contains, contains, contains, contains, createTransformedShape, getBounds, getCurrentPoint, getPathIterator, getWindingRule, intersects, intersects, intersects, intersects, reset, setWindingRule, trimToSize
-
-
-
-
コンストラクタの詳細
-
Double
public Double()
Path2D.WIND_NON_ZERO
のデフォルトの屈曲規則を使用して、新しい空の倍精度Path2D
オブジェクトを構築します。- 導入されたバージョン:
- 1.6
-
Double
public Double(int rule)
パスの内部を定義する必要があるオペレーションを制御するために屈曲規則を指定して、新しい空の倍精度Path2D
オブジェクトを構築します。- パラメータ:
rule
- 屈曲規則- 導入されたバージョン:
- 1.6
- 関連項目:
Path2D.WIND_EVEN_ODD
,Path2D.WIND_NON_ZERO
-
Double
public Double(int rule, int initialCapacity)
屈曲規則、およびパス・セグメントを格納できる初期容量を指定して、新しい空の倍精度Path2D
オブジェクトを構築します。 この数字は、パスに存在するパス・セグメントの数についての初期推定ですが、このパスにパス・セグメントが追加されるときに、必要に応じて格納するためのストレージが拡張されます。- パラメータ:
rule
- 屈曲規則initialCapacity
- パスにあるパス・セグメントの数の推定値- 導入されたバージョン:
- 1.6
- 関連項目:
Path2D.WIND_EVEN_ODD
,Path2D.WIND_NON_ZERO
-
Double
public Double(Shape s)
任意のShape
オブジェクトから、新しい空の倍精度Path2D
を構築します。 このパスの初期幾何学的図形および屈曲規則はすべて、指定されたShape
オブジェクトからとられます。- パラメータ:
s
- 指定されたShape
オブジェクト- 導入されたバージョン:
- 1.6
-
Double
public Double(Shape s, AffineTransform at)
AffineTransform
オブジェクトによって変換される、任意のShape
オブジェクトから新しい倍精度Path2D
オブジェクトを構築します。 このパスの初期幾何学的図形および屈曲規則はすべて、指定されたShape
オブジェクトからとられ、指定されたAffineTransform
オブジェクトによって変換されます。- パラメータ:
s
- 指定されたShape
オブジェクトat
- 指定されたAffineTransform
オブジェクト- 導入されたバージョン:
- 1.6
-
-
メソッドの詳細
-
moveTo
public final void moveTo(double x, double y)
倍精度で指定された座標に移動して点をパスに追加します。
-
lineTo
public final void lineTo(double x, double y)
現在の座標から倍精度で新しく指定された座標まで直線を描画して点をパスに追加します。
-
quadTo
public final void quadTo(double x1, double y1, double x2, double y2)
2つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)
を2次パラメトリック制御点として使用して、現在の座標と指定された座標(x2,y2)
を通る2次曲線として描画します。 すべての座標は、倍精度で指定されます。
-
curveTo
public final void curveTo(double x1, double y1, double x2, double y2, double x3, double y3)
3つの新しい点によって定義される曲線セグメントをパスに追加します。曲線セグメントは、指定された点(x1,y1)
と点(x2,y2)
をベジェ制御点として使用して、現在の座標と指定された座標(x3,y3)
の両方を通るベジェ曲線として描画します。 すべての座標は、倍精度で指定されます。
-
append
public final void append(PathIterator pi, boolean connect)
指定されたPathIterator
オブジェクトの幾何学的図形をパスに追加します。その新しい幾何学的図形をライン・セグメントで既存のパス・セグメントに接続することも可能です。connect
パラメータがtrue
であり、パスが空でない場合、追加されたShape
の幾何学的図形の初期moveTo
はlineTo
セグメントに変わります。 そのような接続lineTo
セグメントのデスティネーションの座標が現在開いているサブパスの終了座標と一致する場合、セグメントは不要なので省略されます。 指定されたShape
の屈曲規則は無視され、追加された幾何学的図形はこのパスに指定された屈曲規則に制御されます。
-
transform
public final void transform(AffineTransform at)
指定されたAffineTransform
を使用して、このパスの幾何学的図形を変換します。 幾何学的図形は適切に変換され、これにより、このオブジェクトによって定義される境界が永久的に変更されます。
-
getBounds2D
public final Rectangle2D getBounds2D()
高精度で、かつgetBounds
メソッドより正確なShape
のバウンディング・ボックスを返します。 返されたRectangle2D
が、Shape
を囲む最小のバウンディング・ボックスであるという保証はありません。Shape
が、示されたRectangle2D
内に完全に含まれているだけです。 戻り値を、倍精度値を使用して寸法を格納するRectangle2D
のインスタンスにすることができるため、このメソッドによって返されたバウンディング・ボックスは通常、getBounds
メソッドによって返されたものより厳密であり、オーバーフローの問題のために失敗することはありません。内側の定義によって、
shape
の定義する輪郭上の点が、返されたbounds
オブジェクトに含まれていると見なされない状況が発生する場合があります。ただし、これは、これらの点が元のshape
にも含まれていないと見なされる場合のみです。point
がcontains(point)
メソッドに従ってshape
の内側にある場合は、bounds
のcontains(point)
メソッドに従って、返されたRectangle2D
境界オブジェクトの内側にある必要があります。 具体的には、次のようになります。shape.contains(p)
にはbounds.contains(p)
が必要point
がshape
の内側にない場合は、引き続きbounds
オブジェクトに含まれている可能性があります。bounds.contains(p)
はshape.contains(p)
を示さない- 定義:
getBounds2D
、インタフェースShape
- 戻り値:
Shape
の高精度のバウンディング・ボックスであるRectangle2D
のインスタンス。- 導入されたバージョン:
- 1.6
- 関連項目:
Shape.getBounds()
-
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
- 関連項目:
Cloneable
-
-