QuadCurve2D.DoubleクラスとQuadCurve2D.Floatクラス

広告

QuadCurve2Dクラスは2次元ベジエ曲線を表すクラスです。始点と終点そして1つの制御点から曲線を作成します。

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

  • java.lang.Object
  • java.awt.geom.QuadCurve2D
  • public abstract class QuadCurve2D extends Object implements Shape, Cloneable

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

QuadCurve2D.Doubleクラス

QuadCurve2D.Doubleクラスは2次元ベジエ曲線を特定するための各値としてdouble型の値を使用するクラスです。

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

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

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

コンストラクタ
QuadCurve2D.Double()
座標 (0, 0, 0, 0, 0, 0) で QuadCurve2D を構築および初期化します。
QuadCurve2D.Double(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)
指定された double 座標から QuadCurve2D を構築および初期化します。

いくつかコンストラクタがありますが基本となる2番目のコンストラクタを確認してみます。

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

パラメータ:
  x1 - 始点の X 座標
  y1 - 始点の Y 座標
  ctrlx - 制御点の X 座標
  ctrly - 制御点の Y 座標
  x2 - 終点の X 座標
  y2 - 終点の Y 座標

まず始点座標について1番目の引数でx座標を2番目の引数でy座標をそれぞれdouble型の値で指定します。次に制御点の座標について3番目の引数でx座標を4番目の引数でy座標をそれぞれdouble型の値で指定します。最後に終点座標について5番目の引数でx座標を6番目の引数でy座標をそれぞれdouble型の値で指定します。

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

QuadCurve2D.Double curve
  = new QuadCurve2D.Double(20.0d, 20.0d, 20.0d, 160.0d, 150.0d, 100.0d);

QuadCurve2D.Floatクラス

QuadCurve2D.Floatクラスは2次元ベジエ曲線を特定するための各値としてfloat型の値を使用するクラスです。

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

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

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

コンストラクタ
QuadCurve2D.Float()
座標 (0, 0, 0, 0, 0, 0) で QuadCurve2D を構築および初期化します。
QuadCurve2D.Float(float x1, float y1, float ctrlx, float ctrly, float x2, float y2)
指定された float 座標から QuadCurve2D を構築および初期化します。

いくつかコンストラクタがありますが基本となる2番目のコンストラクタを確認してみます。

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

パラメータ:
  x1 - 始点の X 座標
  y1 - 始点の Y 座標
  ctrlx - 制御点の X 座標
  ctrly - 制御点の Y 座標
  x2 - 終点の X 座標
  y2 - 終点の Y 座標

まず始点座標について1番目の引数でx座標を2番目の引数でy座標をそれぞれfloat型の値で指定します。次に制御点の座標について3番目の引数でx座標を4番目の引数でy座標をそれぞれfloat型の値で指定します。最後に終点座標について5番目の引数でx座標を6番目の引数でy座標をそれぞれfloat型の値で指定します。

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

QuadCurve2D.Float curve
  = new QuadCurve2D.Float(20.0f, 20.0f, 20.0f, 160.0f, 150.0f, 100.0f);

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

( Written by Tatsuo Ikura )