java.lang.Object
java.awt.geom.RectangularShape
java.awt.geom.Arc2D
- 已知子类:
Arc2D.Double,Arc2D.Float
Arc2D 是所有对象的抽象超类,这些对象存储由框架矩形、起始角度、角度范围(弧的长度)和闭合类型(OPEN、CHORD 或 PIE)定义的 2D 弧。
圆弧是完整椭圆的一部分,它内接其父对象的框架矩形 RectangularShape 。 角度是相对于非正方形框架矩形指定的,因此 45 度始终落在从椭圆中心到框架矩形右上角的直线上。因此,如果框架矩形沿一个轴明显长于另一个轴,则弧线段起点和终点的角度将沿框架的较长轴倾斜得更远。
坐标的实际存储表示留给子类。
- 自从:
- 1.2
-
内部类总结
内部类修饰符和类型类描述static class此类定义了以double精度指定的弧。static class此类定义了以float精度指定的弧。 -
字段摘要
字段 -
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述booleancontains(double x, double y) 确定指定点是否在圆弧边界内。booleancontains(double x, double y, double w, double h) 确定弧的内部是否完全包含指定的矩形。boolean确定弧的内部是否完全包含指定的矩形。booleancontainsAngle(double angle) 确定指定的角度是否在弧的角度范围内。boolean确定指定的Object是否等于此Arc2D。abstract double返回圆弧的角度范围。abstract double返回圆弧的起始角度。int返回圆弧的高精度取景矩形。返回圆弧的终点。返回定义圆弧边界的迭代对象。返回圆弧的起点。inthashCode()返回此Arc2D的哈希码。booleanintersects(double x, double y, double w, double h) 确定圆弧的内部是否与指定矩形的内部相交。protected abstract Rectangle2DmakeBounds(double x, double y, double w, double h) 构造一个具有适当精度的Rectangle2D来保存计算为该弧的框架矩形的参数。abstract voidsetAngleExtent(double angExt) 将此弧的角度范围设置为指定的双精度值。voidsetAngles(double x1, double y1, double x2, double y2) 使用两组坐标设置此弧的起始角度和角度范围。void使用两点设置此弧的起始角度和角度范围。abstract voidsetAngleStart(double angSt) 将此弧的起始角度设置为指定的双精度值。void将此圆弧的起始角度设置为指定点相对于此圆弧中心定义的角度。abstract voidsetArc(double x, double y, double w, double h, double angSt, double angExt, int closure) 将此弧的位置、大小、角度范围和闭合类型设置为指定的双精度值。void将此弧设置为与指定弧相同。voidsetArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure) 将此弧的位置、大小、角度范围和闭合类型设置为指定值。voidsetArc(Rectangle2D rect, double angSt, double angExt, int closure) 将此弧的位置、大小、角度范围和闭合类型设置为指定值。voidsetArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure) 将此弧的位置、边界、角度范围和闭合类型设置为指定值。voidsetArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius) 将此弧的位置、边界和角度范围设置为指定值。voidsetArcType(int type) 将此弧的闭合类型设置为指定值:OPEN、CHORD或PIE。voidsetFrame(double x, double y, double w, double h) 将此Shape的框架矩形的位置和大小设置为指定的矩形值。在类 java.awt.geom.RectangularShape 中声明的方法
clone, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
-
字段详细信息
-
OPEN
public static final int OPEN开放弧的闭合类型,没有连接弧段两端的路径段。- 自从:
- 1.2
- 参见:
-
CHORD
public static final int CHORD圆弧的闭合类型,通过从弧段的起点到弧段的终点绘制一条直线段来闭合。- 自从:
- 1.2
- 参见:
-
PIE
public static final int PIE圆弧的闭合类型,通过从圆弧段的起点到整个椭圆的中心并从该点到圆弧段的终点绘制直线段来闭合。- 自从:
- 1.2
- 参见:
-
-
构造方法详细信息
-
方法详情
-
getAngleStart
public abstract double getAngleStart()返回圆弧的起始角度。- 返回:
- 一个双精度值,表示圆弧的起始角度(以度为单位)。
- 自从:
- 1.2
- 参见:
-
getAngleExtent
public abstract double getAngleExtent()返回圆弧的角度范围。- 返回:
- 一个双精度值,表示圆弧的角度范围(以度为单位)。
- 自从:
- 1.2
- 参见:
-
getArcType
public int getArcType()- 返回:
- 此类中定义的整数常量闭包类型之一。
- 自从:
- 1.2
- 参见:
-
getStartPoint
返回圆弧的起点。该点是从起始角定义的中心发出的射线与圆弧的椭圆边界的交点。- 返回:
-
一个
Point2D对象,表示圆弧起点的 x,y 坐标。 - 自从:
- 1.2
-
getEndPoint
返回圆弧的终点。该点是来自由起始角加上圆弧的角度范围和圆弧的椭圆边界定义的中心的射线的交点。- 返回:
-
一个
Point2D对象,表示圆弧终点的 x,y 坐标。 - 自从:
- 1.2
-
setArc
public abstract void setArc(double x, double y, double w, double h, double angSt, double angExt, int closure) 将此弧的位置、大小、角度范围和闭合类型设置为指定的双精度值。 -
setArc
将此弧的位置、大小、角度范围和闭合类型设置为指定值。 -
setArc
将此弧的位置、大小、角度范围和闭合类型设置为指定值。 -
setArc
将此弧设置为与指定弧相同。- 参数:
a- 用于设置弧值的Arc2D。- 自从:
- 1.2
-
setArcByCenter
public void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure) 将此弧的位置、边界、角度范围和闭合类型设置为指定值。圆弧由中心点和半径定义,而不是由整个椭圆的框架矩形定义。 -
setArcByTangent
将此弧的位置、边界和角度范围设置为指定值。圆弧的起始角与点(p1,p2)指定的直线相切,终止角与点(p2,p3)指定的直线相切,圆弧具有指定的半径。- 参数:
p1- 定义圆弧的第一个点。圆弧的起始角与点 (p1, p2) 指定的直线相切。p2- 定义圆弧的第二个点。圆弧的起始角与点 (p1, p2) 指定的直线相切。圆弧的终止角与点 (p2, p3) 指定的直线相切。p3- 定义圆弧的第三个点。圆弧的终止角与点 (p2, p3) 指定的直线相切。radius- 圆弧的半径。- 自从:
- 1.2
-
setAngleStart
public abstract void setAngleStart(double angSt) 将此弧的起始角度设置为指定的双精度值。- 参数:
angSt- 圆弧的起始角度(以度为单位)。- 自从:
- 1.2
- 参见:
-
setAngleExtent
public abstract void setAngleExtent(double angExt) 将此弧的角度范围设置为指定的双精度值。- 参数:
angExt- 圆弧的角度范围(以度为单位)。- 自从:
- 1.2
- 参见:
-
setAngleStart
将此圆弧的起始角度设置为指定点相对于此圆弧中心定义的角度。圆弧的角度范围将保持不变。- 参数:
p- 定义起始角度的Point2D。- 自从:
- 1.2
- 参见:
-
setAngles
public void setAngles(double x1, double y1, double x2, double y2) 使用两组坐标设置此弧的起始角度和角度范围。第一组坐标用于确定起点相对于圆弧中心的角度。第二组坐标用于确定终点相对于圆弧中心的角度。圆弧总是非空的,并从第一点逆时针延伸到第二点。- 参数:
x1- 圆弧起点的 X 坐标。y1- 圆弧起点的 Y 坐标。x2- 圆弧终点的 X 坐标。y2- 圆弧终点的 Y 坐标。- 自从:
- 1.2
-
setAngles
使用两点设置此弧的起始角度和角度范围。第一个点用于确定起点相对于圆弧中心的角度。第二点用于确定终点相对于圆弧中心的角度。圆弧总是非空的,并从第一点逆时针延伸到第二点。- 参数:
p1- 定义圆弧起点的Point2D。p2- 定义圆弧终点的Point2D。- 自从:
- 1.2
-
setArcType
public void setArcType(int type) 将此弧的闭合类型设置为指定值:OPEN、CHORD或PIE。- 参数:
type- 表示此弧的闭包类型的整数常量:OPEN、CHORD或PIE。- 抛出:
IllegalArgumentException- 如果type不是 0、1 或 2.+- 自从:
- 1.2
- 参见:
-
setFrame
public void setFrame(double x, double y, double w, double h) - 指定者:
setFrame在类RectangularShape中- 参数:
x- 指定矩形左上角的X坐标y- 指定矩形左上角的Y坐标w- 指定矩形的宽度h- 指定矩形的高度- 自从:
- 1.2
- 参见:
-
getBounds2D
返回圆弧的高精度取景矩形。如果此Arc2D具有PIE闭合类型,则框架矩形仅包含此Arc2D位于起始角和结束角之间的部分并包含饼楔。此方法与
getBounds的不同之处在于,getBounds方法仅返回此Arc2D的封闭椭圆的边界,而不考虑此Arc2D的起始角和终止角。- 返回:
Rectangle2D表示圆弧的框架矩形。- 自从:
- 1.2
- 参见:
-
makeBounds
构造一个具有适当精度的Rectangle2D来保存计算为该弧的框架矩形的参数。- 参数:
x- 框架矩形左上角的 X 坐标。y- 取景矩形左上角的 Y 坐标。w- 框架矩形的宽度。h- 框架矩形的高度。- 返回:
-
一个
Rectangle2D是这个圆弧的框架矩形。 - 自从:
- 1.2
-
containsAngle
public boolean containsAngle(double angle) 确定指定的角度是否在弧的角度范围内。- 参数:
angle- 要测试的角度。- 返回:
true如果圆弧包含角度,false如果圆弧不包含角度。- 自从:
- 1.2
-
contains
public boolean contains(double x, double y) 确定指定点是否在圆弧边界内。- 参数:
x- 要测试的点的 X 坐标。y- 要测试的点的 Y 坐标。- 返回:
true如果点位于弧的边界内,false如果点位于弧的边界之外。- 自从:
- 1.2
-
intersects
public boolean intersects(double x, double y, double w, double h) 确定圆弧的内部是否与指定矩形的内部相交。- 参数:
x- 矩形左上角的 X 坐标。y- 矩形左上角的 Y 坐标。w- 矩形的宽度。h- 矩形的高度。- 返回:
true如果圆弧与矩形相交,false如果圆弧不与矩形相交。- 自从:
- 1.2
- 参见:
-
contains
public boolean contains(double x, double y, double w, double h) 确定弧的内部是否完全包含指定的矩形。- 参数:
x- 矩形左上角的 X 坐标。y- 矩形左上角的 Y 坐标。w- 矩形的宽度。h- 矩形的高度。- 返回:
true如果弧包含矩形,false如果弧不包含矩形。- 自从:
- 1.2
- 参见:
-
contains
确定弧的内部是否完全包含指定的矩形。- 指定者:
contains在接口Shape中- 重写:
contains在类RectangularShape中- 参数:
r- 要测试的Rectangle2D。- 返回:
true如果弧包含矩形,false如果弧不包含矩形。- 自从:
- 1.2
- 参见:
-
getPathIterator
返回定义圆弧边界的迭代对象。这个迭代器是多线程安全的。Arc2D保证对圆弧几何形状的修改不会影响已经在进行中的该几何形状的任何迭代。- 参数:
at- 一个可选的AffineTransform应用于在迭代中返回的坐标,如果需要未转换的坐标,则为 null。- 返回:
-
定义圆弧边界的
PathIterator。 - 自从:
- 1.2
-
hashCode
public int hashCode()返回此Arc2D的哈希码。 -
equals
确定指定的Object是否等于此Arc2D。指定的Object等于此Arc2D如果它是Arc2D的实例并且其位置、大小、弧范围和类型与此Arc2D相同。
-