|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.geom.RectangularShape java.awt.geom.Rectangle2D
public abstract class Rectangle2D
Rectangle2D
クラスは、位置 (x,y)
およびサイズ (w x h)
で定義される矩形を記述します。
このクラスは、2D 矩形を格納するすべてのオブジェクトの抽象スーパークラスにすぎません。座標の実際の記憶域表現はサブクラスに委ねられます。
入れ子のクラスの概要 | |
---|---|
static class |
Rectangle2D.Double
Double クラスは、double 座標で指定される矩形を定義します。 |
static class |
Rectangle2D.Float
Float クラスは、float 座標で指定される矩形を定義します。 |
フィールドの概要 | |
---|---|
static int |
OUT_BOTTOM
点がこの Rectangle2D の下にあることを示すビットマスクです。 |
static int |
OUT_LEFT
点がこの Rectangle2D の左にあることを示すビットマスクです。 |
static int |
OUT_RIGHT
点がこの Rectangle2D の右にあることを示すビットマスクです。 |
static int |
OUT_TOP
点がこの Rectangle2D の上にあることを示すビットマスクです。 |
コンストラクタの概要 | |
---|---|
protected |
Rectangle2D()
これは、インスタンスを直接には生成できない abstract クラスです。 |
メソッドの概要 | |
---|---|
void |
add(double newx,
double newy)
倍精度の newx 引数および newy 引数で指定された点をこの Rectangle2D に追加します。 |
void |
add(Point2D pt)
この Rectangle2D に Point2D オブジェクトの pt を追加します。 |
void |
add(Rectangle2D r)
この Rectangle2D に Rectangle2D オブジェクトを追加します。 |
boolean |
contains(double x,
double y)
指定された座標が Shape の境界内にあるかどうかを判定します。 |
boolean |
contains(double x,
double y,
double w,
double h)
Shape の内部領域が、指定された矩形領域を完全に包含するかどうかを判定します。 |
abstract Rectangle2D |
createIntersection(Rectangle2D r)
この Rectangle2D と指定された Rectangle2D の共通部分を表す新しい Rectangle2D オブジェクトを返します。 |
abstract Rectangle2D |
createUnion(Rectangle2D r)
この Rectangle2D と指定された Rectangle2D の和集合を表す新しい Rectangle2D オブジェクトを返します。 |
boolean |
equals(Object obj)
指定された Object がこの Rectangle2D と等しいかどうかを判定します。 |
Rectangle2D |
getBounds2D()
高精度で getBounds メソッドより精密な、Shape のバウンディングボックスを返します。 |
PathIterator |
getPathIterator(AffineTransform at)
この Rectangle2D の境界を定義する繰り返しオブジェクトを返します。 |
PathIterator |
getPathIterator(AffineTransform at,
double flatness)
平坦化された Rectangle2D の境界を定義する繰り返しオブジェクトを返します。 |
int |
hashCode()
この Rectangle2D のハッシュコードを返します。 |
static void |
intersect(Rectangle2D src1,
Rectangle2D src2,
Rectangle2D dest)
指定された元の Rectangle2D オブジェクトのペアの共通部分をとり、その結果を指定された転送先 Rectangle2D オブジェクトに格納します。 |
boolean |
intersects(double x,
double y,
double w,
double h)
Shape の内部領域が、指定された矩形領域の内部領域と交差するかどうかを判定します。 |
boolean |
intersectsLine(double x1,
double y1,
double x2,
double y2)
指定されたラインセグメントが、この Rectangle2D の内部と交差するかどうかを判定します。 |
boolean |
intersectsLine(Line2D l)
指定されたラインセグメントが、この Rectangle2D の内部と交差するかどうかを判定します。 |
abstract int |
outcode(double x,
double y)
この Rectangle2D を基準に、指定された座標のある場所を判定します。 |
int |
outcode(Point2D p)
この Rectangle2D を基準に、指定された Point2D のある場所を判定します。 |
void |
setFrame(double x,
double y,
double w,
double h)
この Rectangle2D の外部境界の位置およびサイズを、指定された矩形値に設定します。 |
abstract void |
setRect(double x,
double y,
double w,
double h)
この Rectangle2D の位置およびサイズを、指定された double 型の値に設定します。 |
void |
setRect(Rectangle2D r)
この Rectangle2D を、指定された Rectangle2D と同じになるように設定します。 |
static void |
union(Rectangle2D src1,
Rectangle2D src2,
Rectangle2D dest)
元の Rectangle2D オブジェクトのペアを結合し、その結果を指定された転送先 Rectangle2D オブジェクトに格納します。 |
クラス java.awt.geom.RectangularShape から継承されたメソッド |
---|
clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal |
クラス java.lang.Object から継承されたメソッド |
---|
finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
public static final int OUT_LEFT
Rectangle2D
の左にあることを示すビットマスクです。
public static final int OUT_TOP
Rectangle2D
の上にあることを示すビットマスクです。
public static final int OUT_RIGHT
Rectangle2D
の右にあることを示すビットマスクです。
public static final int OUT_BOTTOM
Rectangle2D
の下にあることを示すビットマスクです。
コンストラクタの詳細 |
---|
protected Rectangle2D()
Rectangle2D.Float
,
Rectangle2D.Double
,
Rectangle
メソッドの詳細 |
---|
public abstract void setRect(double x, double y, double w, double h)
Rectangle2D
の位置およびサイズを、指定された double
型の値に設定します。
x
- この Rectangle2D
の左上隅の X 座標y
- この Rectangle2D
の左上隅の Y 座標w
- この Rectangle2D
の幅h
- この Rectangle2D
の高さpublic void setRect(Rectangle2D r)
Rectangle2D
を、指定された Rectangle2D
と同じになるように設定します。
r
- 指定された Rectangle2D
public boolean intersectsLine(double x1, double y1, double x2, double y2)
Rectangle2D
の内部と交差するかどうかを判定します。
x1
- 指定されたラインセグメントの始点の X 座標y1
- 指定されたラインセグメントの終点の X 座標x2
- 指定されたラインセグメントの終点の X 座標y2
- 指定されたラインセグメントの終点の Y 座標
Rectangle2D
の内部と交差する場合は true
、そうでない場合は false
public boolean intersectsLine(Line2D l)
Rectangle2D
の内部と交差するかどうかを判定します。
l
- この Rectangle2D
の内部と交差するかどうかを 判定する指定された Line2D
Line2D
がこの Rectangle2D
の内部と交差する場合は true
、そうでない場合は false
public abstract int outcode(double x, double y)
Rectangle2D
を基準に、指定された座標のある場所を判定します。このメソッドは、この Rectangle2D
の各辺について、指定された座標がこの Rectangle2D
のほかの辺と同じサイドにあるかどうかを示す適切なマスク値の 2 項論理和を計算します。
x
- 指定された X 座標y
- 指定された Y 座標
OUT_LEFT
,
OUT_TOP
,
OUT_RIGHT
,
OUT_BOTTOM
public int outcode(Point2D p)
Rectangle2D
を基準に、指定された Point2D
のある場所を判定します。このメソッドは、この Rectangle2D
の各辺について、指定された Point2D
がこの Rectangle2D
のほかの辺と同じサイドにあるかどうかを示す適切なマスク値の 2 項論理和を計算します。
p
- 指定された Point2D
OUT_LEFT
,
OUT_TOP
,
OUT_RIGHT
,
OUT_BOTTOM
public void setFrame(double x, double y, double w, double h)
Rectangle2D
の外部境界の位置およびサイズを、指定された矩形値に設定します。
RectangularShape
内の setFrame
x
- この Rectangle2D
の左上隅の X 座標y
- この Rectangle2D
の左上隅の Y 座標w
- この Rectangle2D
の幅h
- この Rectangle2D
の高さRectangularShape.getFrame()
public Rectangle2D getBounds2D()
getBounds
メソッドより精密な、Shape
のバウンディングボックスを返します。返された Rectangle2D
が Shape
を囲む最小のバウンディングボックスであるとは限りません。 示された Rectangle2D
内に Shape
が完全に収まるというだけです。戻り値を、倍精度値を使用して寸法を格納する Rectangle2D
のインスタンスにすることもできるため、このメソッドによって返されるバウンディングボックスは、通常、getBounds
メソッドによって返されるバウンディングボックスよりもぴったりしたものになり、オーバーフローのために失敗することはありません。
Shape
の高精度バウンディングボックスを表す Rectangle2D
のインスタンスShape.getBounds()
public boolean contains(double x, double y)
Shape
の境界内にあるかどうかを判定します。
x
- 判定対象の指定された X 座標y
- 判定対象の指定された Y 座標
Shape
の境界内にある場合は true
、そうでない場合は false
public boolean intersects(double x, double y, double w, double h)
Shape
の内部領域が、指定された矩形領域の内部領域と交差するかどうかを判定します。Shape
の内部領域と指定された矩形領域の両方に含まれる点がある場合、矩形領域は Shape
と交差していると見なされます。
Shape.intersects()
メソッドを使用すると、次のような場合に Shape
実装は true
を返すことがあります。
Shape
が重なり合っている可能性がかなり高いが、
Shape
によっては、矩形領域が Shape
と交差しない場合でもこのメソッドが true
を返すことがあります。Area
クラスは、ほとんどの Shape
オブジェクトの幾何学的な共通部分のより精密な計算を行うため、より正確な結果が必要な場合に使用できます。
x
- 指定された矩形領域の左上隅の X 座標y
- 指定された矩形領域の左上隅の Y 座標w
- 指定された矩形領域の幅h
- 指定された矩形領域の高さ
Shape
の内部領域と矩形領域の内部領域が交差する場合、または交差する可能性が高いが、負荷が大き過ぎて共通部分の計算を行えない場合は true
、そうでない場合は false
Area
public boolean contains(double x, double y, double w, double h)
Shape
の内部領域が、指定された矩形領域を完全に包含するかどうかを判定します。矩形領域全体が Shape
に包含されていると見なされるためには、矩形領域内にあるすべての座標が Shape
内に位置している必要があります。
Shape.contains()
メソッドを使用すると、次のような場合に Shape
実装は false
を返すことがあります。
intersect
メソッドが true
を返し、
Shape
が矩形領域を完全に包含するかどうかを判別する計算の負荷がかなり大きい
Shape
によっては、Shape
が矩形領域を包含する場合でもこのメソッドが false
を返すことがあります。Area
クラスは、ほとんどの Shape
オブジェクトのより精密な幾何学的計算を行うため、より正確な結果が必要な場合に使用できます。
x
- 指定された矩形領域の左上隅の X 座標y
- 指定された矩形領域の左上隅の Y 座標w
- 指定された矩形領域の幅h
- 指定された矩形領域の高さ
Shape
の内部領域が、指定された矩形領域を完全に包含する場合は true
、そうでない場合は false
。また、Shape
が矩形領域を包含し、intersects
メソッドが true
を返し、負荷が大き過ぎて包含の計算が行えない場合も false
Area
,
Shape.intersects(double, double, double, double)
public abstract Rectangle2D createIntersection(Rectangle2D r)
Rectangle2D
と指定された Rectangle2D
の共通部分を表す新しい Rectangle2D
オブジェクトを返します。
r
- この Rectangle2D
と重なり合う Rectangle2D
Rectangle2D
とこの Rectangle2D
の両方に含まれる最大の Rectangle2D
public static void intersect(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Rectangle2D
オブジェクトのペアの共通部分をとり、その結果を指定された転送先 Rectangle2D
オブジェクトに格納します。元の矩形の 1 つを転送先にして、3 番目の Rectangle2D オブジェクトを作成しないようにすることもできますが、その場合、元の矩形の元の点はこのメソッドで上書きされます。
src1
- 交差させる最初の Rectangle2D
オブジェクトのペアsrc2
- 交差させる 2 番目の Rectangle2D
オブジェクトのペアdest
- src1
と src2
の共通部分を保持する Rectangle2D
public abstract Rectangle2D createUnion(Rectangle2D r)
Rectangle2D
と指定された Rectangle2D
の和集合を表す新しい Rectangle2D
オブジェクトを返します。
r
- この Rectangle2D
と結合される Rectangle2D
Rectangle2D
とこの Rectangle2D
の両方を含む最小の Rectangle2D
public static void union(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Rectangle2D
オブジェクトのペアを結合し、その結果を指定された転送先 Rectangle2D
オブジェクトに格納します。元の矩形の 1 つを転送先にして、3 番目の Rectangle2D オブジェクトを作成しないようにすることもできますが、その場合、元の矩形の元の点はこのメソッドで上書きされます。
src1
- 結合させる最初の Rectangle2D
オブジェクトのペアsrc2
- 結合させる 2 番目の Rectangle2D
オブジェクトのペアdest
- src1
と src2
の和集合の結果を保持する Rectangle2D
public void add(double newx, double newy)
newx
引数および newy
引数で指定された点をこの Rectangle2D
に追加します。その Rectangle2D
は、元の Rectangle2D
と指定された点の両方を含む最小の Rectangle2D
となります。
点を追加したあと、追加された点を引数とする contains
の呼び出しは、必ずしも true
を返しません。contains
メソッドは、矩形の右端または下端にある点については true
を返しません。そのため、追加された点が拡大された矩形の左端または下端にある場合、contains
はその点について false
を返します。
newx
- 新しい点の X 座標newy
- 新しい点の Y 座標public void add(Point2D pt)
Rectangle2D
に Point2D
オブジェクトの pt
を追加します。その Rectangle2D
は、元の Rectangle2D
と指定された Point2D
の両方を含む最小の Rectangle2D
になります。
点を追加したあと、追加された点を引数とする contains
の呼び出しは、必ずしも true
を返しません。contains
メソッドは、矩形の右端または下端にある点については true
を返しません。そのため、追加された点が拡大された矩形の左端または下端にある場合、contains
はその点について false
を返します。
pt
- この Rectangle2D
に追加される新しい Point2D
public void add(Rectangle2D r)
Rectangle2D
に Rectangle2D
オブジェクトを追加します。その結果の Rectangle2D
は、2 つの Rectangle2D
オブジェクトの和集合となります。
r
- この Rectangle2D
に追加する Rectangle2D
public PathIterator getPathIterator(AffineTransform at)
Rectangle2D
の境界を定義する繰り返しオブジェクトを返します。このクラスの反復子は、マルチスレッドに対して安全です。 つまりこの Rectangle2D
クラスは、この Rectangle2D
オブジェクトの幾何学的図形に対する変更が、この幾何学的図形についてすでに進行中の繰り返し処理に影響を与えないことを保証します。
at
- 繰り返し処理で返されるときに座標に適用されるオプションの AffineTransform
、変換されていない座標が必要な場合は null
Rectangle2D
の輪郭の幾何学的図形を一度に 1 セグメントずつ返す PathIterator
オブジェクトpublic PathIterator getPathIterator(AffineTransform at, double flatness)
Rectangle2D
の境界を定義する繰り返しオブジェクトを返します。矩形はすでに平坦であるため、flatness
パラメータは無視されるこのクラスの反復子は、マルチスレッドに対して安全です。 つまりこの Rectangle2D
クラスは、この Rectangle2D
オブジェクトの幾何学的図形に対する変更が、この幾何学的図形についてすでに進行中の繰り返し処理に影響を与えないことを保証します。
Shape
内の getPathIterator
RectangularShape
内の getPathIterator
at
- 繰り返し処理で返されるときに座標に適用されるオプションの AffineTransform
、変換されていない座標が必要な場合は null
flatness
- 曲線セグメントを近似するために使用されるラインセグメントが、元の曲線上の任意の点から離れることができる最大の距離。矩形はすでに平坦であるため、flatness
パラメータは無視される
Rectangle2D
の輪郭の幾何学的図形を一度に 1 セグメントずつ返す PathIterator
オブジェクトpublic int hashCode()
Rectangle2D
のハッシュコードを返します。
Object
内の hashCode
Rectangle2D
のハッシュコードObject.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
Object
がこの Rectangle2D
と等しいかどうかを判定します。指定された Object
は、Rectangle2D
のインスタンスであり、位置およびサイズがこの Rectangle2D
と同じ場合に、この Rectangle2D
と等しいと見なされます。
Object
内の equals
obj
- この Rectangle2D
と比較される Object
obj
が Rectangle2D
のインスタンスであり、同じ値を持つ場合は true
、そうでない場合は false
Object.hashCode()
,
Hashtable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。