モジュール javafx.graphics
パッケージ javafx.scene.paint

クラスRadialGradient



  • public final class RadialGradient
    extends Paint
    RadialGradientクラスは、図形を円放射状の色グラデーション・パターンで塗りつぶす方法を提供します。 ユーザーはグラデーションの色を2色以上指定でき、この場合の描画では、各色の間の補間が行われます。

    ユーザーは、グラデーション・パターンを制御する円を指定する必要があります。この円は、中心点と半径で定義されます。 その円内にある別の焦点を指定することもできます。焦点は、グラデーションの最初の色の位置を制御します。 デフォルトでは、焦点は、円の中心に設定されます。

    中心と半径は、proportional変数をfalseにしないかぎり、単位四角形に対して相対的に指定されます。 proportionalのデフォルト値はtrueであり、これにより、グラデーションがスケーリングされて適用先の図形全体が塗りつぶされます。 焦点は、角度と半径に対する相対距離を使用して、中心点に対して常に相対的に指定されます。

    この描画は、グラデーションの最初の色を焦点にマップし、最後の色を円周にマップして、その間にあるユーザーが指定した色についてはなめらかに補間します。 そのため焦点から円周へと描画されるあらゆる線は、すべてのグラデーションの色を横断します。

    焦点が常に厳密に円の内側になるように、焦点距離は範囲(-1, 1)に固定されます。

    アプリケーションでは、Stopの配列を利用して、グラデーションでの色の分布方法を指定します。 Stop#offset変数は、0.0-1.0の範囲内にあって、グラデーションに沿ったキー・フレームのように機能する必要があります。 これらによって、グラデーションが厳密に特定の色になる位置がマークされます。

    導入されたバージョン:
    JavaFX 2.0
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      RadialGradient​(double focusAngle, double focusDistance, double centerX, double centerY, double radius, boolean proportional, CycleMethod cycleMethod, List<Stop> stops)
      RadialGradientの新しいインスタンスを生成します。
      RadialGradient​(double focusAngle, double focusDistance, double centerX, double centerY, double radius, boolean proportional, CycleMethod cycleMethod, Stop... stops)
      RadialGradientの新しいインスタンスを生成します。
    • メソッドのサマリー

      すべてのメソッド 静的メソッド インスタンス・メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      boolean equals​(Object obj)
      このオブジェクトと他のオブジェクトが等しいかどうかを示します。
      double getCenterX​()
      グラデーションを定義する円の中心点のX座標を定義します。
      double getCenterY​()
      グラデーションを定義する円の中心点のX座標を定義します。
      CycleMethod getCycleMethod​()
      RadialGradientに適用されるサイクル・メソッドを定義します。
      double getFocusAngle​()
      グラデーションの中心から、最初の色がマップされる焦点までの角度(度)で定義します。
      double getFocusDistance​()
      グラデーションの中心から、最初の色がマップされる焦点までの距離を定義します。
      double getRadius​()
      色のグラデーションの広がりを定義する円の半径を指定します。
      List<Stop> getStops​()
      2つ以上のStop値のシーケンスによって、グラデーションでの色の分布方法を指定します。
      int hashCode​()
      このRadialGradientオブジェクトのハッシュ・コードを返します。
      boolean isOpaque​()
      この描画が完全に不透明かどうかを取得します。
      boolean isProportional​()
      中心と半径がプロポーショナルか絶対値かを示します。
      String toString​()
      このRadialGradientオブジェクトの文字列表現を返します。
      static RadialGradient valueOf​(String value)
      文字列表現から放射状グラデーション値を作成します。
    • コンストラクタの詳細

      • RadialGradient

        public RadialGradient​(double focusAngle,
                              double focusDistance,
                              double centerX,
                              double centerY,
                              double radius,
                              boolean proportional,
                              CycleMethod cycleMethod,
                              Stop... stops)
        RadialGradientの新しいインスタンスを生成します。
        パラメータ:
        focusAngle - グラデーションの中心から、最初の色がマップされる焦点までの角度(度)
        focusDistance - グラデーションの中心から、最初の色がマップされる焦点までの距離
        centerX - グラデーションの円の中心点のX座標
        centerY - グラデーションの円の中心点のY座標
        radius - 色のグラデーションの広がりを定義する円の半径
        proportional - 比例座標およびサイズが、このグラデーションによって塗りつぶされる図形に対してプロポーショナルかどうか。
        cycleMethod - グラデーションに適用されるサイクル・メソッド
        stops - グラデーションの色指定
      • RadialGradient

        public RadialGradient​(double focusAngle,
                              double focusDistance,
                              double centerX,
                              double centerY,
                              double radius,
                              boolean proportional,
                              CycleMethod cycleMethod,
                              List<Stop> stops)
        RadialGradientの新しいインスタンスを生成します。
        パラメータ:
        focusAngle - グラデーションの中心から、最初の色がマップされる焦点までの角度(度)
        focusDistance - グラデーションの中心から、最初の色がマップされる焦点までの距離
        centerX - グラデーションの円の中心点のX座標
        centerY - グラデーションの円の中心点のY座標
        radius - 色のグラデーションの広がりを定義する円の半径
        proportional - 比例座標およびサイズが、このグラデーションによって塗りつぶされる図形に対してプロポーショナルかどうか。
        cycleMethod - グラデーションに適用されるサイクル・メソッド
        stops - グラデーションの色指定
    • メソッドの詳細

      • getFocusAngle

        public final double getFocusAngle​()
        グラデーションの中心から、最初の色がマップされる焦点までの角度(度)で定義します。
        戻り値:
        グラデーションの中心から最初の色がマッピングされるフォーカス・ポイントまでの角度の角度
      • getFocusDistance

        public final double getFocusDistance​()
        グラデーションの中心から、最初の色がマップされる焦点までの距離を定義します。 距離0.0はグラデーション円の中心です。 距離1.0はグラデーション円の円周上です。
        戻り値:
        勾配の中心から第1の色がマッピングされる焦点点までの距離
      • getCenterX

        public final double getCenterX​()
        グラデーションを定義する円の中心点のX座標を定義します。 proportionalがtrue (デフォルト)である場合、グラデーションで塗りつぶす図形のサイズに合せてスケーリングされる単位四角形上の点をこの値によって指定します。 グラデーションの最後の色は、この円の円周にマップされる
        デフォルト値:
        0.0
        戻り値:
        グラデーションを定義する円の中心点のX座標
      • getCenterY

        public final double getCenterY​()
        グラデーションを定義する円の中心点のX座標を定義します。 proportionalがtrue (デフォルト)である場合、グラデーションで塗りつぶす図形のサイズに合せてスケーリングされる単位四角形上の点をこの値によって指定します。 グラデーションの最後の色は、この円の円周にマップされる
        デフォルト値:
        0.0
        戻り値:
        グラデーションを定義する円の中心点のX座標
      • getRadius

        public final double getRadius​()
        色のグラデーションの広がりを定義する円の半径を指定します。 proportionalがtrue (デフォルト)である場合、グラデーションで塗りつぶす図形のサイズに合うようにスケーリングされる、単位四角形に対する相対サイズをこの値によって指定します。
        デフォルト値:
        1.0
        戻り値:
        カラー・グラデーションの範囲を定義する円の半径
      • isProportional

        public final boolean isProportional​()
        中心と半径がプロポーショナルか絶対値かを示します。 このフラグがtrueである場合、座標空間(グラデーションで塗りつぶす図形の境界上にマップするために、範囲[0..1]の座標がスケーリングされる)に中心点と半径が定義されます。 このフラグがfalseである場合、中心座標と半径はノードのローカル座標系で指定されます。
        デフォルト値:
        true
        戻り値:
        center値とradius値が比例する場合はtrue、そうでない場合はabsolute
      • getCycleMethod

        public final CycleMethod getCycleMethod​()
        RadialGradientに適用されるサイクル・メソッドを定義します。 一つ: CycleMethod.NO_CYCLECycleMethod.REFLECT、またはCycleMethod.REPEAT
        デフォルト値:
        NO_CYCLE
        戻り値:
        このラジアル・グラジエントに適用されるサイクル・メソッド
      • getStops

        public final List<Stop> getStops​()
        2つ以上のStop値のシーケンスによって、グラデーションでの色の分布方法を指定します。 これらの値は0.0-1.0の範囲内にある必要があります。 これらはグラデーションに沿ったキー・フレームのように機能します。これらによって、グラデーションが厳密に特定の色になる位置がマークされます。

        シーケンス内の各ストップには、シーケンス内の直前のストップよりも大きいオフセットが設けられている必要があります。

        リストは変更不可であるため、変更が試行されるたびにUnsupportedOperationExceptionがスローされます。

        デフォルト値:
        戻り値:
        ストップ値のリスト
      • isOpaque

        public final boolean isOpaque​()
        この描画が完全に不透明かどうかを取得します。 不透明な描画とは、どの色にもアルファ成分が含まれていないものを指します。 描画が不透明である可能性があっても、実際に不透明かどうか簡単には判断できない場合は、falseが返されます。 たとえば、ImagePatternの不透明性は手軽には判断できない場合があります。
        定義:
        isOpaque 、クラス: Paint
        戻り値:
        描画が不透明な場合はtrue、不透明でないか、判断できない場合はfalse。
        導入されたバージョン:
        JavaFX 8.0
      • equals

        public boolean equals​(Object obj)
        このオブジェクトと他のオブジェクトが等しいかどうかを示します。
        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        obj - 比較対象の参照オブジェクト。
        戻り値:
        このオブジェクトがobj引数と等しい場合はtrue、そうでない場合はfalse
        関連項目:
        Object.hashCode()HashMap
      • toString

        public String toString​()
        このRadialGradientオブジェクトの文字列表現を返します。
        オーバーライド:
        toString 、クラス:  Object
        戻り値:
        このRadialGradientオブジェクトの文字列表現
      • valueOf

        public static RadialGradient valueOf​(String value)
        文字列表現から放射状グラデーション値を作成します。

        文字列表現のフォーマットは、次の放射状グラデーションのJavaFX CSS仕様に基づきます。

         radial-gradient([focus-angle <angle>, ]?
                         [focus-distance <percentage>, ]?
                         [center <point>, ]?
                         radius [<length> | <percentage>],
                         [[repeat | reflect],]?
                         <color-stop>[, <color-stop>]+)
         
        各項目は次のとおりです。
         <point> = [ [ <length> <length> ] | [ <percentage> | <percentage> ] ]
         <color-stop> = [ <color> [ <percentage> | <length>]? ]
         

        現在、長さはピクセル単位でのみ指定できます。単位の指定は省略できます。 色表現のフォーマットは、Color.web(String color)で使用されるものです。 radial-gradientキーワードは省略できます。 文字列表現のフォーマットの詳細は、「CSSリファレンス・ガイド」を参照してください。

        例:
        
         RadialGradient g
              = RadialGradient.valueOf("radial-gradient(center 100px 100px, radius 200px, red  0%, blue 30%, black 100%)");
         RadialGradient g
              = RadialGradient.valueOf("center 100px 100px, radius 200px, red  0%, blue 30%, black 100%");
         RadialGradient g
              = RadialGradient.valueOf("radial-gradient(center 50% 50%, radius 50%,  cyan, violet 75%, magenta)");
         RadialGradient g
              = RadialGradient.valueOf("center 50% 50%, radius 50%,  cyan, violet 75%, magenta");
         
        パラメータ:
        value - 変換対象の文字列
        戻り値:
        文字列引数により表される値を保持するRadialGradientオブジェクト。
        例外:
        NullPointerException - valuenullである場合
        IllegalArgumentException - valueを解析できない場合
        導入されたバージョン:
        JavaFX 2.1