package javafx8_animation; import javafx.animation.RotateTransition; import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.input.MouseEvent; import javafx.scene.paint.Color; import javafx.scene.paint.CycleMethod; import javafx.scene.paint.LinearGradient; import javafx.scene.paint.Stop; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; import javafx.util.Duration; /** * * @web java-buddy.blogspot.com */ public class JavaFX8_Animation extends Application { @Override public void start(Stage primaryStage) { Group root = new Group(); Scene scene = new Scene(root, 500, 500, Color.BLACK); scene.setFill(Color.WHITE); //Rectangle with LinearGradient background Stop[] stops = new Stop[] { new Stop(0, Color.BLACK), new Stop(1, Color.RED)}; LinearGradient linearGradient = new LinearGradient(0, 0, 1, 0, true, CycleMethod.NO_CYCLE, stops); Rectangle rect1 = new Rectangle(60, 60, 350, 300); rect1.setFill(linearGradient); rect1.setStroke(Color.RED); rect1.setStrokeWidth(10); RotateTransition rotateTransition1 = new RotateTransition(Duration.millis(2000), rect1); rotateTransition1.setByAngle(360); rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> { rotateTransition1.play(); }); //Rectangle with LinearGradient Transparence background Stop[] stopsTransparence = new Stop[] { new Stop(0, Color.color(0.0, 1.0, 1.0 ,1.0)), new Stop(1, Color.color(0.0, 1.0, 1.0 ,0.0))}; LinearGradient linearGradientTransparence = new LinearGradient(0, 0, 1, 0, true, CycleMethod.NO_CYCLE, stopsTransparence); Rectangle rect2 = new Rectangle(100, 200, 250, 250); rect2.setFill(linearGradientTransparence); rect2.setStroke(Color.BLUE); rect2.setStrokeWidth(10); RotateTransition rotateTransition2 = new RotateTransition(Duration.millis(2000), rect2); rotateTransition2.setByAngle(360); rotateTransition2.setCycleCount(2); rotateTransition2.setAutoReverse(true); rect2.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> { rotateTransition2.play(); }); root.getChildren().addAll(rect1, rect2); primaryStage.setTitle("java-buddy.blogspot.com"); primaryStage.setScene(scene); primaryStage.show(); } /** * @param args the command line arguments */ public static void main(String[] args) { launch(args); } }
Monday, May 19, 2014
JavaFX 8 RotateTransition
Example of JavaFX 8 RotateTransition:
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment