模块 java.desktop

类 Arc2D

所有已实现的接口:
Shape , Cloneable
已知子类:
Arc2D.Double , Arc2D.Float

public abstract class Arc2D extends RectangularShape
自从:
1.2
  • 内部类总结

    内部类
    修饰符和类型
    描述
    static class 
    此类定义了以 double 精度指定的弧。
    static class 
    此类定义了以 float 精度指定的弧。
  • 字段摘要

    字段
    修饰符和类型
    Field
    描述
    static final int
    圆弧的闭合类型,通过从弧段的起点到弧段的终点绘制一条直线段来闭合。
    static final int
    开放弧的闭合类型,没有连接弧段两端的路径段。
    static final int
    圆弧的闭合类型,通过从圆弧段的起点到整个椭圆的中心并从该点到圆弧段的终点绘制直线段来闭合。
  • 构造方法总结

    构造方法
    修饰符
    构造方法
    描述
    protected
    这是一个不能直接实例化的抽象类。
    protected
    Arc2D(int type)
    这是一个不能直接实例化的抽象类。
  • 方法总结

    修饰符和类型
    方法
    描述
    boolean
    contains(double x, double y)
    确定指定点是否在圆弧边界内。
    boolean
    contains(double x, double y, double w, double h)
    确定弧的内部是否完全包含指定的矩形。
    boolean
    确定弧的内部是否完全包含指定的矩形。
    boolean
    containsAngle(double angle)
    确定指定的角度是否在弧的角度范围内。
    boolean
    equals(Object obj)
    确定指定的 Object 是否等于此 Arc2D
    abstract double
    返回圆弧的角度范围。
    abstract double
    返回圆弧的起始角度。
    int
    返回圆弧的圆弧闭合类型:OPEN CHORD PIE
    返回圆弧的高精度取景矩形。
    返回圆弧的终点。
    返回定义圆弧边界的迭代对象。
    返回圆弧的起点。
    int
    返回此 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)
    将此弧的角度范围设置为指定的双精度值。
    void
    setAngles(double x1, double y1, double x2, double y2)
    使用两组坐标设置此弧的起始角度和角度范围。
    void
    使用两点设置此弧的起始角度和角度范围。
    abstract void
    setAngleStart(double angSt)
    将此弧的起始角度设置为指定的双精度值。
    void
    将此圆弧的起始角度设置为指定点相对于此圆弧中心定义的角度。
    abstract void
    setArc(double x, double y, double w, double h, double angSt, double angExt, int closure)
    将此弧的位置、大小、角度范围和闭合类型设置为指定的双精度值。
    void
    将此弧设置为与指定弧相同。
    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)
    将此弧的闭合类型设置为指定值:OPENCHORDPIE
    void
    setFrame(double x, double y, double w, double h)
    将此 Shape 的框架矩形的位置和大小设置为指定的矩形值。

    在类 java.lang.Object 中声明的方法

    finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • 字段详细信息

    • OPEN

      public static final int OPEN
      开放弧的闭合类型,没有连接弧段两端的路径段。
      自从:
      1.2
      参见:
    • CHORD

      public static final int CHORD
      圆弧的闭合类型,通过从弧段的起点到弧段的终点绘制一条直线段来闭合。
      自从:
      1.2
      参见:
    • PIE

      public static final int PIE
      圆弧的闭合类型,通过从圆弧段的起点到整个椭圆的中心并从该点到圆弧段的终点绘制直线段来闭合。
      自从:
      1.2
      参见:
  • 构造方法详细信息

    • Arc2D

      protected Arc2D()
      这是一个不能直接实例化的抽象类。类型特定的实现子类可用于实例化,并提供多种格式来存储满足以下各种访问器方法所需的信息。

      此构造函数创建一个默认闭包类型为 OPEN 的对象。提供它只是为了启用子类的序列化。

      参见:
    • Arc2D

      protected Arc2D(int type)
      这是一个不能直接实例化的抽象类。类型特定的实现子类可用于实例化,并提供多种格式来存储满足以下各种访问器方法所需的信息。
      参数:
      type - 此弧的闭合类型:OPEN CHORD PIE
      自从:
      1.2
      参见:
  • 方法详情

    • getAngleStart

      public abstract double getAngleStart()
      返回圆弧的起始角度。
      返回:
      一个双精度值,表示圆弧的起始角度(以度为单位)。
      自从:
      1.2
      参见:
    • getAngleExtent

      public abstract double getAngleExtent()
      返回圆弧的角度范围。
      返回:
      一个双精度值,表示圆弧的角度范围(以度为单位)。
      自从:
      1.2
      参见:
    • getArcType

      public int getArcType()
      返回圆弧的圆弧闭合类型:OPEN CHORD PIE
      返回:
      此类中定义的整数常量闭包类型之一。
      自从:
      1.2
      参见:
    • getStartPoint

      public Point2D  getStartPoint()
      返回圆弧的起点。该点是从起始角定义的中心发出的射线与圆弧的椭圆边界的交点。
      返回:
      一个 Point2D 对象,表示圆弧起点的 x,y 坐标。
      自从:
      1.2
    • getEndPoint

      public Point2D  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)
      将此弧的位置、大小、角度范围和闭合类型设置为指定的双精度值。
      参数:
      x - 圆弧左上角的 X 坐标。
      y - 圆弧左上角的 Y 坐标。
      w - 完整椭圆的总宽度,该圆弧是其中的一部分。
      h - 完整椭圆的总高度,该圆弧是其中的一部分。
      angSt - 圆弧的起始角度(以度为单位)。
      angExt - 圆弧的角度范围(以度为单位)。
      closure - 圆弧的闭合类型:OPEN CHORD PIE
      自从:
      1.2
    • setArc

      public void setArc(Point2D  loc, Dimension2D  size, double angSt, double angExt, int closure)
      将此弧的位置、大小、角度范围和闭合类型设置为指定值。
      参数:
      loc - Point2D 表示圆弧左上角的坐标。
      size - Dimension2D 表示完整椭圆的宽度和高度,此弧是其中的一部分。
      angSt - 圆弧的起始角度(以度为单位)。
      angExt - 圆弧的角度范围(以度为单位)。
      closure - 圆弧的闭合类型:OPEN CHORD PIE
      自从:
      1.2
    • setArc

      public void setArc(Rectangle2D  rect, double angSt, double angExt, int closure)
      将此弧的位置、大小、角度范围和闭合类型设置为指定值。
      参数:
      rect - 框架矩形,用于定义完整椭圆的外边界,该圆弧是其一部分。
      angSt - 圆弧的起始角度(以度为单位)。
      angExt - 圆弧的角度范围(以度为单位)。
      closure - 圆弧的闭合类型:OPEN CHORD PIE
      自从:
      1.2
    • setArc

      public void setArc(Arc2D  a)
      将此弧设置为与指定弧相同。
      参数:
      a - 用于设置弧值的 Arc2D
      自从:
      1.2
    • setArcByCenter

      public void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure)
      将此弧的位置、边界、角度范围和闭合类型设置为指定值。圆弧由中心点和半径定义,而不是由整个椭圆的框架矩形定义。
      参数:
      x - 圆弧中心的 X 坐标。
      y - 圆弧中心的 Y 坐标。
      radius - 圆弧的半径。
      angSt - 圆弧的起始角度(以度为单位)。
      angExt - 圆弧的角度范围(以度为单位)。
      closure - 圆弧的闭合类型:OPEN CHORD PIE
      自从:
      1.2
    • setArcByTangent

      public void setArcByTangent(Point2D  p1, Point2D  p2, Point2D  p3, double radius)
      将此弧的位置、边界和角度范围设置为指定值。圆弧的起始角与点(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

      public void setAngleStart(Point2D  p)
      将此圆弧的起始角度设置为指定点相对于此圆弧中心定义的角度。圆弧的角度范围将保持不变。
      参数:
      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

      public void setAngles(Point2D  p1, Point2D  p2)
      使用两点设置此弧的起始角度和角度范围。第一个点用于确定起点相对于圆弧中心的角度。第二点用于确定终点相对于圆弧中心的角度。圆弧总是非空的,并从第一点逆时针延伸到第二点。
      参数:
      p1 - 定义圆弧起点的 Point2D
      p2 - 定义圆弧终点的 Point2D
      自从:
      1.2
    • setArcType

      public void setArcType(int type)
      将此弧的闭合类型设置为指定值:OPENCHORDPIE
      参数:
      type - 表示此弧的闭包类型的整数常量:OPEN CHORD PIE
      抛出:
      IllegalArgumentException - 如果 type 不是 0、1 或 2.+
      自从:
      1.2
      参见:
    • setFrame

      public void setFrame(double x, double y, double w, double h)
      将此 Shape 的框架矩形的位置和大小设置为指定的矩形值。请注意,圆弧 部分题写 是此 RectangularShape 的框架矩形。
      指定者:
      setFrame 在类 RectangularShape
      参数:
      x - 指定矩形左上角的X坐标
      y - 指定矩形左上角的Y坐标
      w - 指定矩形的宽度
      h - 指定矩形的高度
      自从:
      1.2
      参见:
    • getBounds2D

      public Rectangle2D  getBounds2D()
      返回圆弧的高精度取景矩形。如果此 Arc2D 具有 PIE 闭合类型,则框架矩形仅包含此 Arc2D 位于起始角和结束角之间的部分并包含饼楔。

      此方法与 getBounds 的不同之处在于,getBounds 方法仅返回此 Arc2D 的封闭椭圆的边界,而不考虑此 Arc2D 的起始角和终止角。

      返回:
      Rectangle2D 表示圆弧的框架矩形。
      自从:
      1.2
      参见:
    • makeBounds

      protected abstract Rectangle2D  makeBounds(double x, double y, double w, double h)
      构造一个具有适当精度的 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

      public boolean contains(Rectangle2D  r)
      确定弧的内部是否完全包含指定的矩形。
      指定者:
      contains 在接口 Shape
      重写:
      contains 在类 RectangularShape
      参数:
      r - 要测试的 Rectangle2D
      返回:
      true 如果弧包含矩形,false 如果弧不包含矩形。
      自从:
      1.2
      参见:
    • getPathIterator

      public PathIterator  getPathIterator(AffineTransform  at)
      返回定义圆弧边界的迭代对象。这个迭代器是多线程安全的。 Arc2D 保证对圆弧几何形状的修改不会影响已经在进行中的该几何形状的任何迭代。
      参数:
      at - 一个可选的 AffineTransform 应用于在迭代中返回的坐标,如果需要未转换的坐标,则为 null。
      返回:
      定义圆弧边界的 PathIterator
      自从:
      1.2
    • hashCode

      public int hashCode()
      返回此 Arc2D 的哈希码。
      重写:
      hashCode 在类 Object
      返回:
      这个 Arc2D 的哈希码。
      自从:
      1.6
      参见:
    • equals

      public boolean equals(Object  obj)
      确定指定的 Object 是否等于此 Arc2D。指定的 Object 等于此 Arc2D 如果它是 Arc2D 的实例并且其位置、大小、弧范围和类型与此 Arc2D 相同。
      重写:
      equals 在类 Object
      参数:
      obj - 要与此 Arc2D 进行比较的 Object
      返回:
      true 如果 objArc2D 的实例并且具有相同的值; false否则。
      自从:
      1.6
      参见: