public abstract class Arc2D extends RectangularShape
Arc2D
は、表示枠の矩形、始角、角の大きさ (弧の長さ)、および閉じ方の種類 (OPEN
、CHORD
、または PIE
) によって定義される 2 次元の弧を格納するすべてのオブジェクトの抽象スーパークラスです。
弧は、その親 RectangularShape
の表示枠矩形に内接する楕円の一部を構成します。角度は、楕円の中心から表示枠矩形の右上隅までを結ぶ線が常に 45 度になるように、正方形でない表示枠矩形を基準に指定されます。その結果、ある軸に沿った表示枠矩形がほかの軸に沿った場合よりかなり長く場合は、弧セグメントの開始角度と終了角度が表示枠の長軸に沿ってさらに傾斜します。
座標の実際の記憶域表現はサブクラスに委ねられます。
修飾子と型 | クラスと説明 |
---|---|
static class |
Arc2D.Double
このクラスは、
double 精度で指定された弧を定義します。 |
static class |
Arc2D.Float
このクラスは、
float 精度で指定された弧を定義します。 |
修飾子と型 | フィールドと説明 |
---|---|
static int |
CHORD
弧セグメントの始点と終点を結ぶ直線セグメントを描画することによって閉じられる弧の閉じ方の種類です。
|
static int |
OPEN
弧セグメントの両端を結ぶパスセグメントを持たない開いた弧の閉じ方の種類です。
|
static int |
PIE
弧セグメントの始点から楕円の中心までの直線セグメントと、楕円の中心から弧セグメントの終点までの直線セグメントを描画することによって、閉じられる弧の閉じ方の種類です。
|
修飾子 | コンストラクタと説明 |
---|---|
protected |
Arc2D()
これは、インスタンスを直接には生成できない abstract クラスです。
|
protected |
Arc2D(int type)
これは、インスタンスを直接には生成できない abstract クラスです。
|
修飾子と型 | メソッドと説明 |
---|---|
boolean |
contains(double x, double y)
指定された点が弧の境界内にあるかどうかを判定します。
|
boolean |
contains(double x, double y, double w, double h)
弧が、指定された矩形を内部に完全に包含しているかどうかを判定します。
|
boolean |
contains(Rectangle2D r)
弧が、指定された矩形を内部に完全に包含しているかどうかを判定します。
|
boolean |
containsAngle(double angle)
指定された角度が弧の角の大きさと同じまたはそれより小さいかどうかを判定します。
|
boolean |
equals(Object obj)
指定された
Object がこの Arc2D と等しいかどうかを判定します。 |
abstract double |
getAngleExtent()
弧の角の大きさを返します。
|
abstract double |
getAngleStart()
弧の始角を返します。
|
int |
getArcType()
|
Rectangle2D |
getBounds2D()
弧の高精度表示枠矩形を返します。
|
Point2D |
getEndPoint()
孤の終点を返します。
|
PathIterator |
getPathIterator(AffineTransform at)
孤の境界を定義する繰り返しオブジェクトを返します。
|
Point2D |
getStartPoint()
孤の始点を返します。
|
int |
hashCode()
この
Arc2D のハッシュコードを返します。 |
boolean |
intersects(double x, double y, double w, double h)
弧の内部が、指定された矩形の内部と交差するかどうかを判定します。
|
protected abstract Rectangle2D |
makeBounds(double x, double y, double w, double h)
この弧の表示枠矩形になるように計算されたパラメータを格納するために、適切な精度の
Rectangle2D を作成します。 |
abstract void |
setAngleExtent(double angExt)
この弧の角の大きさを、指定された double 値に設定します。
|
void |
setAngles(double x1, double y1, double x2, double y2)
2 組の座標を使用して、この孤の始角と角の大きさを設定します。
|
void |
setAngles(Point2D p1, Point2D p2)
2 つの点を使用して、この孤の始角と角の大きさを設定します。
|
abstract void |
setAngleStart(double angSt)
この弧の始角を、指定された double 値に設定します。
|
void |
setAngleStart(Point2D p)
この弧の始角を、指定された点によりこの弧の中心を基準に定義される角度に設定します。
|
void |
setArc(Arc2D a)
この弧を指定された弧と同じに設定します。
|
abstract void |
setArc(double x, double y, double w, double h, double angSt, double angExt, int closure)
この弧の位置、サイズ、角の大きさ、閉じ方の種類を、指定された double 値に設定します。
|
void |
setArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure)
この弧の位置、サイズ、角の大きさ、閉じ方の種類を、指定された値に設定します。
|
void |
setArc(Rectangle2D rect, double angSt, double angExt, int closure)
この弧の位置、サイズ、角の大きさ、閉じ方の種類を、指定された値に設定します。
|
void |
setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure)
この孤の位置、境界、角の大きさ、閉じ方の種類を、指定された値に設定します。
|
void |
setArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius)
この孤の位置、境界、角の大きさを、指定された値に設定します。
|
void |
setArcType(int type)
この弧の閉じ方の種類を指定された値に設定します。
OPEN 、CHORD 、または PIE 。 |
void |
setFrame(double x, double y, double w, double h)
この
Shape の表示枠矩形の位置とサイズを、指定された矩形値に設定します。 |
clone, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
public static final int OPEN
public static final int CHORD
public static final int PIE
protected Arc2D()
このコンストラクタは、閉じ方の種類のデフォルトである OPEN
でオブジェクトを作成します。これは、サブクラスの直列化を有効にするためにのみ提供されています。
Arc2D.Float
、Arc2D.Double
protected Arc2D(int type)
type
- この弧の閉じ方の種類:OPEN
、CHORD
、または PIE
。Arc2D.Float
、Arc2D.Double
public abstract double getAngleStart()
setAngleStart(double)
public abstract double getAngleExtent()
setAngleExtent(double)
public int getArcType()
setArcType(int)
public Point2D getStartPoint()
Point2D
オブジェクト。public Point2D getEndPoint()
Point2D
オブジェクト。public abstract void setArc(double x, double y, double w, double h, double angSt, double angExt, int closure)
public void setArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure)
public void setArc(Rectangle2D rect, double angSt, double angExt, int closure)
public void setArc(Arc2D a)
a
- 弧の値を設定するために使用する Arc2D
。public void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure)
public void setArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius)
p1
- 弧を定義する第 1 の点。弧の始角の接線は点 (p1, p2) で指定される。p2
- 弧を定義する第 2 の点。弧の始角の接線は点 (p1, p2) で指定される。弧の終角の接線は点 (p2, p3) で指定される。p3
- 弧を定義する第 3 の点。弧の終角の接線は点 (p2, p3) で指定される。radius
- 弧の半径。public abstract void setAngleStart(double angSt)
angSt
- 弧の始角 (度単位)。getAngleStart()
public abstract void setAngleExtent(double angExt)
angExt
- 弧の角の大きさ (度単位)。getAngleExtent()
public void setAngleStart(Point2D p)
p
- 始角を定義する Point2D
。getAngleStart()
public void setAngles(double x1, double y1, double x2, double y2)
x1
- 弧の始点の X 座標。y1
- 弧の始点の Y 座標。x2
- 弧の終点の X 座標。y2
- 弧の終点の Y 座標。public void setAngles(Point2D p1, Point2D p2)
p1
- 弧の始点を定義する Point2D
。p2
- 弧の終点を定義する Point2D
。public void setArcType(int type)
OPEN
、CHORD
、または PIE
。type
- この弧の閉じ方の種類を表す整定数。OPEN
、CHORD
、または PIE
。IllegalArgumentException
- type
が 0、1、2 のいずれでもない場合。getArcType()
public void setFrame(double x, double y, double w, double h)
setFrame
、クラス: RectangularShape
x
- 指定された矩形形状の左上隅の X 座標y
- 指定された矩形形状の左上隅の Y 座標w
- 指定された矩形形状の幅h
- 指定された矩形形状の高さRectangularShape.getFrame()
public Rectangle2D getBounds2D()
Arc2D
の閉じ方の種類が PIE
の場合、表示枠矩形には、この Arc2D
のうち始角と終角の間にある部分のみが含まれるほか、パイウエッジ (pie wedge) が含まれます。
このメソッドは、getBounds
とは異なります。getBounds
メソッドの場合は、この Arc2D
の始角と終角を考慮せずに、この Arc2D
の楕円を囲む境界のみを返します。
Rectangle2D
。Shape.getBounds()
protected abstract Rectangle2D makeBounds(double x, double y, double w, double h)
Rectangle2D
を作成します。x
- 表示枠矩形の左上隅の X 座標。y
- 表示枠矩形の左上隅の Y 座標。w
- 表示枠矩形の幅。h
- 表示枠矩形の高さ。Rectangle2D
。public boolean containsAngle(double angle)
angle
- テストする角度。true
。角度が弧に収まらない場合は false
。public boolean contains(double x, double y)
x
- テストする点の X 座標。y
- テストする点の Y 座標。true
、点が弧の境界の外側にある場合は false
。public boolean intersects(double x, double y, double w, double h)
x
- 矩形の左上隅の X 座標。y
- 矩形の左上隅の Y 座標。w
- 矩形の幅。h
- 矩形の高さ。true
、弧が矩形と交差しない場合は false
。Area
public boolean contains(double x, double y, double w, double h)
x
- 矩形の左上隅の X 座標。y
- 矩形の左上隅の Y 座標。w
- 矩形の幅。h
- 矩形の高さ。true
、矩形が弧に収まらない場合は false
。Area
、Shape.intersects(double, double, double, double)
public boolean contains(Rectangle2D r)
contains
、インタフェース: Shape
contains
、クラス: RectangularShape
r
- テストする Rectangle2D
。true
、矩形が弧に収まらない場合は false
。Shape.contains(double, double, double, double)
public PathIterator getPathIterator(AffineTransform at)
Arc2D
では、弧の幾何学的図形への変更が、その幾何学的図形のすでに進行中のどの反復にも影響を与えないことが保証されます。at
- 反復で返されるときに座標に適用されるオプションの AffineTransform
。変換されていない座標が必要な場合は null。PathIterator
。public int hashCode()
Arc2D
のハッシュコードを返します。hashCode
、クラス: Object
Arc2D
のハッシュコード。Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean equals(Object obj)
Object
がこの Arc2D
と等しいかどうかを判定します。指定された Object
がこの Arc2D
に等しいのは、それが Arc2D
のインスタンスであり、かつその位置、サイズ、弧の展開、およびタイプがこの Arc2D
と同じである場合です。equals
、クラス: Object
obj
- この Arc2D
と比較される Object
。obj
が Arc2D
のインスタンスであり、同じ値を持つ場合は true
、そうでない場合は false
。Object.hashCode()
、HashMap
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.