待到秋来九月八,我花开后百花杀。

男儿行,当暴戾。事与仁,两不立。 男儿当杀人,杀人不留情。 千秋不朽业,尽在杀人中。 昔有豪男儿,义气重然诺。 睚眦即杀人,身比鸿毛轻。 又有雄与霸,杀人乱如麻, 驰骋走天下,只将刀枪夸。...

javax Animation Example

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package colorfulcircles;

import static java.lang.Math.random;
import javafx.animation.KeyFrame;
import javafx.animation.KeyValue;
import javafx.animation.Timeline;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.effect.BlendMode;
import javafx.scene.effect.BoxBlur;
import javafx.scene.paint.Color;
import javafx.scene.paint.CycleMethod;
import javafx.scene.paint.LinearGradient;
import javafx.scene.paint.Stop;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Rectangle;
import javafx.scene.shape.StrokeType;
import javafx.stage.Stage;
import javafx.util.Duration;

/**
 *
 * @author L
 */
public class ColorfulCircles extends Application {

    @Override
    public void start(Stage primaryStage) {
        Group root = new Group();
        Scene scene = new Scene(root, 800, 600, Color.BLACK);
        primaryStage.setScene(scene);
        Group circles = new Group();
        for (int i = 0; i < 30; i++) {
            Circle circle = new Circle(150, Color.web("white", 0.05));
            circle.setStrokeType(StrokeType.OUTSIDE);
            circle.setStroke(Color.web("white", 0.16));
            circle.setStrokeWidth(4);
            circles.getChildren().add(circle);
        }
        circles.setEffect(new BoxBlur(10, 10, 3));
        //
        Rectangle colors = new Rectangle(scene.getWidth(), scene.getHeight(), new LinearGradient(0f, 1f, 1f, 0f, true, CycleMethod.NO_CYCLE, new Stop[]{
            new Stop(0, Color.web("#f8bd55")),
            new Stop(0.14, Color.web("#c0fe56")),
            new Stop(0.28, Color.web("#5dfbc1")),
            new Stop(0.42, Color.web("#64c2f8")),
            new Stop(0.56, Color.web("#be4af7")),
            new Stop(0.70, Color.web("#ed5fc2")),
            new Stop(0.84, Color.web("#ef504c")),
            new Stop(0.98, Color.web("#f2660f"))
        }));
        colors.widthProperty().bind(scene.widthProperty());
        colors.heightProperty().bind(scene.heightProperty());

        //
        Group blendModeGroup = new Group(new Group(new Rectangle(scene.getWidth(), scene.getHeight(), Color.BLACK), circles), colors);
        colors.setBlendMode(BlendMode.OVERLAY);

        //添加时间线
        Timeline timeline = new Timeline();
        circles.getChildren().stream().forEach((circle) -> {
            timeline.getKeyFrames().addAll(
                    new KeyFrame(Duration.ZERO,
                            new KeyValue(circle.translateXProperty(), random() * 800),
                            new KeyValue(circle.translateYProperty(), random() * 600)),
                    new KeyFrame(new Duration(40000),
                            new KeyValue(circle.translateXProperty(), random() * 800),
                            new KeyValue(circle.translateYProperty(), random() * 600)));
        });
        // play 40s of animation
        timeline.play();
        root.getChildren().add(blendModeGroup);
//        root.getChildren().add(colors);
//        root.getChildren().add(circles);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

这里写图片描述

阅读更多
文章标签: animation javafx
个人分类: java fxml javafx-jdk
上一篇javafx fxml form javascript css Example
下一篇解决virtualbox只能安装32bit的问题
想对作者说点什么? 我来说一句

java和javax的区别

2018年02月10日 17KB 下载

javax.servlet.jar下载

2013年10月17日 121KB 下载

javax.servlet源码包含http和jsp包

2011年10月28日 338KB 下载

javax.zip javax.jar 下载

2008年10月20日 87KB 下载

hibernate-jpa-2.0-api-1.0.0-CR-1.jar

2011年03月29日 99KB 下载

CommAPI.CHM

2014年01月02日 81KB 下载

没有更多推荐了,返回首页

关闭
关闭