Showing posts with label javafx.animation. Show all posts
Showing posts with label javafx.animation. Show all posts

Monday, May 26, 2014

JavaFX 8 ParallelTransition and SequentialTransition

ParallelTransition and SequentialTransition plays a list of Animations in parallel and in sequential order.


package javafx8_animation;
import javafx.animation.FadeTransition;
import javafx.animation.FillTransition;
import javafx.animation.ParallelTransition;
import javafx.animation.PathTransition;
import javafx.animation.PathTransition.OrientationType;
import javafx.animation.RotateTransition;
import javafx.animation.ScaleTransition;
import javafx.animation.SequentialTransition;
import javafx.animation.StrokeTransition;
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.ArcTo;
import javafx.scene.shape.ClosePath;
import javafx.scene.shape.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
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, 350, Color.BLACK);
 scene.setFill(Color.WHITE);
 
 Rectangle rect1 = new Rectangle(50, 50, 50, 50);
 rect1.setFill(Color.BLUEVIOLET);
 rect1.setStroke(Color.RED);
 rect1.setStrokeWidth(3);
 
 Path path1 = new Path();
 path1.getElements().add (new MoveTo (75f, 75f));
 path1.getElements().add (new LineTo (75f, 175f));
 path1.getElements().add (new LineTo (175f, 175f));
 path1.getElements().add (new LineTo (175f, 75f));
 path1.getElements().add(new ClosePath());
 
 PathTransition pathTransition1 = new PathTransition();
 pathTransition1.setDuration(Duration.millis(4000));
 pathTransition1.setPath(path1);
 pathTransition1.setOrientation(OrientationType.ORTHOGONAL_TO_TANGENT);
 pathTransition1.setCycleCount(2);
 pathTransition1.setAutoReverse(true);
 
 StrokeTransition strokeTransition1 = 
 new StrokeTransition(
 Duration.millis(1000), 
 Color.RED, 
 Color.BLUEVIOLET);
 strokeTransition1.setCycleCount(8);
 strokeTransition1.setAutoReverse(true);
 
 ScaleTransition scaleTransition1 = 
 new ScaleTransition(Duration.millis(2000));
 scaleTransition1.setByX(1.0f);
 scaleTransition1.setByY(1.0f);
 scaleTransition1.setCycleCount(6);
 scaleTransition1.setAutoReverse(true);
 
 ParallelTransition parallelTransition1 = 
 new ParallelTransition (
 rect1, 
 pathTransition1, 
 strokeTransition1, 
 scaleTransition1);
 rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 parallelTransition1.play();
 });
 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(150, 150, 50, 50);
 rect2.setFill(linearGradientTransparence);
 rect2.setStroke(Color.BLUE);
 rect2.setStrokeWidth(3);
 
 MoveTo moveTo = new MoveTo();
 moveTo.setX(175f);
 moveTo.setY(175f);
 
 ArcTo arcTo = new ArcTo();
 arcTo.setX(375f);
 arcTo.setY(175f);
 arcTo.setRadiusX(100f);
 arcTo.setRadiusY(50f);
 
 Path path2 = new Path();
 path2.getElements().add (moveTo);
 path2.getElements().add (arcTo);
 PathTransition pathTransition2 = new PathTransition();
 pathTransition2.setDuration(Duration.millis(2000));
 pathTransition2.setNode(rect2);
 pathTransition2.setPath(path2);
 pathTransition2.setOrientation(OrientationType.ORTHOGONAL_TO_TANGENT);
 pathTransition2.setCycleCount(2);
 pathTransition2.setAutoReverse(true);
 
 FillTransition fillTransition2 = 
 new FillTransition(Duration.millis(2000), 
 Color.BLUEVIOLET, 
 Color.YELLOW);
 fillTransition2.setCycleCount(2);
 fillTransition2.setAutoReverse(true);
 
 FadeTransition fadeTransition2 
 = new FadeTransition(Duration.millis(2000));
 fadeTransition2.setFromValue(1.0);
 fadeTransition2.setToValue(0.0);
 fadeTransition2.setCycleCount(2);
 fadeTransition2.setAutoReverse(true);
 
 RotateTransition rotateTransition2 = 
 new RotateTransition(Duration.millis(2000));
 rotateTransition2.setByAngle(360);
 rotateTransition2.setCycleCount(2);
 rotateTransition2.setAutoReverse(true);
 
 SequentialTransition sequentialTransition2 = 
 new SequentialTransition (
 rect2, 
 pathTransition2, 
 fillTransition2, 
 fadeTransition2,
 rotateTransition2);
 rect2.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 sequentialTransition2.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);
 }
 
}

Friday, May 23, 2014

JavaFX 8 PathTransition


package javafx8_animation;
import javafx.animation.PathTransition;
import javafx.animation.PathTransition.OrientationType;
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.ArcTo;
import javafx.scene.shape.ClosePath;
import javafx.scene.shape.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
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, 350, Color.BLACK);
 scene.setFill(Color.WHITE);
 
 Rectangle rect1 = new Rectangle(50, 50, 50, 50);
 rect1.setFill(Color.BLUEVIOLET);
 rect1.setStroke(Color.RED);
 rect1.setStrokeWidth(3);
 
 Path path1 = new Path();
 path1.getElements().add (new MoveTo (75f, 75f));
 path1.getElements().add (new LineTo (75f, 175f));
 path1.getElements().add (new LineTo (175f, 175f));
 path1.getElements().add (new LineTo (175f, 75f));
 path1.getElements().add(new ClosePath());
 
 PathTransition pathTransition1 = new PathTransition();
 pathTransition1.setDuration(Duration.millis(4000));
 pathTransition1.setNode(rect1);
 pathTransition1.setPath(path1);
 pathTransition1.setOrientation(OrientationType.ORTHOGONAL_TO_TANGENT);
 pathTransition1.setCycleCount(2);
 pathTransition1.setAutoReverse(true);
 rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 pathTransition1.play();
 });
 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(150, 150, 50, 50);
 rect2.setFill(linearGradientTransparence);
 rect2.setStroke(Color.BLUE);
 rect2.setStrokeWidth(3);
 
 MoveTo moveTo = new MoveTo();
 moveTo.setX(175f);
 moveTo.setY(175f);
 
 ArcTo arcTo = new ArcTo();
 arcTo.setX(375f);
 arcTo.setY(175f);
 arcTo.setRadiusX(100f);
 arcTo.setRadiusY(50f);
 
 Path path2 = new Path();
 path2.getElements().add (moveTo);
 path2.getElements().add (arcTo);
 PathTransition pathTransition2 = new PathTransition();
 pathTransition2.setDuration(Duration.millis(4000));
 pathTransition2.setNode(rect2);
 pathTransition2.setPath(path2);
 pathTransition2.setOrientation(OrientationType.ORTHOGONAL_TO_TANGENT);
 pathTransition2.setCycleCount(2);
 pathTransition2.setAutoReverse(true);
 rect2.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 pathTransition2.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);
 }
 
}

Thursday, May 22, 2014

JavaFX 8 StrokeTransition


package javafx8_animation;
import javafx.animation.StrokeTransition;
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, 350, Color.BLACK);
 scene.setFill(Color.WHITE);
 
 Rectangle rect1 = new Rectangle(60, 30, 350, 200);
 rect1.setFill(Color.BLUEVIOLET);
 rect1.setStroke(Color.RED);
 rect1.setStrokeWidth(10);
 
 StrokeTransition strokeTransition1 = 
 new StrokeTransition(
 Duration.millis(2000), 
 rect1, 
 Color.RED, 
 Color.BLUEVIOLET);
 strokeTransition1.setCycleCount(2);
 strokeTransition1.setAutoReverse(true);
 rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 strokeTransition1.play();
 });
 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, 100, 250, 200);
 rect2.setFill(linearGradientTransparence);
 rect2.setStroke(Color.BLUE);
 rect2.setStrokeWidth(10);
 
 StrokeTransition strokeTransition2 = 
 new StrokeTransition(
 Duration.millis(2000), 
 rect2, 
 Color.BLUE, 
 Color.CORAL);
 strokeTransition2.setCycleCount(2);
 strokeTransition2.setAutoReverse(true);
 rect2.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 strokeTransition2.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);
 }
 
}


Wednesday, May 21, 2014

JavaFX 8 TranslateTransition

Example of JavaFX animation of TranslateTransition:


package javafx8_animation;
import javafx.animation.TranslateTransition;
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, 350, Color.BLACK);
 scene.setFill(Color.WHITE);
 
 Rectangle rect1 = new Rectangle(60, 30, 350, 200);
 rect1.setFill(Color.BLUEVIOLET);
 rect1.setStroke(Color.RED);
 rect1.setStrokeWidth(10);
 
 TranslateTransition translateTransition1 = new TranslateTransition(Duration.millis(500), rect1);
 translateTransition1.setByX(40);
 translateTransition1.setByY(70);
 translateTransition1.setCycleCount(2);
 translateTransition1.setAutoReverse(true);
 rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 translateTransition1.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, 100, 250, 200);
 rect2.setFill(linearGradientTransparence);
 rect2.setStroke(Color.BLUE);
 rect2.setStrokeWidth(10);
 
 TranslateTransition translateTransition2 = new TranslateTransition(Duration.millis(500), rect2);
 translateTransition2.setByX(-40);
 translateTransition2.setByY(-70);
 translateTransition2.setCycleCount(2);
 translateTransition2.setAutoReverse(true);
 rect2.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 translateTransition2.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);
 }
 
}

JavaFX 8 ScaleTransition

ScaleTransition example:


package javafx8_animation;
import javafx.animation.FillTransition;
import javafx.animation.ScaleTransition;
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, 350, Color.BLACK);
 scene.setFill(Color.WHITE);
 
 Rectangle rect1 = new Rectangle(60, 30, 350, 200);
 rect1.setFill(Color.BLUEVIOLET);
 rect1.setStroke(Color.RED);
 rect1.setStrokeWidth(10);
 
 ScaleTransition scaleTransition1 = new ScaleTransition(Duration.millis(500), rect1);
 scaleTransition1.setByX(0.1f);
 scaleTransition1.setByY(0.1f);
 scaleTransition1.setCycleCount(4);
 scaleTransition1.setAutoReverse(true);
 
 rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 scaleTransition1.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, 100, 250, 200);
 rect2.setFill(linearGradientTransparence);
 rect2.setStroke(Color.BLUE);
 rect2.setStrokeWidth(10);
 
 ScaleTransition scaleTransition2 = new ScaleTransition(Duration.millis(500), rect2);
 scaleTransition2.setByX(-0.1f);
 scaleTransition2.setByY(-0.1f);
 scaleTransition2.setCycleCount(4);
 scaleTransition2.setAutoReverse(true);
 
 rect2.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 scaleTransition2.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);
 }
 
}

Tuesday, May 20, 2014

JavaFX 8 FillTransition



package javafx8_animation;
import javafx.animation.FillTransition;
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, 350, Color.BLACK);
 scene.setFill(Color.WHITE);
 
 Rectangle rect1 = new Rectangle(60, 30, 350, 200);
 rect1.setFill(Color.BLUEVIOLET);
 rect1.setStroke(Color.RED);
 rect1.setStrokeWidth(10);
 FillTransition fillTransition = 
 new FillTransition(Duration.millis(5000), 
 rect1, 
 Color.BLUEVIOLET, 
 Color.YELLOW);
 fillTransition.setCycleCount(2);
 fillTransition.setAutoReverse(true);
 
 rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 fillTransition.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, 100, 250, 200);
 rect2.setFill(linearGradientTransparence);
 rect2.setStroke(Color.BLUE);
 rect2.setStrokeWidth(10);
 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);
 }
 
}

JavaFX 8 FadeTransition

JavaFX 8 example to implement RotateTransition:



package javafx8_animation;
import javafx.animation.FadeTransition;
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);
 FadeTransition fadeTransition1 = new FadeTransition(Duration.millis(2000), rect1);
 fadeTransition1.setFromValue(1.0);
 fadeTransition1.setToValue(0.3);
 
 rect1.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 fadeTransition1.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);
 
 FadeTransition fadeTransition2 = new FadeTransition(Duration.millis(2000), rect2);
 fadeTransition2.setFromValue(1.0);
 fadeTransition2.setToValue(0.0);
 fadeTransition2.setCycleCount(2);
 fadeTransition2.setAutoReverse(true);
 
 rect2.addEventHandler(MouseEvent.MOUSE_CLICKED, (MouseEvent event) -> {
 fadeTransition2.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:


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);
 }
 
}


Subscribe to: Comments (Atom)

AltStyle によって変換されたページ (->オリジナル) /