- java.lang.Object
-
- javafx.scene.effect.Effect
-
- javafx.scene.effect.DisplacementMap
-
public class DisplacementMap extends Effect
将每个像素移动由指定的FloatMap的前两个频带指定的距离的效果 。 对于输出中的每个像素,mapData的相应数据由scale和offset属性检索,缩放和偏移,再次按照源输入图像的大小进行缩放,并用作从目标像素的偏移量以检索像素数据从源输入。dst[x,y] = src[(x,y) + (offset+scale*map[x,y])*(srcw,srch)]值(0.0, 0.0)将不指定像素数据的偏移量,而(0.5, 0.5)的值将指定源图像大小的一半的偏移量。注意 ,映射是从目标像素到从其采样的源像素位置的偏移,这意味着用
0.5所有值填充地图将使图像的尺寸将朝向左上方移位一半,因为每个目的地像素将包含来自下面和右侧的源像素的数据。另请注意,此效果不会调整输入事件的坐标或任何在
Node上测量遏制的Node。 当Node具有DisplacementMap效果时,鼠标选择和遏制方法的结果未定义。例:
int width = 220; int height = 100; FloatMap floatMap = new FloatMap(); floatMap.setWidth(width); floatMap.setHeight(height); for (int i = 0; i < width; i++) { double v = (Math.sin(i / 20.0 * Math.PI) - 0.5) / 40.0; for (int j = 0; j < height; j++) { floatMap.setSamples(i, j, 0.0f, (float) v); } } DisplacementMap displacementMap = new DisplacementMap(); displacementMap.setMapData(floatMap); Text text = new Text(); text.setX(40.0); text.setY(80.0); text.setText("Wavy Text"); text.setFill(Color.web("0x3b596d")); text.setFont(Font.font(null, FontWeight.BOLD, 50)); text.setEffect(displacementMap);以上代码产生以下内容:

- 从以下版本开始:
- JavaFX 2.0
-
-
Property Summary
Properties Type Property 描述 ObjectProperty<Effect>input这个输入为Effect。ObjectProperty<FloatMap>mapData这个Effect的地图数据。DoublePropertyoffsetXFloatMap中的所有x坐标偏移值在被缩放之后被移位的偏移量。DoublePropertyoffsetYFloatMap中的所有y坐标偏移值在被缩放之后被偏移的位移。DoublePropertyscaleXFloatMap中所有x坐标偏移值的比例因子相乘。DoublePropertyscaleYFloatMap中所有y坐标偏移值的比例因子相乘。BooleanPropertywrap是否定义从地图边缘外部获取的值是否“绕回”。
-
构造方法摘要
构造方法 Constructor 描述 DisplacementMap()使用默认参数创建DisplacementMap的新实例。DisplacementMap(FloatMap mapData)使用指定的mapData创建DisplacementMap的新实例。DisplacementMap(FloatMap mapData, double offsetX, double offsetY, double scaleX, double scaleY)使用指定的mapData,offsetX,offsetY,scaleX和scaleY创建一个新的DisplacementMap实例。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 EffectgetInput()获取属性输入的值。FloatMapgetMapData()获取属性mapData的值。doublegetOffsetX()获取属性offsetX的值。doublegetOffsetY()获取属性offsetY的值。doublegetScaleX()获取属性scaleX的值。doublegetScaleY()获取属性scaleY的值。ObjectProperty<Effect>inputProperty()该输入为Effect。booleanisWrap()获取属性包装的值。ObjectProperty<FloatMap>mapDataProperty()这个Effect的地图数据。DoublePropertyoffsetXProperty()FloatMap中的所有x坐标偏移值在被缩放之后被偏移的位移。DoublePropertyoffsetYProperty()FloatMap中所有y坐标偏移值的偏移量在被缩放后都会移位。DoublePropertyscaleXProperty()FloatMap中所有x坐标偏移值的比例因子相乘。DoublePropertyscaleYProperty()FloatMap中所有y坐标偏移值的比例因子相乘。voidsetInput(Effect value)设置属性输入的值。voidsetMapData(FloatMap value)设置属性mapData的值。voidsetOffsetX(double value)设置属性offsetX的值。voidsetOffsetY(double value)设置属性offsetY的值。voidsetScaleX(double value)设置属性scaleX的值。voidsetScaleY(double value)设置属性scaleY的值。voidsetWrap(boolean value)设置属性包装的值。BooleanPropertywrapProperty()是否定义从地图边缘外部获取的值是否“绕回”。
-
-
-
Property Detail
-
input
public final ObjectProperty<Effect> inputProperty
该输入为Effect。 如果设置为null或未指定,Effect连接Effect的Node的图形图像作为输入。- Default value:
- 空值
- 另请参见:
-
getInput(),setInput(Effect)
-
mapData
public final ObjectProperty<FloatMap> mapDataProperty
这个Effect的地图数据。- Default value:
- 一张空地图
- 另请参见:
-
getMapData(),setMapData(FloatMap)
-
scaleX
public final DoubleProperty scaleXProperty
FloatMap中所有x坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0- Default value:
- 1.0
- 另请参见:
-
getScaleX(),setScaleX(double)
-
scaleY
public final DoubleProperty scaleYProperty
FloatMap中所有y坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0- Default value:
- 1.0
- 另请参见:
-
getScaleY(),setScaleY(double)
-
offsetX
public final DoubleProperty offsetXProperty
FloatMap中的所有x坐标偏移值在被缩放之后被偏移的位移。Min: n/a Max: n/a Default: 0.0 Identity: 0.0- Default value:
- 0.0
- 另请参见:
-
getOffsetX(),setOffsetX(double)
-
offsetY
public final DoubleProperty offsetYProperty
FloatMap中所有y坐标偏移值的偏移量在被缩放后都会移位。Min: n/a Max: n/a Default: 0.0 Identity: 0.0- Default value:
- 0.0
- 另请参见:
-
getOffsetY(),setOffsetY(double)
-
wrap
public final BooleanProperty wrapProperty
是否定义从地图边缘外部获取的值是否“绕回”。Min: n/a Max: n/a Default: false Identity: n/a- Default value:
- 假
- 另请参见:
-
isWrap(),setWrap(boolean)
-
-
构造方法详细信息
-
DisplacementMap
public DisplacementMap()
使用默认参数创建DisplacementMap的新实例。
-
DisplacementMap
public DisplacementMap(FloatMap mapData)
使用指定的mapData创建DisplacementMap的新实例。- 参数
-
mapData- 该位移图效果的地图数据 - 从以下版本开始:
- JavaFX 2.1
-
DisplacementMap
public DisplacementMap(FloatMap mapData, double offsetX, double offsetY, double scaleX, double scaleY)
使用指定的mapData,offsetX,offsetY,scaleX和scaleY创建一个新的DisplacementMap实例。- 参数
-
mapData- 该位移图效果的地图数据 -
offsetX-偏移量由所有的x在坐标偏移值FloatMap它们被缩放后移位 -
offsetY-所述通过其中所有的y坐标中的偏移值的偏移FloatMap位移它们被缩放后 -
scaleX-由所有的x在坐标偏移值的比例因子FloatMap相乘 -
scaleY-由这在所有y坐标,偏移值的比例因子FloatMap相乘 - 从以下版本开始:
- JavaFX 2.1
-
-
方法详细信息
-
setInput
public final void setInput(Effect value)
设置属性输入的值。- Property description:
-
该输入为
Effect。 如果设置为null或未指定,Effect连接Effect的Node的图形图像作为输入。 - Default value:
- 空值
-
getInput
public final Effect getInput()
获取属性输入的值。- Property description:
-
该输入为
Effect。 如果设置为null或未指定,则将使用连接Effect的Node的图形图像作为输入。 - Default value:
- 空值
-
inputProperty
public final ObjectProperty<Effect> inputProperty()
该输入为Effect。 如果设置为null或未指定,则将使用连接Effect的Node的图形图像作为输入。- Default value:
- 空值
- 另请参见:
-
getInput(),setInput(Effect)
-
setMapData
public final void setMapData(FloatMap value)
设置属性mapData的值。- Property description:
-
这个
Effect的地图数据。 - Default value:
- 一张空地图
-
getMapData
public final FloatMap getMapData()
获取属性mapData的值。- Property description:
-
这个
Effect的地图数据。 - Default value:
- 一张空地图
-
mapDataProperty
public final ObjectProperty<FloatMap> mapDataProperty()
该地图数据为Effect。- Default value:
- 一张空地图
- 另请参见:
-
getMapData(),setMapData(FloatMap)
-
setScaleX
public final void setScaleX(double value)
设置属性scaleX的值。- Property description:
-
FloatMap中所有x坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0 - Default value:
- 1.0
-
getScaleX
public final double getScaleX()
获取属性scaleX的值。- Property description:
-
FloatMap中所有x坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0 - Default value:
- 1.0
-
scaleXProperty
public final DoubleProperty scaleXProperty()
FloatMap中所有x坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0- Default value:
- 1.0
- 另请参见:
-
getScaleX(),setScaleX(double)
-
setScaleY
public final void setScaleY(double value)
设置属性scaleY的值。- Property description:
-
FloatMap中所有y坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0 - Default value:
- 1.0
-
getScaleY
public final double getScaleY()
获取属性scaleY的值。- Property description:
-
FloatMap中所有y坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0 - Default value:
- 1.0
-
scaleYProperty
public final DoubleProperty scaleYProperty()
FloatMap中所有y坐标偏移值的比例因子相乘。Min: n/a Max: n/a Default: 1.0 Identity: 1.0- Default value:
- 1.0
- 另请参见:
-
getScaleY(),setScaleY(double)
-
setOffsetX
public final void setOffsetX(double value)
设置属性offsetX的值。- Property description:
-
FloatMap中的所有x坐标偏移值在被缩放之后被偏移的位移。Min: n/a Max: n/a Default: 0.0 Identity: 0.0 - Default value:
- 0.0
-
getOffsetX
public final double getOffsetX()
获取属性offsetX的值。- Property description:
-
FloatMap中的所有x坐标偏移值在被缩放之后被偏移的位移。Min: n/a Max: n/a Default: 0.0 Identity: 0.0 - Default value:
- 0.0
-
offsetXProperty
public final DoubleProperty offsetXProperty()
FloatMap中的所有x坐标偏移值在被缩放之后被偏移的位移。Min: n/a Max: n/a Default: 0.0 Identity: 0.0- Default value:
- 0.0
- 另请参见:
-
getOffsetX(),setOffsetX(double)
-
setOffsetY
public final void setOffsetY(double value)
设置属性offsetY的值。- Property description:
-
FloatMap中所有y坐标偏移值的偏移量在被缩放后都会移位。Min: n/a Max: n/a Default: 0.0 Identity: 0.0 - Default value:
- 0.0
-
getOffsetY
public final double getOffsetY()
获取属性offsetY的值。- Property description:
-
FloatMap中所有y坐标偏移值的偏移量在被缩放后都会移位。Min: n/a Max: n/a Default: 0.0 Identity: 0.0 - Default value:
- 0.0
-
offsetYProperty
public final DoubleProperty offsetYProperty()
FloatMap中的所有y坐标偏移值的偏移在它们被缩放之后被移位。Min: n/a Max: n/a Default: 0.0 Identity: 0.0- Default value:
- 0.0
- 另请参见:
-
getOffsetY(),setOffsetY(double)
-
setWrap
public final void setWrap(boolean value)
设置属性包装的值。- Property description:
-
是否定义从地图边缘外部获取的值是否“绕回”。
Min: n/a Max: n/a Default: false Identity: n/a - Default value:
- 假
-
isWrap
public final boolean isWrap()
获取属性包装的值。- Property description:
-
是否定义从地图边缘外部获取的值是否“绕回”。
Min: n/a Max: n/a Default: false Identity: n/a - Default value:
- 假
-
wrapProperty
public final BooleanProperty wrapProperty()
是否定义从地图边缘外部获取的值是否“绕回”。Min: n/a Max: n/a Default: false Identity: n/a- Default value:
- 假
- 另请参见:
-
isWrap(),setWrap(boolean)
-
-