- java.lang.Object
-
- javafx.scene.paint.Paint
-
- javafx.scene.paint.LinearGradient
-
public final class LinearGradient extends Paint
LinearGradient
クラスは、図形を線形の色グラデーション・パターンで塗りつぶします。 ユーザーはグラデーションの色を2色以上指定でき、この場合の描画では、各色の間の補間が行われます。アプリケーションでは、
Stop
の配列を利用して、グラデーションでの色の分布方法を指定します。Stop#offset
変数は、0.0-1.0の範囲内にあって、グラデーションに沿ったキー・フレームのように機能する必要があります。 オフセットによって、グラデーションが厳密に特定の色になる位置がマークされます。proportional変数をtrueに設定した場合は、グラデーションの始点と終点を単位正方形(0.0->1.0)に対して相対的に指定する必要があり、このグラデーションが図形全体に拡大されます。 proportional変数をfalseに設定した場合は、始点と終点を図形のローカル座標系に指定する必要があり、グラデーションが拡大されることはありません。
次の例では、塗りつぶされた2つの矩形は同じようにレンダリングされます。 左側では、プロポーショナル座標を使用してグラデーションの終点を指定しています。 右側では、絶対座標を使用しています。 どちらの場合も、水平方向に黒から赤に変化するグラデーションで、指定した矩形を塗りつぶします。
// object bounding box relative (proportional = true) Stop[] stops = new Stop[] { new Stop(0, Color.BLACK), new Stop(1, Color.RED)}; LinearGradient lg1 = new LinearGradient(0, 0, 1, 0, true, CycleMethod.NO_CYCLE, stops); Rectangle r1 = new Rectangle(0, 0, 100, 100); r1.setFill(lg1); // user space relative (proportional: = false) LinearGradient lg2 = new LinearGradient(125, 0, 225, 0, false, CycleMethod.NO_CYCLE, stops); Rectangle r2 = new Rectangle(125, 0, 100, 100); r2.setFill(lg2);
- 導入されたバージョン:
- JavaFX 2.0
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, List<Stop> stops)
LinearGradientの新しいインスタンスを生成します。LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, Stop... stops)
LinearGradientの新しいインスタンスを生成します。
-
メソッドのサマリー
すべてのメソッド 静的メソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 boolean
equals(Object obj)
このオブジェクトと他のオブジェクトが等しいかどうかを示します。CycleMethod
getCycleMethod()
LinearGradient
に適用するサイクル・メソッド(CycleMethod.NO_CYCLE
、CycleMethod.REFLECT
またはCycleMethod.REPEAT
)を定義します。double
getEndX()
グラデーション軸の終点のX座標を定義します。double
getEndY()
グラデーション軸の終点のY座標を定義します。double
getStartX()
グラデーション軸の始点のX座標を定義します。double
getStartY()
グラデーション軸の始点のY座標を定義します。List<Stop>
getStops()
2つ以上のStop
値のシーケンスによって、グラデーションでの色の分布方法を指定します。int
hashCode()
このLinearGradient
オブジェクトのハッシュ・コードを返します。boolean
isOpaque()
この描画が完全に不透明かどうかを取得します。boolean
isProportional()
始点と終点の位置がプロポーショナルか絶対値かを示します。String
toString()
このLinearGradient
オブジェクトの文字列表現を返します。static LinearGradient
valueOf(String value)
文字列表現から線形グラデーション値を作成します。
-
-
-
コンストラクタの詳細
-
LinearGradient
public LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, Stop... stops)
LinearGradientの新しいインスタンスを生成します。- パラメータ:
startX
- グラデーション軸の始点のX座標startY
- グラデーション軸の始点のY座標endX
- グラデーション軸の終点のX座標endY
- グラデーション軸の終点のY座標proportional
- 座標が、このグラデーションによって塗りつぶされる図形に対してプロポーショナルかどうか。cycleMethod
- グラデーションに適用されるサイクル・メソッドstops
- グラデーションの色指定
-
LinearGradient
public LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, List<Stop> stops)
LinearGradientの新しいインスタンスを生成します。- パラメータ:
startX
- グラデーション軸の始点のX座標startY
- グラデーション軸の始点のY座標endX
- グラデーション軸の終点のX座標endY
- グラデーション軸の終点のY座標proportional
- 座標が、このグラデーションによって塗りつぶされる図形に対してプロポーショナルかどうか。cycleMethod
- グラデーションに適用されるサイクル・メソッドstops
- グラデーションの色指定
-
-
メソッドの詳細
-
getStartX
public final double getStartX()
グラデーション軸の始点のX座標を定義します。 proportionalがtrue (デフォルト)である場合、グラデーションで塗りつぶす図形のサイズに合せてスケーリングされる単位四角形上の点がこの値によって指定されます。- デフォルト値:
- 0.0
- 戻り値:
- グラディエント軸の始点のX座標
-
getStartY
public final double getStartY()
グラデーション軸の始点のY座標を定義します。 proportionalがtrue (デフォルト)である場合、グラデーションで塗りつぶす図形のサイズに合せてスケーリングされる単位四角形上の点をこの値によって指定します。- デフォルト値:
- 0.0
- 戻り値:
- グラディエント軸の始点のY座標
-
getEndX
public final double getEndX()
グラデーション軸の終点のX座標を定義します。 proportionalがtrue (デフォルト)である場合、グラデーションで塗りつぶす図形のサイズに合せてスケーリングされる単位四角形上の点をこの値によって指定します。- デフォルト値:
- 1.0
- 戻り値:
- 勾配軸の終点のX座標
-
getEndY
public final double getEndY()
グラデーション軸の終点のY座標を定義します。 proportionalがtrue (デフォルト)である場合、グラデーションで塗りつぶす図形のサイズに合せてスケーリングされる単位四角形上の点をこの値によって指定します。- デフォルト値:
- 1.0
- 戻り値:
- 勾配軸の終点のY座標
-
isProportional
public final boolean isProportional()
始点と終点の位置がプロポーショナルか絶対値かを示します。 このフラグがtrueである場合、座標空間(グラデーションで塗りつぶす図形の境界上にマップするために、範囲[0..1]
の座標がスケーリングされる)に2つの終点が定義されます。 このフラグがfalseである場合、座標はノードのローカル座標系で指定されます。- デフォルト値:
- true
- 戻り値:
- 真の開始ロケーションと終了ロケーションが比例する場合、それ以外は絶対
-
getCycleMethod
public final CycleMethod getCycleMethod()
LinearGradient
に適用するサイクル・メソッド(CycleMethod.NO_CYCLE
、CycleMethod.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の不透明性は手軽には判断できない場合があります。
-
equals
public boolean equals(Object obj)
このオブジェクトと他のオブジェクトが等しいかどうかを示します。- オーバーライド:
equals
、クラス:Object
- パラメータ:
obj
- 比較対象の参照オブジェクト。- 戻り値:
- このオブジェクトが
obj
引数と等しい場合はtrue
、そうでない場合はfalse
。 - 関連項目:
Object.hashCode()
、HashMap
-
hashCode
public int hashCode()
このLinearGradient
オブジェクトのハッシュ・コードを返します。- オーバーライド:
hashCode
、クラス:Object
- 戻り値:
- この
LinearGradient
オブジェクトのハッシュ・コード。 - 関連項目:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
toString
public String toString()
このLinearGradient
オブジェクトの文字列表現を返します。
-
valueOf
public static LinearGradient valueOf(String value)
文字列表現から線形グラデーション値を作成します。文字列表現のフォーマットは、次の線形グラデーションのJavaFX CSS仕様に基づきます。
linear-gradient( [ [from <point> to <point>| [ to <side-or-corner>], ]? [ [ repeat | reflect ], ]? <color-stop>[, <color-stop>]+)
各項目は次のとおりです。<side-or-corner> = [left | right] || [top | bottom] <point> = [ [ <length> <length> ] | [ <percentage> | <percentage> ] ] <color-stop> = [ <color> [ <percentage> | <length>]? ]
現在、長さはピクセル単位でのみ指定できます。単位の指定は省略できます。 色表現のフォーマットは、
例:Color.web(String color)
で使用されるものです。 linear-gradientキーワードは省略できます。 文字列表現のフォーマットの詳細は、「CSSリファレンス・ガイド」を参照してください。LinearGradient g = LinearGradient.valueOf("linear-gradient(from 0% 0% to 100% 100%, red 0% , blue 30%, black 100%)"); LinearGradient g = LinearGradient.valueOf("from 0% 0% to 100% 100%, red 0% , blue 30%, black 100%"); LinearGradient g = LinearGradient.valueOf("linear-gradient(from 0px 0px to 200px 0px, #00ff00 0%, 0xff0000 50%, 0x1122ff40 100%)"); LinearGradient g = LinearGradient.valueOf("from 0px 0px to 200px 0px, #00ff00 0%, 0xff0000 50%, 0x1122ff40 100%");
- パラメータ:
value
- 変換対象の文字列- 戻り値:
- 文字列引数により表される値を保持する
LinearGradient
オブジェクト。 - 例外:
NullPointerException
-value
がnull
である場合IllegalArgumentException
-value
を解析できない場合- 導入されたバージョン:
- JavaFX 2.1
-
-