Rectangle2D.DoubleクラスとRectangle2D.Floatクラス

広告

Rectangle2Dクラスは長方形を表すクラスです。

クラス図は次のようになっています。

  • java.lang.Object
  • java.awt.geom.RectangularShape
  • java.awt.geom.Rectangle2D
  • public abstract class Rectangle2D extends RectangularShape

Rectangle2Dクラスはabstractクラスとなっていますので実際に使用する場合はサブクラスであるRectangle2D.DoubleクラスとRectangle2D.Floatクラスを利用します。

Rectangle2D.Doubleクラス

Rectangle2D.Doubleクラスは座標や幅と高さの値としてdouble型の値を使用するクラスです。

クラス図は次のようになっています。

  • java.lang.Object
  • java.awt.geom.RectangularShape
  • java.awt.geom.Rectangle2D
  • java.awt.geom.Rectangle2D.Double
  • public static class Rectangle2D.Double extends Rectangle2D implements Serializable

コンストラクタは次の2つが用意されています。

コンストラクタ
Rectangle2D.Double()
新しい Rectangle2D を構築し、位置 (0, 0) およびサイズ (0, 0) に初期化します。
Rectangle2D.Double(double x, double y, double w, double h)
指定された double 型の座標から Rectangle2D を構築および初期化します。

1番目のコンストラクタは座標の初期値として座標を(0, 0)、幅と高さもそれぞれ0を指定した場合と同じです。それでは2番目のコンストラクタを確認してみます。

指定された double 型の座標から Rectangle2D を構築および初期化します。 

パラメータ:
  x - 新しく構築される Rectangle2D の 左上隅の X 座標
  y - 新しく構築される Rectangle2D の 左上隅の Y 座標
  w - 新しく構築される Rectangle2D の 幅
  h - 新しく構築される Rectangle2D の 高さ

1番目の引数でx座標を2番目の引数でy座標をそれぞれdouble型の値で指定します。この2つが長方形の領域の左上の座標となります。そして3番目の引数で幅を4番目の引数で高さをそれぞれdouble型の値で指定します。

具体的には次のように記述します。

Rectangle2D.Double rec = 
  new Rectangle2D.Double(10.0d, 10.0d, 20.0d, 12.0d);

Rectangle2D.Floatクラス

Rectangle2D.Floatクラスは座標や幅と高さの値としてfloat型の値を使用するクラスです。

クラス図は次のようになっています。

  • java.lang.Object
  • java.awt.geom.RectangularShape
  • java.awt.geom.Rectangle2D
  • java.awt.geom.Rectangle2D.Float
  • public static class Rectangle2D.Float extends Rectangle2D implements Serializable

コンストラクタは次の2つが用意されています。

コンストラクタ
Rectangle2D.Float()
新しい Rectangle2D を構築し、位置 (0.0, 0.0) およびサイズ (0.0, 0.0) に初期化します。
Rectangle2D.Float(float x, float y, float w, float h)
指定された float 型の座標から Rectangle2D を構築および初期化します。

1番目のコンストラクタは座標の初期値として座標を(0, 0)、幅と高さもそれぞれ0を指定した場合と同じです。それでは2番目のコンストラクタを確認してみます。

指定された float 型の座標から Rectangle2D を構築および初期化します。 

パラメータ:
  x - 新しく構築される Rectangle2D の 左上隅の X 座標
  y - 新しく構築される Rectangle2D の 左上隅の Y 座標
  w - 新しく構築される Rectangle2D の 幅
  h - 新しく構築される Rectangle2D の 高さ

1番目の引数でx座標を2番目の引数でy座標をそれぞれfloat型の値で指定します。この2つが長方形の領域の左上の座標となります。そして3番目の引数で幅を4番目の引数で高さをそれぞれfloat型の値で指定します。

具体的には次のように記述します。

Rectangle2D.Float rec = 
  new Rectangle2D.Float(10.0f, 10.0f, 20.0f, 12.0f);

Rectangle2D.DoubleクラスとRectangle2D.Floatクラスは内部に保持する値がdouble型かfloat型かの違いがあるだけですので次のページ以降では基本的にRectangle2D.Doubleクラスについて内容を確認していきます。

( Written by Tatsuo Ikura )