- java.lang.Object
-
- javafx.scene.paint.Paint
-
- javafx.scene.paint.RadialGradient
-
public final class RadialGradient extends Paint
RadialGradient
类提供了一种填充圆形径向颜色渐变图案的形状的方法。 用户可以指定2种或更多种渐变颜色,而这种颜色将在每种颜色之间提供插值。用户必须指定控制渐变图案的圆,它由中心点和半径定义。 用户还可以在该圆内指定单独的焦点,该点控制渐变的第一个颜色的位置。 默认情况下,焦点设置为圆的中心。
中心和半径相对于单位平方来指定,除非
proportional
变量为false。 默认比例为true,渐变将缩放以填充其应用的任何形状。 焦点总是相对于中心点指定相对于半径的角度和距离。此画面将渐变的第一个颜色映射到焦点,并将最后一个颜色映射到圆周边,为用户指定的任何中间颜色顺利插入。 因此,从焦点到圆周绘制的任何线将跨越所有渐变颜色。
对焦距离将被夹紧到
(-1, 1)
范围内,使焦点始终严格在圆内。该应用程序提供了一个
Stop
s的数组,指定如何沿渐变分布颜色。Stop#offset
变量的范围必须为0.0到1.0,并且像梯度的关键帧一样起作用。 它们标记渐变应该是一个特定的颜色。- 从以下版本开始:
- JavaFX 2.0
-
-
构造方法摘要
构造方法 Constructor 描述 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实例。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 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()
获取此Paint是否完全不透明。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将在渐变圆的圆周上。- 结果
- 从渐变的中心到第一个颜色映射到的焦点的距离
-
getCenterX
public final double getCenterX()
定义定义渐变的圆的中心点的X坐标。 如果比例为真(默认值),此值指定单位平方的点,该点将被缩放以匹配渐变填充的形状的大小。 渐变的最后一个颜色被映射到该圆的周长。- Default value:
- 0.0
- 结果
- 定义渐变的圆的中心点的X坐标
-
getCenterY
public final double getCenterY()
定义定义渐变的圆的中心点的X坐标。 如果比例为真(默认值),此值指定单位平方的点,该点将被缩放以匹配渐变填充的形状的大小。 渐变的最后一个颜色被映射到该圆的周长。- Default value:
- 0.0
- 结果
- 定义渐变的圆的中心点的X坐标
-
getRadius
public final double getRadius()
指定定义颜色渐变范围的圆的半径。 如果比例为真(默认值),此值指定相对于单位平方的尺寸,该尺寸将缩放以匹配渐变填充的形状的大小。- Default value:
- 1.0
- 结果
- 圆的半径定义颜色渐变的范围
-
isProportional
public final boolean isProportional()
指示中心和半径值是正比还是绝对。 如果该标志为真,则中心点和半径在坐标空间中定义,其坐标范围为[0..1]
,以映射到渐变填充的形状边界。 如果该标志为假,则在节点的本地坐标系中指定中心坐标和半径。- Default value:
- 真正
- 结果
- 如果中心和半径值成正比,则为真,否则为绝对值
-
getCycleMethod
public final CycleMethod getCycleMethod()
定义应用于RadialGradient
的循环方法。 一:CycleMethod.NO_CYCLE
,CycleMethod.REFLECT
,或CycleMethod.REPEAT
。- Default value:
- NO_CYCLE
- 结果
- 循环方法应用于该径向梯度
-
getStops
public final List<Stop> getStops()
2个或多个Stop
值的序列,用于指定如何沿梯度分布颜色。 这些值必须在0.0到1.0的范围内。 它们像渐变中的关键帧一样起作用:它们标示渐变应该是一个特定的颜色。序列中的每个停止位都必须具有大于序列中前一个停止位置的偏移量。
列表是不可修改的,每次修改尝试都会抛出
UnsupportedOperationException
。- Default value:
- 空
- 结果
- 停止值列表
-
isOpaque
public final boolean isOpaque()
获取此Paint是否完全不透明。 不透明的油漆是其任何颜色都没有阿尔法成分的油漆。 油漆可能是不透明的,但是如果不能容易地确定涂料是否实际上是不透明的,则返回假。 例如,ImagePattern可能无法廉价地确定其不透明度。
-
equals
public boolean equals(Object obj)
指示一些其他对象是否等于此。- 重写:
-
equals
在Object
- 参数
-
obj
- 与之比较的参考对象。 - 结果
-
true
如果此对象等于obj
参数; 否则为false
。 - 另请参见:
-
Object.hashCode()
,HashMap
-
hashCode
public int hashCode()
返回此RadialGradient
对象的哈希码。- 重写:
-
hashCode
在Object
- 结果
-
这个
RadialGradient
对象的哈希码。 - 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
toString
public String toString()
返回此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>]? ]
目前的长度只能用px来指定,单位的规格可以不理。 颜色表示的格式是
例子:Color.web(String color)
中使用的格式 。 径向渐变关键字可以被忽略。 有关字符串表示形式的其他信息,请参阅CSS Reference Guide 。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
对象,保存由string参数表示的值。 - 异常
-
NullPointerException
- 如果value
是null
-
IllegalArgumentException
- 如果value
无法解析 - 从以下版本开始:
- JavaFX 2.1
-
-