public abstract class Arc2D extends RectangularShape
Arc2Dは、表示枠の矩形、始角、角の大きさ(弧の長さ)、および閉じ方の種類(OPEN、CHORD、またはPIE)によって定義される2次元の弧を格納するすべてのオブジェクトの抽象スーパー・クラスです。
円弧は、親RectangularShapeのフレーム矩形を規定する完全な楕円の部分的な部分です。 角度は、45度が常に楕円の中心からフレーミング矩形の右上隅までの線になるように、非正方形のフレーミング矩形を基準にして指定されます。その結果、フレーミング矩形が他の軸よりも1つの軸に沿って著しく長い場合、弧セグメントの開始および終了に対する角度は、フレームのより長い軸に沿ってさらにずれます。
座標の実際の記憶域表現はサブクラスに委ねられます。
| 修飾子と型 | クラス | 説明 |
|---|---|---|
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, setFrameFromDiagonalpublic static final int OPEN
public static final int CHORD
public static final int PIE
protected Arc2D()
このコンストラクタは、閉じ方の種類のデフォルトであるOPENでオブジェクトを作成します。 これは、サブクラスの直列化を有効にするためにのみ提供されています。
Arc2D.Float、Arc2D.Doubleprotected Arc2D(int type)
type - この弧の閉じ方の種類: OPEN、CHORD、またはPIE。Arc2D.Float、Arc2D.Doublepublic 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)
Shapeの表示枠矩形の位置とサイズを、指定された矩形値に設定します。 弧はこのRectangularShapeの表示枠矩形と部分的に内接しています。 setFrame、クラスRectangularShapex - 指定された矩形形状の左上隅の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。Areapublic 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、インタフェースShapecontains、クラスRectangularShaper - テストするRectangle2D。true、矩形が弧に収まらない場合はfalse。Shape.contains(double, double, double, double)public PathIterator getPathIterator(AffineTransform at)
Arc2Dでは、弧の幾何学的図形への変更が、その幾何学的図形のすでに進行中のどの反復にも影響を与えないことが保証されます。 at - 反復で返されるときに座標に適用されるオプションのAffineTransform。変換されていない座標が必要な場合はnull。PathIterator。public int hashCode()
Arc2Dのハッシュ・コードを返します。hashCode、クラスObjectArc2Dのハッシュ・コード。Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public boolean equals(Object obj)
ObjectがこのArc2Dと等しいかどうかを判定します。 指定されたObjectがこのArc2Dに等しいのは、それがArc2Dのインスタンスであり、かつその位置、サイズ、弧の展開、およびタイプがこのArc2Dと同じである場合です。 equals、クラスObjectobj - このArc2Dと比較されるObject。objがArc2Dのインスタンスであり、同じ値を持つ場合はtrue、そうでない場合はfalse。Object.hashCode()、HashMap バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。