Module java.desktop
Package java.awt.geom

Class RoundRectangle2D

java.lang.Object
java.awt.geom.RectangularShape
java.awt.geom.RoundRectangle2D
所有已实现的接口:
Shape, Cloneable
直接已知的子类:
RoundRectangle2D.Double, RoundRectangle2D.Float

public abstract class RoundRectangle2D extends RectangularShape
RoundRectangle2D类定义了一个带有圆角的矩形,由位置(x,y)、尺寸(w x h)以及用于圆角的弧的宽度和高度定义。

这个类是所有存储2D圆角矩形的对象的抽象超类。坐标的实际存储表示留给子类。

自:
1.2
  • Constructor Details

    • RoundRectangle2D

      protected RoundRectangle2D()
      这是一个不能直接实例化的抽象类。有特定类型的实现子类可用于实例化,并提供多种格式来存储满足下面各种访问器方法所需的信息。
      自:
      1.2
      另请参阅:
  • Method Details

    • getArcWidth

      public abstract double getArcWidth()
      获取用于圆角的弧的宽度。
      返回:
      RoundRectangle2D的圆角弧的宽度。
      自:
      1.2
    • getArcHeight

      public abstract double getArcHeight()
      获取用于圆角的弧的高度。
      返回:
      RoundRectangle2D的圆角弧的高度。
      自:
      1.2
    • setRoundRect

      public abstract void setRoundRect(double x, double y, double w, double h, double arcWidth, double arcHeight)
      将此RoundRectangle2D的位置、大小和圆角半径设置为指定的double值。
      参数:
      x - 要设置为此RoundRectangle2D位置的X坐标
      y - 要设置为此RoundRectangle2D位置的Y坐标
      w - 要设置为此RoundRectangle2D的宽度
      h - 要设置为此RoundRectangle2D的高度
      arcWidth - 要设置为此RoundRectangle2D的弧的宽度
      arcHeight - 要设置为此RoundRectangle2D的弧的高度
      自:
      1.2
    • setRoundRect

      public void setRoundRect(RoundRectangle2D rr)
      将此RoundRectangle2D设置为与指定的RoundRectangle2D相同。
      参数:
      rr - 指定的RoundRectangle2D
      自:
      1.2
    • setFrame

      public void setFrame(double x, double y, double w, double h)
      将此Shape的框架矩形的位置和大小设置为指定的矩形值。
      由以下指定:
      setFrame 在类 RectangularShape
      参数:
      x - 指定矩形形状左上角的X坐标
      y - 指定矩形形状左上角的Y坐标
      w - 指定矩形形状的宽度
      h - 指定矩形形状的高度
      自:
      1.2
      另请参阅:
    • contains

      public boolean contains(double x, double y)
      测试指定的坐标是否在Shape的边界内,如内部定义所述。
      参数:
      x - 要测试的指定X坐标
      y - 要测试的指定Y坐标
      返回:
      如果指定的坐标在Shape边界内,则返回true; 否则返回false
      自:
      1.2
    • intersects

      public boolean intersects(double x, double y, double w, double h)
      测试Shape的内部是否与指定的矩形区域相交。如果矩形区域被认为与Shape相交,当且仅当内部的Shape和指定的矩形区域都包含任何点时。

      Shape.intersects()方法允许Shape实现在以下情况下保守地返回true

      • 矩形区域和Shape有很高的概率相交,但
      • 准确确定此交集的计算代价过高。
      这意味着对于某些Shapes,即使矩形区域不与Shape相交,此方法可能返回true。与大多数Shape对象相比,Area类执行更准确的几何相交计算,因此如果需要更精确的答案,则可以使用它。
      参数:
      x - 指定矩形区域左上角的X坐标
      y - 指定矩形区域左上角的Y坐标
      w - 指定矩形区域的宽度
      h - 指定矩形区域的高度
      返回:
      如果Shape的内部和矩形区域的内部相交,或者两者高度可能相交且计算交集过于昂贵,则返回true; 否则返回false
      自:
      1.2
      另请参阅:
    • contains

      public boolean contains(double x, double y, double w, double h)
      测试Shape的内部是否完全包含指定的矩形区域。所有位于矩形区域内部的坐标必须位于整个矩形区域内部才被认为包含在Shape内部。

      Shape.contains()方法允许Shape实现在以下情况下保守地返回false

      • intersect方法返回true
      • 确定Shape是否完全包含矩形区域的计算代价过高。
      这意味着对于某些Shapes,即使Shape包含矩形区域,此方法可能返回false。与大多数Shape对象相比,Area类执行更准确的几何计算,因此如果需要更精确的答案,则可以使用它。
      参数:
      x - 指定矩形区域左上角的X坐标
      y - 指定矩形区域左上角的Y坐标
      w - 指定矩形区域的宽度
      h - 指定矩形区域的高度
      返回:
      如果Shape的内部完全包含指定的矩形区域,则返回true; 否则返回false,或者如果Shape包含矩形区域且intersects方法返回true且包含计算过于昂贵,则返回false
      自:
      1.2
      另请参阅:
    • getPathIterator

      public PathIterator getPathIterator(AffineTransform at)
      返回一个定义此RoundRectangle2D边界的迭代对象。此类的迭代器是多线程安全的,这意味着此RoundRectangle2D类保证对此RoundRectangle2D对象的几何修改不会影响已经在处理中的任何几何迭代。
      参数:
      at - 一个可选的AffineTransform,用于在迭代返回坐标时应用,或者如果需要未转换的坐标,则为null
      返回:
      返回此RoundRectangle2D轮廓的几何形状的PathIterator对象,一次返回一个段。
      自版本:
      1.2
    • hashCode

      public int hashCode()
      返回此RoundRectangle2D的哈希码。
      覆盖:
      hashCode 在类 Object
      返回:
      返回此RoundRectangle2D的哈希码。
      自版本:
      1.6
      另请参阅:
    • equals

      public boolean equals(Object obj)
      确定指定的Object是否等于此RoundRectangle2D。如果指定的ObjectRoundRectangle2D的实例,并且其位置、大小和圆角弧度与此RoundRectangle2D相同,则指定的Object等于此RoundRectangle2D
      覆盖:
      equals 在类 Object
      参数:
      obj - 与此RoundRectangle2D进行比较的Object
      返回:
      如果objRoundRectangle2D的实例并且具有相同的值,则返回true; 否则返回false
      自版本:
      1.6
      另请参阅: