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()
これは、インスタンスを直接には生成できない抽象クラスです。
|
protected |
Arc2D(int type)
これは、インスタンスを直接には生成できない抽象クラスです。
|
修飾子と型 | メソッドと説明 |
---|---|
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, 2016, Oracle and/or its affiliates. All rights reserved.Use is subject to license termsDocumentation Redistribution Policyも参照してください。