通常, 可以将动画定义为创建对象运动神话的过渡。它是在指定的持续时间内顺序应用到对象上的一组转换, 以便可以将对象显示为处于运动状态。
这可以通过快速显示帧来完成。在JavaFX中, 包javafx.animation包含将动画应用到节点上的所有类。该程序包的所有类都扩展了javafx.animation.Animation类。
JavaFX为过渡提供了类, 例如RotateTransition, ScaleTransition, TranslateTransition, FadeTransition, FillTransition, StrokeTransition等。
基本过渡
包javafx.animation提供了用于执行以下转换的类。
序号 | 过渡 | 描述 |
---|---|---|
1 | Rotate Transition | 沿轴之一在指定的持续时间内旋转节点。 |
2 | Scale Transition | 在指定的持续时间内对节点的缩放进行动画处理。 |
3 | 翻译过渡 | 在指定的持续时间内将节点从一个位置转换到另一位置。 |
4 | 渐隐过渡 | 对节点的不透明度进行动画处理。它会在指定的持续时间内不断更新节点的不透明度, 以达到目标不透明度值 |
5 | Fill Transition | 对节点的填充颜色进行动画处理, 以使节点的填充颜色在指定的持续时间内在两个颜色值之间波动。 |
6 | Stroke Transition | 对节点的笔触颜色进行动画处理, 以使节点的笔触颜色在指定的持续时间内在两个颜色值之间波动。 |
7 | 按顺序在节点上执行转换列表。 | |
8 | Parallel Transition | 在节点上并行执行转换列表。 |
9 | Path Transition | 在指定的持续时间内沿指定路径移动节点。 |
应用动画的步骤
创建目标节点并配置其属性。
Rectangle rect = new Rectangle(120, 100, 100, 100);
rect.setFill(Color.RED);
实例化相应的过渡类
RotateTransition rotate = new RotateTransition();
为过渡设置所需的属性, 例如持续时间, 周期数等。
rotate.setDuration(Duration.millis(1000));
rotate.setAxis(Rotate.Y_Axis);
rotate.setCycleCount(500);
设置将在其上应用过渡的目标节点。为此, 请使用以下方法。
rotate.setNode(rect);
最后, 使用play()方法播放过渡。
rotate.play();
评论前必须登录!
注册