个性化阅读
专注于IT技术分析

JavaFX缩放过渡

本文概述

JavaFX规模过渡

此过渡通过X, Y和Z三个方向中的任意一个或全部, 通过指定因子对指定持续时间内节点的缩放进行动画处理。

在JavaFX中, ScaleTransition由类javafx.animation.ScaleTransition表示。我们需要实例化此类以生成适当的比例转换。

物产

下表描述了类的属性及其设置方法。

属性 描述 设置方法
byX 这是一个双精度类型的属性。它代表增加的止损X因子值。 setByX(double value)
byY 这是一个双精度类型的属性。它代表增加的止损Y因子值。 setByY(double value)
byZ 这是一个双精度类型的属性。它代表增量的停止Z因子值。 setByZ(double value)
duration 这是Duration类的对象类型属性。它代表刻度过渡的持续时间。 setDuration(Duration value)
fromX 这是一个双精度类型的属性。它代表ScaleTransition的起始X值。 setFromX(double value)
fromY 这是一个双精度类型的属性。它表示ScaleTransition的起始Y值。 setFromY(double value)
fromZ 这是一个双精度类型的属性。它代表ScaleTransition的起始Z值。 setFromZ(double value)
node 这是Node类的对象类型属性。它表示在其上应用比例转换。 setNode(Node node)
toX 这是一个双精度类型的属性。它代表刻度转换的停止X刻度值。 setToX(double value)
toY 这是一个双精度类型的属性。它表示比例转换的停止Y比例值。 setToY(double value)
toZ 这是一个双精度类型的属性。它代表刻度过渡的停止Z刻度值。 setToZ(double value)

建设者

该类中有三个构造函数。

  1. public TranslateTransition():使用默认参数创建TranslateTransition的新实例。
  2. public TranslateTransition(Duration duration):使用指定的持续时间创建TranslateTransition的新实例。
  3. public TranslateTransition(Duration duration, Node node):使用指定的持续时间和节点创建Translate Transition的新实例。

在下面的示例中, 我们制作了一个圆, 将自己在X方向平移400。

package application;
import javafx.animation.TranslateTransition;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;
import javafx.util.Duration;
public class Translate_Transition extends Application{

    @Override
    public void start(Stage primaryStage) throws Exception {
        // TODO Auto-generated method stub
        //Creating the circle 
        Circle cir = new Circle(50, 100, 50);
        
        //setting color and stroke of the cirlce
        cir.setFill(Color.RED);
        cir.setStroke(Color.BLACK);
        
        //Instantiating TranslateTransition class 
        TranslateTransition translate = new TranslateTransition();
        
        //shifting the X coordinate of the centre of the circle by 400 
        translate.setByX(400);
        
        //setting the duration for the Translate transition 
        translate.setDuration(Duration.millis(1000));
        
        //setting cycle count for the Translate transition 
        translate.setCycleCount(500);
        
        //the transition will set to be auto reversed by setting this to true 
        translate.setAutoReverse(true);
        
        //setting Circle as the node onto which the transition will be applied
        translate.setNode(cir);
        
        //playing the transition 
        translate.play();
        
        //Configuring Group and Scene 
        Group root = new Group();
        root.getChildren().addAll(cir);
        Scene scene = new Scene(root, 500, 200, Color.WHEAT);
        primaryStage.setScene(scene);
        primaryStage.setTitle("Translate Transition example");
        primaryStage.show();
        
    }
    public static void main(String[] args) {
        launch(args);
    }

}

输出:

JavaFX缩放过渡
赞(0)
未经允许不得转载:srcmini » JavaFX缩放过渡

相关推荐

评论 抢沙发

评论前必须登录!