モジュール java.desktop
パッケージ java.awt

クラスRectangle

すべての実装されたインタフェース:
Shape, Serializable, Cloneable
直系の既知のサブクラス:
DefaultCaret

public class Rectangle extends Rectangle2D implements Shape, Serializable
Rectangleは、座標空間内のRectangleオブジェクトの左上の点(x,y)、その幅、およびその高さで囲まれた座標空間内の領域を指定します。

Rectangleオブジェクトのwidthおよびheightpublicフィールドです。 Rectangleを作成するコンストラクタ、およびRectangleを変更できるメソッドには、widthやheightの値として負の値を設定できます。

幅または高さが正確にゼロのRectangleは、ディメンションがゼロの軸に沿ってロケーションを持ちますが、それ以外の場合、空とみなされます。 isEmpty()メソッドは、このようなRectangleに対してtrueを返します。 空のRectangleがポイントまたは矩形を含むか交差するかどうかをテストするメソッドは、いずれかのディメンションがゼロの場合は常にfalseを返します。 このようなRectangleをポイントまたは矩形と組み合わせるメソッドは、add(Point)メソッドが呼び出されたかのように、その軸にRectangleのロケーションを結果に含めます。

幅または高さが負であるRectangleは、負のディメンションを持つ軸に沿ってロケーションもディメンションもありません。そのようなRectangleは、それらの軸に沿って存在しないものとして扱われます。そのようなRectangleは、包含計算や点や矩形を含んでいるか交差しているかどうかをテストするメソッドに関しても空であり、常にfalseを返します。そのようなRectangleをポイントまたは矩形と組み合わせるメソッドは、結果を生成する際にRectangleを完全に無視します。2つのRectangleオブジェクトが結合され、それぞれが負のディメンションを持つ場合、結果には少なくとも1つの負のディメンションがあります。

Rectangleの位置のみに影響するメソッドは、その寸法がどちらかの軸に沿って負または0であるかどうかに関係なく、Rectangleの位置で機能します。

デフォルトの引数をとらないコンストラクタで構築されたRectangleは、寸法が0x0であり、そのため空になります。 このRectangleの位置は(0,0)になり、この位置は結合操作および追加操作で使用されます。 そのため、点のセットの境界を累積しようとするコードでは、最初に負の幅と高さを使用してRectangleを構築するか、セットの最初の点を使用してRectangleを構築する必要があります。 次に例を示します。


     Rectangle bounds = new Rectangle(0, 0, -1, -1);
     for (int i = 0; i < points.length; i++) {
         bounds.add(points[i]);
     }
 
点の配列に少なくとも1つの点が含まれることがわかっている場合は、次のようになります。

     Rectangle bounds = new Rectangle(points[0]);
     for (int i = 1; i < points.length; i++) {
         bounds.add(points[i]);
     }
 

このクラスは32ビット整数を使用して、位置および寸法を格納します。 操作によっては、結果が32ビット整数の範囲を超えることもあります。 メソッドは結果を計算する際に、中間結果で32ビット・オーバーフローが発生しないような方法を使用し、位置および寸法を保持する32ビット・フィールドに最終結果を格納するための最適表現を選択します。 結果の位置は、実際の結果を直近の32ビット値にクリッピングして、xおよびyフィールドに格納されます。 widthおよびheight寸法フィールドに格納される値には、実際の結果を最大限に含むような32ビット値が選択されます。 一般に、寸法は32ビット整数の範囲とは無関係にクリッピングされます。ただし、位置を32ビット・フィールドのペアに格納できるように位置を移動した場合は、位置の「最適表現」に合わせて寸法が調整されます。 真の結果が負のディメンションを持ち、したがって片方または両方の軸に沿って存在しない場合、格納されたディメンションはそれらの軸の負の数になります。 実際の結果の位置が、32ビット整数の範囲内で表現可能だが、一方または両方の軸で寸法が0である場合、格納される寸法はそれらの軸で0になります。

導入されたバージョン:
1.0
関連項目:
直列化された形式
  • ネストされたクラスのサマリー

    クラス java.awt.geom.Rectangle2Dで宣言されたネストされたクラス/インタフェース

    Rectangle2D.Double, Rectangle2D.Float
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    int
    Rectangleの高さ。
    int
    Rectangleの幅。
    int
    Rectangleの左上隅のX座標。
    int
    Rectangleの左上隅のY座標。

    クラス java.awt.geom.Rectangle2Dで宣言されたフィールド

    OUT_BOTTOM, OUT_LEFT, OUT_RIGHT, OUT_TOP
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    左上隅が座標空間内の(0, 0)にあり、幅と高さがどちらも0である新しいRectangleを構築します。
    Rectangle​(int width, int height)
    左上隅が座標空間内の(0, 0)にあり、幅と高さがwidth引数とheight引数によって指定される新しいRectangleを構築します。
    Rectangle​(int x, int y, int width, int height)
    左上隅が(x,y)として指定され、幅と高さがwidth引数とheight引数によって指定される新しいRectangleを構築します。
    左上隅が(0, 0)であり、幅と高さがDimension引数によって指定される新しいRectangleを構築します。
    左上隅が指定されたPointであり、幅と高さがどちらも0である新しいRectangleを構築します。
    左上隅がPoint引数によって指定され、幅と高さがDimension引数によって指定される新しいRectangleを構築します。
    指定されたRectangleの値に一致するように初期化された新しいRectangleを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    add​(int newx, int newy)
    整数の引数newx,newyによって指定された点をこのRectangleの境界に追加します。
    void
    add​(Point pt)
    指定されたPointをこのRectangleの境界に追加します。
    void
    add​(Rectangle r)
    RectangleをこのRectangleに追加します。
    boolean
    contains​(int x, int y)
    このRectangleに、指定された位置(x,y)にある点が含まれるかどうかをチェックします。
    boolean
    contains​(int X, int Y, int W, int H)
    このRectangleに、指定された寸法(W,H)を持つ指定された位置(X,Y)にあるRectangleが完全に含まれるかどうかをチェックします。
    boolean
    このRectangleに、指定されたPointが含まれるかどうかをチェックします。
    boolean
    このRectangleに、指定されたRectangleが完全に含まれるかどうかをチェックします。
    このRectangle2Dと指定されたRectangle2Dの共通部分を表す新しいRectangle2Dオブジェクトを返します。
    このRectangle2Dと指定されたRectangle2Dの和集合を表す新しいRectangle2Dオブジェクトを返します。
    boolean
    equals​(Object obj)
    2つの矩形が同じかどうかを判定します。
    このRectangleの境界のRectangleを取得します。
    高精度で、かつgetBoundsメソッドより正確なShapeのバウンディング・ボックスを返します。
    double
    境界のRectangleの高さをdouble精度で返します。
    このRectangleの位置を返します。
    返されたDimensionで表された、このRectangleのサイズを取得します。
    double
    境界のRectangleの幅をdouble精度で返します。
    double
    境界のRectangleのX座標をdouble精度で返します。
    double
    境界のRectangleのY座標をdouble精度で返します。
    void
    grow​(int h, int v)
    Rectangleのサイズを水平方向と垂直方向の両方に変更します。
    boolean
    inside​(int X, int Y)
    非推奨。
    JDK Version 1.1以降は、contains(int, int)に置き換えられています。
    このRectangleと指定されたRectangleの共通部分を計算します。
    boolean
    このRectangleと指定されたRectangleが交差しているかどうかを判定します。
    boolean
    RectangularShapeが空であるかどうかを判定します。
    void
    move​(int x, int y)
    非推奨。
    JDK Version 1.1以降は、setLocation(int, int)に置き換えられています。
    int
    outcode​(double x, double y)
    このRectangle2Dを基準に、指定された座標がある場所を判定します。
    void
    reshape​(int x, int y, int width, int height)
    非推奨。
    JDK Version 1.1以降は、setBounds(int, int, int, int)に置き換えられています。
    void
    resize​(int width, int height)
    非推奨。
    JDK Version 1.1以降は、setSize(int, int)に置き換えられています。
    void
    setBounds​(int x, int y, int width, int height)
    このRectangleの境界のRectangleを指定されたxywidth、およびheightに設定します。
    void
    このRectangleの境界のRectangleを指定されたRectangleに一致するように設定します。
    void
    setLocation​(int x, int y)
    このRectangleを指定された位置に移動します。
    void
    このRectangleを指定された位置に移動します。
    void
    setRect​(double x, double y, double width, double height)
    このRectangleの境界を、指定されたxywidth、およびheightを取り囲む整数境界に設定します。
    void
    setSize​(int width, int height)
    このRectangleのサイズを指定された幅と高さに設定します。
    void
    このRectangleのサイズを指定されたDimensionに一致するように設定します。
    このRectangleとその値を表すStringを返します。
    void
    translate​(int dx, int dy)
    このRectangleをX座標軸に沿って右方向に、Y座標軸に沿って下方向に、示された距離だけ平行移動します。
    このRectangleと指定されたRectangleの和集合を計算します。

    クラス java.lang.Objectで宣言されたメソッド

    finalize, getClass, notify, notifyAll, wait, wait, wait

    インタフェース java.awt.Shapeで宣言されたメソッド

    contains, contains, contains, contains, getPathIterator, getPathIterator, intersects, intersects
  • フィールド詳細

  • コンストラクタの詳細

    • Rectangle

      public Rectangle()
      左上隅が座標空間内の(0, 0)にあり、幅と高さがどちらも0である新しいRectangleを構築します。
    • Rectangle

      public Rectangle(Rectangle r)
      指定されたRectangleの値に一致するように初期化された新しいRectangleを構築します。
      パラメータ:
      r - 新しく構築されるRectangleの初期値のコピー元となるRectangle
      導入されたバージョン:
      1.1
    • Rectangle

      public Rectangle(int x, int y, int width, int height)
      左上隅が(x,y)として指定され、幅と高さがwidth引数とheight引数によって指定される新しいRectangleを構築します。
      パラメータ:
      x - 指定されたX座標
      y - 指定されたY座標
      width - Rectangleの幅。
      height - Rectangleの高さ。
      導入されたバージョン:
      1.0
    • Rectangle

      public Rectangle(int width, int height)
      左上隅が座標空間内の(0, 0)にあり、幅と高さがwidth引数とheight引数によって指定される新しいRectangleを構築します。
      パラメータ:
      width - Rectangleの幅。
      height - Rectangleの高さ。
    • Rectangle

      public Rectangle(Point p, Dimension d)
      左上隅がPoint引数によって指定され、幅と高さがDimension引数によって指定される新しいRectangleを構築します。
      パラメータ:
      p - このRectangleの左上隅のPoint
      d - Rectangleの幅と高さを表すDimension
    • Rectangle

      public Rectangle(Point p)
      左上隅が指定されたPointであり、幅と高さがどちらも0である新しいRectangleを構築します。
      パラメータ:
      p - このRectangleの左上隅のPoint
    • Rectangle

      public Rectangle(Dimension d)
      左上隅が(0, 0)であり、幅と高さがDimension引数によって指定される新しいRectangleを構築します。
      パラメータ:
      d - 幅と高さを指定するDimension
  • メソッドの詳細

    • getX

      public double getX()
      境界のRectangleのX座標をdouble精度で返します。
      定義:
      getX、クラス: RectangularShape
      戻り値:
      境界のRectangle領域のX座標。
    • getY

      public double getY()
      境界のRectangleのY座標をdouble精度で返します。
      定義:
      getY、クラス: RectangularShape
      戻り値:
      境界のRectangle領域のY座標。
    • getWidth

      public double getWidth()
      境界のRectangleの幅をdouble精度で返します。
      定義:
      getWidth、クラス: RectangularShape
      戻り値:
      境界のRectangle領域の幅。
    • getHeight

      public double getHeight()
      境界のRectangleの高さをdouble精度で返します。
      定義:
      getHeight、クラス: RectangularShape
      戻り値:
      境界のRectangle領域の高さ。
    • getBounds

      public Rectangle getBounds()
      このRectangleの境界のRectangleを取得します。

      このメソッドは完全性のために用意されているもので、ComponentgetBoundsメソッドに対応します。

      定義:
      getBounds、インタフェース: Shape
      オーバーライド:
      getBounds、クラス: RectangularShape
      戻り値:
      新しいRectangle。このRectangleの境界のRectangle領域に等しい。
      導入されたバージョン:
      1.1
      関連項目:
      Component.getBounds(), setBounds(Rectangle), setBounds(int, int, int, int)
    • getBounds2D

      public Rectangle2D getBounds2D()
      高精度で、かつgetBoundsメソッドより正確なShapeのバウンディング・ボックスを返します。 返されたRectangle2Dが、Shapeを囲む最小のバウンディング・ボックスであるという保証はありません。Shapeが、示されたRectangle2D内に完全に含まれているだけです。 戻り値を、倍精度値を使用して寸法を格納するRectangle2Dのインスタンスにすることができるため、このメソッドによって返されたバウンディング・ボックスは通常、getBoundsメソッドによって返されたものより厳密であり、オーバーフローの問題のために失敗することはありません。

      内側の定義によって、shapeの定義する輪郭上の点が、返されたboundsオブジェクトに含まれていると見なされない状況が発生する場合があります。ただし、これは、これらの点が元のshapeにも含まれていないと見なされる場合のみです。

      pointcontains(point)メソッドに従ってshapeの内側にある場合は、boundscontains(point)メソッドに従って、返されたRectangle2D境界オブジェクトの内側にある必要があります。 具体的には、次のようになります。

      shape.contains(p)にはbounds.contains(p)が必要

      pointshapeの内側にない場合は、引き続きboundsオブジェクトに含まれている可能性があります。

      bounds.contains(p)shape.contains(p)を示さない

      定義:
      getBounds2D、インタフェース: Shape
      オーバーライド:
      getBounds2D、クラス: Rectangle2D
      戻り値:
      Shapeの高精度のバウンディング・ボックスであるRectangle2Dのインスタンス。
      導入されたバージョン:
      1.2
      関連項目:
      Shape.getBounds()
    • setBounds

      public void setBounds(Rectangle r)
      このRectangleの境界のRectangleを指定されたRectangleに一致するように設定します。

      このメソッドは完全性のために含まれており、ComponentsetBoundsメソッドに対応します。

      パラメータ:
      r - 指定されたRectangle
      導入されたバージョン:
      1.1
      関連項目:
      getBounds(), Component.setBounds(java.awt.Rectangle)
    • setBounds

      public void setBounds(int x, int y, int width, int height)
      このRectangleの境界のRectangleを指定されたxywidth、およびheightに設定します。

      このメソッドは完全性のために含まれており、ComponentsetBoundsメソッドに対応します。

      パラメータ:
      x - このRectangleの左上隅の新しいX座標
      y - このRectangleの左上隅の新しいY座標
      width - このRectangleの新しい幅
      height - このRectangleの新しい高さ
      導入されたバージョン:
      1.1
      関連項目:
      getBounds(), Component.setBounds(int, int, int, int)
    • setRect

      public void setRect(double x, double y, double width, double height)
      このRectangleの境界を、指定されたxywidth、およびheightを取り囲む整数境界に設定します。 これらのパラメータによって整数の最大範囲を超えるRectangleが指定される場合、最大整数境界と交差する、指定されたRectangleの最適表現が得られます。
      定義:
      setRect、クラス: Rectangle2D
      パラメータ:
      x - 指定された矩形の左上隅のX座標
      y - 指定された矩形の左上隅のY座標
      width - 指定された矩形の幅
      height - 指定された矩形の新しい高さ
    • reshape

      @Deprecatedpublic void reshape(int x, int y, int width, int height)
      非推奨。
      JDK Version 1.1以降は、setBounds(int, int, int, int)に置き換えられています。
      このRectangleの境界のRectangleを指定されたxywidth、およびheightに設定します。
      パラメータ:
      x - このRectangleの左上隅の新しいX座標
      y - このRectangleの左上隅の新しいY座標
      width - このRectangleの新しい幅
      height - このRectangleの新しい高さ
    • getLocation

      public Point getLocation()
      このRectangleの位置を返します。

      このメソッドは完全性のために含まれており、ComponentgetLocationメソッドに対応します。

      戻り値:
      このRectangleの左上隅のPoint
      導入されたバージョン:
      1.1
      関連項目:
      Component.getLocation(), setLocation(Point), setLocation(int, int)
    • setLocation

      public void setLocation(Point p)
      このRectangleを指定された位置に移動します。

      このメソッドは完全性のために含まれており、ComponentsetLocationメソッドに対応します。

      パラメータ:
      p - このRectangleの新しい位置を指定するPoint
      導入されたバージョン:
      1.1
      関連項目:
      Component.setLocation(java.awt.Point), getLocation()
    • setLocation

      public void setLocation(int x, int y)
      このRectangleを指定された位置に移動します。

      このメソッドは完全性のために含まれており、ComponentsetLocationメソッドに対応します。

      パラメータ:
      x - 新しい位置のX座標
      y - 新しい位置のY座標
      導入されたバージョン:
      1.1
      関連項目:
      getLocation(), Component.setLocation(int, int)
    • move

      @Deprecatedpublic void move(int x, int y)
      非推奨。
      JDK Version 1.1以降は、setLocation(int, int)に置き換えられています。
      このRectangleを指定された位置に移動します。
      パラメータ:
      x - 新しい位置のX座標
      y - 新しい位置のY座標
    • translate

      public void translate(int dx, int dy)
      このRectangleをX座標軸に沿って右方向に、Y座標軸に沿って下方向に、示された距離だけ平行移動します。
      パラメータ:
      dx - X軸に沿ってこのRectangleが移動する距離
      dy - Y軸に沿ってこのRectangleが移動する距離
      関連項目:
      setLocation(int, int), setLocation(java.awt.Point)
    • getSize

      public Dimension getSize()
      返されたDimensionで表された、このRectangleのサイズを取得します。

      このメソッドは完全性のために含まれており、ComponentgetSizeメソッドに対応します。

      戻り値:
      このRectangleのサイズを表すDimension
      導入されたバージョン:
      1.1
      関連項目:
      Component.getSize(), setSize(Dimension), setSize(int, int)
    • setSize

      public void setSize(Dimension d)
      このRectangleのサイズを指定されたDimensionに一致するように設定します。

      このメソッドは完全性のために含まれており、ComponentsetSizeメソッドに対応します。

      パラメータ:
      d - Dimensionオブジェクトの新しいサイズ
      導入されたバージョン:
      1.1
      関連項目:
      Component.setSize(java.awt.Dimension), getSize()
    • setSize

      public void setSize(int width, int height)
      このRectangleのサイズを指定された幅と高さに設定します。

      このメソッドは完全性のために含まれており、ComponentsetSizeメソッドに対応します。

      パラメータ:
      width - このRectangleの新しい幅
      height - このRectangleの新しい高さ
      導入されたバージョン:
      1.1
      関連項目:
      Component.setSize(int, int), getSize()
    • resize

      @Deprecatedpublic void resize(int width, int height)
      非推奨。
      JDK Version 1.1以降は、setSize(int, int)に置き換えられています。
      このRectangleのサイズを指定された幅と高さに設定します。
      パラメータ:
      width - このRectangleの新しい幅
      height - このRectangleの新しい高さ
    • contains

      public boolean contains(Point p)
      このRectangleに、指定されたPointが含まれるかどうかをチェックします。
      パラメータ:
      p - テストするPoint
      戻り値:
      指定されたPointがこのRectangleの内側にある場合はtrue、そうでない場合はfalse
      導入されたバージョン:
      1.1
    • contains

      public boolean contains(int x, int y)
      このRectangleに、指定された位置(x,y)にある点が含まれるかどうかをチェックします。
      パラメータ:
      x - 指定されたX座標
      y - 指定されたY座標
      戻り値:
      (x,y)がこのRectangleの内側にある場合はtrue、それ以外の場合はfalse
      導入されたバージョン:
      1.1
    • contains

      public boolean contains(Rectangle r)
      このRectangleに、指定されたRectangleが完全に含まれるかどうかをチェックします。
      パラメータ:
      r - 指定されたRectangle
      戻り値:
      Rectangleが完全にこのRectangleに含まれる場合はtrue、そうでない場合はfalse
      導入されたバージョン:
      1.2
    • contains

      public boolean contains(int X, int Y, int W, int H)
      このRectangleに、指定された寸法(W,H)を持つ指定された位置(X,Y)にあるRectangleが完全に含まれるかどうかをチェックします。
      パラメータ:
      X - 指定されたX座標
      Y - 指定されたY座標
      W - Rectangleの幅。
      H - Rectangleの高さ。
      戻り値:
      (X, Y, W, H)で指定されるRectangleが完全にこのRectangle内に収まる場合はtrue、そうでない場合はfalse
      導入されたバージョン:
      1.1
    • inside

      @Deprecatedpublic boolean inside(int X, int Y)
      非推奨。
      JDK Version 1.1以降は、contains(int, int)に置き換えられています。
      このRectangleに、指定された位置(X,Y)にある点が含まれるかどうかをチェックします。
      パラメータ:
      X - 指定されたX座標
      Y - 指定されたY座標
      戻り値:
      (X,Y)がこのRectangleの内側にある場合はtrue、それ以外の場合はfalse
    • intersects

      public boolean intersects(Rectangle r)
      このRectangleと指定されたRectangleが交差しているかどうかを判定します。 共通部分が空でない場合、2つの矩形は交差します。
      パラメータ:
      r - 指定されたRectangle
      戻り値:
      指定されたRectangleとこのRectangleが交差する場合はtrue、そうでない場合はfalse
    • intersection

      public Rectangle intersection(Rectangle r)
      このRectangleと指定されたRectangleの共通部分を計算します。 2つの矩形の共通部分を表す新しいRectangleを返します。 2つの矩形が交差しない場合、空の矩形が返されます。
      パラメータ:
      r - 指定されたRectangle
      戻り値:
      指定されたRectangleとこのRectangleの両方に収まる最大のRectangle、これらの矩形が交差しない場合は空の矩形。
    • union

      public Rectangle union(Rectangle r)
      このRectangleと指定されたRectangleの和集合を計算します。 2つの矩形の和集合を表す新しいRectangleを返します。

      いずれかのRectangleのディメンションが0より小さい場合、non-existent矩形のルールが適用されます。 一方だけに0より小さい寸法がある場合は、他方のRectangleのコピーが返されます。 両方とも0未満の場合は、0未満の寸法が少なくとも1つ含まれます。

      結果として得られるRectangleの寸法がintとして表すには大きくなりすぎる場合は、その寸法に合わせたInteger.MAX_VALUEの寸法になります。

      パラメータ:
      r - 指定されたRectangle
      戻り値:
      指定されたRectangleとこのRectangleの両方を含む最小のRectangle
    • add

      public void add(int newx, int newy)
      整数の引数newx,newyによって指定された点をこのRectangleの境界に追加します。

      このRectangleのディメンションが0より小さい場合は、non-existent矩形のルールが適用されます。 この結果、このRectangleの新しい境界の位置は、指定された座標と同じになり、幅と高さは0になります。

      点を追加したあと、追加された点を引数とするcontainsの呼出しは、必ずしもtrueを返しません。 containsメソッドは、Rectangleの右端または下端にある点についてはtrueを返しません。 そのため、追加された点が拡大後のRectangleの右端または下端に位置する場合、containsはその点についてfalseを返します。 指定された点が新しいRectangle内に含まれている必要がある場合は、代わりに1x1の矩形を追加するようにしてください。

           r.add(new Rectangle(newx, newy, 1, 1));
       

      パラメータ:
      newx - 新しい点のX座標
      newy - 新しい点のY座標
    • add

      public void add(Point pt)
      指定されたPointをこのRectangleの境界に追加します。

      このRectangleのディメンションが0より小さい場合は、non-existent矩形のルールが適用されます。 この結果、このRectangleの新しい境界の位置は、指定されたPointの座標と同じになり、幅と高さは0になります。

      Pointを追加したあと、追加されたPointを引数とするcontainsの呼出しは、必ずしもtrueを返しません。 containsメソッドは、Rectangleの右端または下端にある点についてはtrueを返しません。 そのため、追加されたPointが拡大後のRectangleの右端または下端に位置する場合、containsはそのPointについてfalseを返します。 指定された点が新しいRectangle内に含まれている必要がある場合は、代わりに1x1の矩形を追加するようにしてください。

           r.add(new Rectangle(pt, new Dimension(1, 1)));
       

      パラメータ:
      pt - このRectangleに追加される新しいPoint
    • add

      public void add(Rectangle r)
      RectangleをこのRectangleに追加します。 その結果のRectangleは、2つの矩形の和集合となります。

      一方のRectangleで寸法が0未満の場合、結果は他方のRectangleの寸法が返されます。 両方のRectangleで0未満の寸法が少なくとも1つ含まれる場合は、結果に0未満の寸法が少なくとも1つ含まれます。

      いずれかのRectangleで一方または両方の寸法が0である場合、これらの軸に沿った寸法0の結果は、対応する原点座標をその軸に沿った結果の矩形に追加することで得られる結果と等しくなります。これはadd(Point)メソッドによる操作に似ていますが、結果の矩形を超える寸法は使用されません。

      結果として得られるRectangleの寸法がintとして表すには大きくなりすぎる場合は、その寸法に合わせたInteger.MAX_VALUEの寸法になります。

      パラメータ:
      r - 指定されたRectangle
    • grow

      public void grow(int h, int v)
      Rectangleのサイズを水平方向と垂直方向の両方に変更します。

      このメソッドは、左右にそれぞれh単位ずつ、上下にそれぞれv単位ずつ大きくなるように、Rectangleを変更します。

      新しいRectangleは、左上隅が(x - h, y - v)、幅が(width+2h)、高さが(height+2v)になります。

      hvに負の値が指定された場合、Rectangleのサイズは小さくなります。 growメソッドは、整数型のオーバーフローおよびアンダーフローを確認しますが、widthおよびheightで得られる値が負の値から負でない値へと増加するか、負でない値から負の値へと減少するかについては確認しません。

      パラメータ:
      h - 水平方向に拡大する量
      v - 垂直方向に拡大する量
    • isEmpty

      public boolean isEmpty()
      RectangularShapeが空であるかどうかを判定します。 RectangularShapeが空の場合は、領域はありません。
      定義:
      isEmpty、クラス: RectangularShape
      戻り値:
      RectangularShapeが空である場合はtrue、そうでない場合はfalse
      導入されたバージョン:
      1.2
    • outcode

      public int outcode(double x, double y)
      このRectangle2Dを基準に、指定された座標がある場所を判定します。 このメソッドは、このRectangle2Dの各辺について、指定された座標がこのRectangle2Dのほかの辺と同じサイドにあるかどうかを示す適切なマスク値の2項論理和を計算します。
      定義:
      outcode、クラス: Rectangle2D
      パラメータ:
      x - 指定されたX座標
      y - 指定されたY座標
      戻り値:
      すべての適切なOUTコードの論理和
      導入されたバージョン:
      1.2
      関連項目:
      Rectangle2D.OUT_LEFT, Rectangle2D.OUT_TOP, Rectangle2D.OUT_RIGHT, Rectangle2D.OUT_BOTTOM
    • createIntersection

      public Rectangle2D createIntersection(Rectangle2D r)
      このRectangle2Dと指定されたRectangle2Dの共通部分を表す新しいRectangle2Dオブジェクトを返します。
      定義:
      createIntersection、クラス: Rectangle2D
      パラメータ:
      r - このRectangle2Dと交差させるRectangle2D
      戻り値:
      指定されたRectangle2DとこのRectangle2Dの両方に含まれる最大のRectangle2D
      導入されたバージョン:
      1.2
    • createUnion

      public Rectangle2D createUnion(Rectangle2D r)
      このRectangle2Dと指定されたRectangle2Dの和集合を表す新しいRectangle2Dオブジェクトを返します。
      定義:
      createUnion、クラス: Rectangle2D
      パラメータ:
      r - このRectangle2Dと結合されるRectangle2D
      戻り値:
      指定されたRectangle2DとこのRectangle2Dの両方を含む最小のRectangle2D
      導入されたバージョン:
      1.2
    • equals

      public boolean equals(Object obj)
      2つの矩形が同じかどうかを判定します。

      引数がnullでなく、このRectangleと同じ左上隅、高さ、および幅を持つRectangleオブジェクトである場合にだけ、結果はtrueになります。

      オーバーライド:
      equals、クラス: Rectangle2D
      パラメータ:
      obj - このRectangleと比較するObject
      戻り値:
      オブジェクトが等しい場合はtrue、そうでない場合はfalse
      関連項目:
      Object.hashCode()HashMap
    • toString

      public String toString()
      このRectangleとその値を表すStringを返します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      このRectangleオブジェクトの座標およびサイズの値を表すString