|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.awt.Polygon
public class Polygon
Polygon クラスは、座標空間を持つ閉じられた 2 次元領域の記述をカプセル化します。この領域は、多角形の 1 辺をなす線セグメントの任意の数によって境界を区切られます。内部的には、多角形は (x, y) 座標ペアのリストから構成されます。この場合、各ペアは多角形の「頂点」を定義し、連続する 2 つのペアは多角形の 1 辺をなす線の端点になります。(x, y) 点の最初と最後のペアは、多角形を閉じる線セグメントによって結合されます。この Polygon は偶奇屈曲規則によって定義されます。偶奇屈曲規則の定義については、WIND_EVEN_ODD を参照してください。contains、intersects、および inside メソッドを含むこのクラスのヒット検査メソッドは、Shape クラスのコメントに記述された「内側」の定義を使用します。
Shape,
直列化された形式| フィールドの概要 | |
|---|---|
protected Rectangle |
bounds
多角形の境界です。 |
int |
npoints
点の総数です。 |
int[] |
xpoints
x 座標の配列です。 |
int[] |
ypoints
y 座標の配列です。 |
| コンストラクタの概要 | |
|---|---|
Polygon()
空の多角形を作成します。 |
|
Polygon(int[] xpoints,
int[] ypoints,
int npoints)
指定されたパラメータから Polygon を構築および初期化します。 |
|
| メソッドの概要 | |
|---|---|
void |
addPoint(int x,
int y)
この Polygon に指定された座標を追加します。 |
boolean |
contains(double x,
double y)
指定された座標が Polygon の内側にあるかどうかを判定します。 |
boolean |
contains(double x,
double y,
double w,
double h)
この Polygon の内部が、指定された矩形座標セットを完全に内包するかどうかを判定します。 |
boolean |
contains(int x,
int y)
指定された座標がこの Polygon の内側にあるかどうかを判定します。 |
boolean |
contains(Point p)
指定された Point がこの Polygon の内側にあるかどうかを判定します。 |
boolean |
contains(Point2D p)
指定された Point2D がこの Polygon の境界内にあるかどうかを判定します。 |
boolean |
contains(Rectangle2D r)
この Polygon の内部が、指定された Rectangle2D を完全に内包するかどうかを判定します。 |
Rectangle |
getBoundingBox()
推奨されていません。 JDK バージョン 1.1 以降は、 getBounds() を使用します。 |
Rectangle |
getBounds()
この Polygon のバウンディングボックスを返します。 |
Rectangle2D |
getBounds2D()
Shape の高精度バウンディングボックスを返します。 |
PathIterator |
getPathIterator(AffineTransform at)
この Polygon の境界に沿って繰り返し処理を行い、Polygon の輪郭のジオメトリへのアクセスを提供する反復子オブジェクトを返します。 |
PathIterator |
getPathIterator(AffineTransform at,
double flatness)
Shape の境界に沿って繰り返し処理を行い、Shape の輪郭のジオメトリへのアクセスを提供する反復子オブジェクトを返します。 |
boolean |
inside(int x,
int y)
推奨されていません。 JDK バージョン 1.1 以降は、 contains(int, int) に置き換えられました。 |
boolean |
intersects(double x,
double y,
double w,
double h)
この Polygon の内部が、指定された矩形座標セットの内部と交差するかどうかを判定します。 |
boolean |
intersects(Rectangle2D r)
この Polygon の内部が、指定された Rectangle2D の内部と交差するかどうかを判定します。 |
void |
invalidate()
この Polygon の頂点の座標に依存する内部にキャッシュされたすべてのデータを無効にするか、またはフラッシュします。 |
void |
reset()
この Polygon オブジェクトを空の多角形にリセットします。 |
void |
translate(int deltaX,
int deltaY)
Polygon の頂点を x 軸に沿って deltaX、および y 軸に沿って deltaY 移動します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
public int npoints
npoints の値はこの Polygon の有効な点の数を表し、xpoints または ypoints の要素の数より小さくなります。この値は null を取ることができます。
addPoint(int, int)public int[] xpoints
Polygon の x 座標の数よりも大きくなります。余分な要素により、この配列を再度作成せずに、この Polygon に新しい点を追加できます。npoints の値は、この Polygon の有効な点の数と同じです。
addPoint(int, int)public int[] ypoints
Polygon の y 座標の数よりも大きくなります。余分な要素により、この配列を再度作成せずに、この Polygon に新しい点を追加できます。npoints の値は、この Polygon の有効な点の数と同じです。
addPoint(int, int)protected Rectangle bounds
getBoundingBox(),
getBounds()| コンストラクタの詳細 |
|---|
public Polygon()
public Polygon(int[] xpoints,
int[] ypoints,
int npoints)
Polygon を構築および初期化します。
xpoints - x 座標の配列ypoints - y 座標の配列npoints - Polygon の点の総数
NegativeArraySizeException - npoints の値が負である場合
IndexOutOfBoundsException - npoints が xpoints の長さまたは ypoints の長さよりも大きい場合
NullPointerException - xpoints または ypoints が null の場合| メソッドの詳細 |
|---|
public void reset()
Polygon オブジェクトを空の多角形にリセットします。その中にある座標配列とデータはそのまま残りますが、点の数はゼロにリセットされ、古い頂点のデータを無効としてマークし、最初から新しい頂点のデータの蓄積を開始します。内部にキャッシュされたすべての古い頂点に関するデータは破棄されます。リセットする前の座標配列が再使用されるので、新しい多角形のデータの頂点の数がリセット前のデータの頂点の数よりもかなり小さい場合は、新しい空の Polygon の作成の方が現在の多角形をリセットするよりもメモリをより効率的に使用できることに注意してください。
invalidate()public void invalidate()
Polygon の頂点の座標に依存する内部にキャッシュされたすべてのデータを無効にするか、またはフラッシュします。このメソッドは、xpoints または ypoints 配列の座標を直接操作したあとに呼び出す必要があります。これは、頂点の座標に関連する以前の計算からデータをキャッシュしている getBounds または contains などのメソッドから一貫した結果が得られるようにするためです。
getBounds()
public void translate(int deltaX,
int deltaY)
Polygon の頂点を x 軸に沿って deltaX、および y 軸に沿って deltaY 移動します。
deltaX - x 軸に沿って移動する距離deltaY - y 軸に沿って移動する距離
public void addPoint(int x,
int y)
Polygon に指定された座標を追加します。
この Polygon のバウンディングボックスを計算する getBounds または contains などの演算がすでに実行されている場合、このメソッドはバウンディングボックスを更新します。
x - 指定された x 座標y - 指定された y 座標getBounds(),
contains(java.awt.Point)public Rectangle getBounds()
Polygon のバウンディングボックスを返します。このバウンディングボックスは辺が座標空間の x 軸および y 軸に平行で Polygon を完全に格納する最小の Rectangle です。
Shape 内の getBoundsPolygon の境界を定義する RectangleShape.getBounds2D()@Deprecated public Rectangle getBoundingBox()
getBounds() を使用します。
Polygon の境界を返します。
Polygon の境界public boolean contains(Point p)
Point がこの Polygon の内側にあるかどうかを判定します。
p - 判定対象の、指定された Point
Polygon が Point を内包している場合は true、そうでない場合は falsecontains(double, double)
public boolean contains(int x,
int y)
Polygon の内側にあるかどうかを判定します。
x - 判定対象の指定された x 座標y - 判定対象の指定された y 座標
Polygon が指定座標 (x, y) を内包している場合は true、そうでない場合は falsecontains(double, double)
@Deprecated
public boolean inside(int x,
int y)
contains(int, int) に置き換えられました。
Polygon に内包されているかどうかを判定します。
x - 判定対象の指定された x 座標y - 判定対象の指定された y 座標
Polygon が指定座標 (x, y) を内包している場合は true、そうでない場合は falsecontains(double, double)public Rectangle2D getBounds2D()
Shape の高精度バウンディングボックスを返します。
Shape 内の getBounds2DShape の正確な境界となる Rectangle2DShape.getBounds()
public boolean contains(double x,
double y)
Polygon の内側にあるかどうかを判定します。「内側」の定義については Shape のクラスのコメントを参照してください。
Shape 内の containsx - 指定された x 座標y - 指定された y 座標
Polygon が指定された座標を内包している場合は true、そうでない場合は falsepublic boolean contains(Point2D p)
Point2D がこの Polygon の境界内にあるかどうかを判定します。
Shape 内の containsp - 指定された Point2D
Polygon が指定された Point2D を内包している場合は true、そうでない場合は falsecontains(double, double)
public boolean intersects(double x,
double y,
double w,
double h)
Polygon の内部が、指定された矩形座標セットの内部と交差するかどうかを判定します。
Shape 内の intersectsx - 指定された矩形形状の左上隅の x 座標y - 指定された矩形形状の左上隅の y 座標w - 指定された矩形形状の幅h - 指定された矩形形状の高さ
Polygon と指定された矩形座標セットの内部が交差する場合は true、そうでない場合は falseAreapublic boolean intersects(Rectangle2D r)
Polygon の内部が、指定された Rectangle2D の内部と交差するかどうかを判定します。
Shape 内の intersectsr - 指定された Rectangle2D
Polygon と指定された Rectangle2D の内部が交差する場合は true、そうでない場合は falseShape.intersects(double, double, double, double)
public boolean contains(double x,
double y,
double w,
double h)
Polygon の内部が、指定された矩形座標セットを完全に内包するかどうかを判定します。
Shape 内の containsx - 指定された矩形座標セットの左上隅の x 座標y - 指定された矩形座標セットの左上隅の y 座標w - 矩形座標セットの幅h - 矩形座標セットの高さ
Polygon が指定された矩形座標セットを完全に内包する場合は true、そうでない場合は falseArea,
Shape.intersects(double, double, double, double)public boolean contains(Rectangle2D r)
Polygon の内部が、指定された Rectangle2D を完全に内包するかどうかを判定します。
Shape 内の containsr - 指定された Rectangle2D
Polygon が指定された Rectangle2D を完全に内包する場合は true、そうでない場合は falsecontains(double, double, double, double)public PathIterator getPathIterator(AffineTransform at)
Polygon の境界に沿って繰り返し処理を行い、Polygon の輪郭のジオメトリへのアクセスを提供する反復子オブジェクトを返します。任意の AffineTransform が指定された場合、繰り返し処理で返される座標がそれに応じて変換されます。
Shape 内の getPathIteratorat - 繰り返し処理で返される座標に適用されるオプションの AffineTransform。変換されていない座標が必要な場合は null
Polygon のジオメトリへのアクセスを提供する PathIterator
public PathIterator getPathIterator(AffineTransform at,
double flatness)
Shape の境界に沿って繰り返し処理を行い、Shape の輪郭のジオメトリへのアクセスを提供する反復子オブジェクトを返します。SEG_MOVETO、SEG_LINETO、および SEG_CLOSE ポイント型だけが反復子によって返されます。多角形はすでに平坦であるため、flatness パラメータは無視されます。オプションの AffineTransform は、繰り返し処理で返される座標がそれに応じて変換される場合に指定することができます。
Shape 内の getPathIteratorat - 繰り返し処理で返される座標に適用されるオプションの AffineTransform。変換されていない座標が必要な場合は nullflatness - 指定された曲線上の制御点を動かしたとき、分割された曲線が端点を結ぶ直線により置換されない条件で、制御点がこの直線からもっとも離れる距離。多角形はすでに平坦であるため、flatness パラメータは無視される
Shape オブジェクトのジオメトリへのアクセスを提供する PathIterator オブジェクト
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。