public final class RadialGradient extends Paint
RadialGradient
クラスは、図形を円放射状の色グラデーション・パターンで塗りつぶす方法を提供します。ユーザーはグラデーションの色を2色以上指定でき、この場合の描画では、各色の間の補間が行われます。
ユーザーは、グラデーション・パターンを制御する円を指定する必要があります。この円は、中心点と半径で定義されます。その円内にある別の焦点を指定することもできます。焦点は、グラデーションの最初の色の位置を制御します。デフォルトでは、焦点は、円の中心に設定されます。
中心と半径は、proportional
変数をfalseにしないかぎり、単位四角形に対して相対的に指定されます。proportionalのデフォルト値はtrueであり、これにより、グラデーションがスケーリングされて適用先の図形全体が塗りつぶされます。焦点は、角度と半径に対する相対距離を使用して、中心点に対して常に相対的に指定されます。
この描画は、グラデーションの最初の色を焦点にマップし、最後の色を円周にマップして、その間にあるユーザーが指定した色についてはなめらかに補間します。そのため焦点から円周へと描画されるあらゆる線は、すべてのグラデーションの色を横断します。
焦点が常に厳密に円の内側になるように、焦点距離は範囲(-1, 1)
に固定されます。
アプリケーションでは、Stop
の配列を利用して、グラデーションでの色の分布方法を指定します。Stop#offset
変数は、0.0-1.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()
LinearGradient に適用するサイクル・メソッド(CycleMethod.NO_CYCLE 、CycleMethod.REFLECT またはCycleMethod.REPEAT )を定義します。 |
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)
文字列表現から放射状グラデーション値を作成します。
|
public RadialGradient(double focusAngle, double focusDistance, double centerX, double centerY, double radius, boolean proportional, CycleMethod cycleMethod, Stop... stops)
focusAngle
- グラデーションの中心から、最初の色がマップされる焦点までの角度(度)focusDistance
- グラデーションの中心から、最初の色がマップされる焦点までの距離centerX
- グラデーションの円の中心点のX座標centerY
- グラデーションの円の中心点のY座標radius
- 色のグラデーションの広がりを定義する円の半径proportional
- 比例座標およびサイズが、このグラデーションによって塗りつぶされる図形に対してプロポーショナルかどうか。cycleMethod
- グラデーションに適用されるサイクル・メソッドstops
- グラデーションの色指定public RadialGradient(double focusAngle, double focusDistance, double centerX, double centerY, double radius, boolean proportional, CycleMethod cycleMethod, List<Stop> stops)
focusAngle
- グラデーションの中心から、最初の色がマップされる焦点までの角度(度)focusDistance
- グラデーションの中心から、最初の色がマップされる焦点までの距離centerX
- グラデーションの円の中心点のX座標centerY
- グラデーションの円の中心点のY座標radius
- 色のグラデーションの広がりを定義する円の半径proportional
- 比例座標およびサイズが、このグラデーションによって塗りつぶされる図形に対してプロポーショナルかどうか。cycleMethod
- グラデーションに適用されるサイクル・メソッドstops
- グラデーションの色指定public final double getFocusAngle()
public final double getFocusDistance()
public final double getCenterX()
public final double getCenterY()
public final double getRadius()
public final boolean isProportional()
[0..1]
の座標がスケーリングされる)に中心点と半径が定義されます。このフラグがfalseである場合、中心座標と半径はノードのローカル座標系で指定されます。public final CycleMethod getCycleMethod()
LinearGradient
に適用するサイクル・メソッド(CycleMethod.NO_CYCLE
、CycleMethod.REFLECT
またはCycleMethod.REPEAT
)を定義します。public final List<Stop> getStops()
Stop
値のシーケンスによって、グラデーションでの色の分布方法を指定します。これらの値は0.0-1.0の範囲内にある必要があります。これらはグラデーションに沿ったキー・フレームのように機能します。これらによって、グラデーションが厳密に特定の色になる位置がマークされます。
シーケンス内の各ストップには、シーケンス内の直前のストップよりも大きいオフセットが設けられている必要があります。
リストは変更不可であるため、変更が試行されるたびにUnsupportedOperationException
がスローされます。
public final boolean isOpaque()
Paint
public boolean equals(Object obj)
public int hashCode()
RadialGradient
オブジェクトのハッシュ・コードを返します。public String toString()
RadialGradient
オブジェクトの文字列表現を返します。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
- value
がnull
である場合IllegalArgumentException
- value
を解析できない場合Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.