Module  javafx.graphics
软件包  javafx.scene.effect

Class PerspectiveTransform



  • public class PerspectiveTransform
    extends Effect
    提供输入内容的非仿射变换的效果。 最通常的是PerspectiveTransform用于为其他二维内容提供“人造”三维效果。

    透视变换能够将任意四边形映射到另一个任意四边形,同时保持线的平直度。 与仿射变换不同,源中的线的并行性不一定在输出中保留。

    请注意,此效果不会调整输入事件的坐标或任何在Node上测量遏制的Node Node具有PerspectiveTransform效果时,鼠标选择和遏制方法的结果未定义。

    例:

       PerspectiveTransform perspectiveTrasform = new PerspectiveTransform(); perspectiveTrasform.setUlx(10.0); perspectiveTrasform.setUly(10.0); perspectiveTrasform.setUrx(310.0); perspectiveTrasform.setUry(40.0); perspectiveTrasform.setLrx(310.0); perspectiveTrasform.setLry(60.0); perspectiveTrasform.setLlx(10.0); perspectiveTrasform.setLly(90.0); Group g = new Group(); g.setEffect(perspectiveTrasform); g.setCache(true); Rectangle rect = new Rectangle(); rect.setX(10.0); rect.setY(10.0); rect.setWidth(280.0); rect.setHeight(80.0); rect.setFill(Color.web("0x3b596d")); Text text = new Text(); text.setX(20.0); text.setY(65.0); text.setText("Perspective"); text.setFill(Color.ALICEBLUE); text.setFont(Font.font(null, FontWeight.BOLD, 36)); g.getChildren().addAll(rect, text);  

    以上代码产生以下内容:

    PerspectiveTransform对文本的视觉效果

    从以下版本开始:
    JavaFX 2.0
    • 构造方法详细信息

      • PerspectiveTransform

        public PerspectiveTransform​()
        使用默认参数创建PerspectiveTransform的新实例。
      • PerspectiveTransform

        public PerspectiveTransform​(double ulx,
                                    double uly,
                                    double urx,
                                    double ury,
                                    double lrx,
                                    double lry,
                                    double llx,
                                    double lly)
        用指定的ulx,uly,urx,ury,lrx,lry,llx和lly创建一个PerspectiveTransform的新实例。
        参数
        ulx - 左上角的x坐标
        uly - 左上角的y坐标
        urx - 右上角的x坐标
        ury - 右上角的y坐标
        lrx - 右下角的x坐标
        lry - 右下角的y坐标
        llx - 左下角的x坐标
        lly - 左下角的y坐标
        从以下版本开始:
        JavaFX 2.1
    • 方法详细信息

      • setInput

        public final void setInput​(Effect value)
        设置属性输入的值。
        Property description:
        该输入为Effect 如果设置为null或未指定, Effect连接EffectNode的图形图像作为输入。
        Default value:
        空值
      • getInput

        public final Effect getInput​()
        获取属性输入的值。
        Property description:
        这个输入为Effect 如果设置为null或未指定,则连接EffectNode的图形图像将用作输入。
        Default value:
        空值
      • inputProperty

        public final ObjectProperty<Effect> inputProperty​()
        这个输入为Effect 如果设置为null或未指定, Effect连接EffectNode的图形图像用作输入。
        Default value:
        空值
        另请参见:
        getInput()setInput(Effect)
      • setUlx

        public final void setUlx​(double value)
        设置属性ulx的值。
        Property description:
        源的左上角映射到的输出位置的x坐标。
        Default value:
        0.0
      • getUlx

        public final double getUlx​()
        获取属性ulx的值。
        Property description:
        源的左上角映射到的输出位置的x坐标。
        Default value:
        0.0
      • setUly

        public final void setUly​(double value)
        设置属性uly的值。
        Property description:
        源的左上角映射到的输出位置的y坐标。
        Default value:
        0.0
      • getUly

        public final double getUly​()
        获取属性的值。
        Property description:
        源的左上角映射到的输出位置的y坐标。
        Default value:
        0.0
      • setUrx

        public final void setUrx​(double value)
        设置属性urx的值。
        Property description:
        源映射到其右上角的输出位置的x坐标。
        Default value:
        0.0
      • getUrx

        public final double getUrx​()
        获取属性urx的值。
        Property description:
        源映射到其右上角的输出位置的x坐标。
        Default value:
        0.0
      • setUry

        public final void setUry​(double value)
        设置属性的值。
        Property description:
        映射源的右上角的输出位置的y坐标。
        Default value:
        0.0
      • getUry

        public final double getUry​()
        获取财产的价值。
        Property description:
        映射源的右上角的输出位置的y坐标。
        Default value:
        0.0
      • setLrx

        public final void setLrx​(double value)
        设置属性lrx的值。
        Property description:
        源映射到其右下角的输出位置的x坐标。
        Default value:
        0.0
      • getLrx

        public final double getLrx​()
        获取属性lrx的值。
        Property description:
        源映射到其右下角的输出位置的x坐标。
        Default value:
        0.0
      • setLry

        public final void setLry​(double value)
        设置属性lry的值。
        Property description:
        映射源的右下角的输出位置的y坐标。
        Default value:
        0.0
      • getLry

        public final double getLry​()
        获取属性lry的值。
        Property description:
        映射源的右下角的输出位置的y坐标。
        Default value:
        0.0
      • setLlx

        public final void setLlx​(double value)
        设置属性llx的值。
        Property description:
        源的左下角映射到的输出位置的x坐标。
        Default value:
        0.0
      • getLlx

        public final double getLlx​()
        获取属性llx的值。
        Property description:
        源的左下角映射到的输出位置的x坐标。
        Default value:
        0.0
      • setLly

        public final void setLly​(double value)
        设置属性lly的值。
        Property description:
        源的左下角映射到的输出位置的y坐标。
        Default value:
        0.0
      • getLly

        public final double getLly​()
        获取属性lly的值。
        Property description:
        源的左下角映射到的输出位置的y坐标。
        Default value:
        0.0