Je dois créer une application JavaFX qui génère un chemin sous la forme d'un symbole infini, puis créer un rectangle qui se déplacera sur ce chemin. Jusqu'à présent, je sais créer un cercle et un carré et avec transitionPath pour déplacer ce rectangle, mais comment créer une forme d'infini? Je suis très frais dans JavaFX (et dans le développement aussi bien) donc s'il vous plaît ne soyez pas dur :)JavaFX: Dessiner un symbole infini et avancer
Voici mon code avec la forme Cercle:
import javafx.animation.PathTransition;
import javafx.animation.Timeline;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;
import javafx.util.Duration;
public class PathTransitionDemo extends Application {
@Override
public void start(Stage primaryStage) {
Pane pane = new Pane();
Rectangle rectangle = new Rectangle (0, 0, 25, 50);
rectangle.setFill(Color.ORANGE);
Circle circle = new Circle(125, 100, 50);
circle.setFill(Color.WHITE);
circle.setStroke(Color.BLACK);
pane.getChildren().add(circle);
pane.getChildren().add(rectangle);
PathTransition pt = new PathTransition();
pt.setDuration(Duration.millis(4000));
pt.setPath(circle);
pt.setNode(rectangle);
pt.setOrientation(
PathTransition.OrientationType.ORTHOGONAL_TO_TANGENT);
pt.setCycleCount(Timeline.INDEFINITE);
pt.setAutoReverse(true);
pt.play();
circle.setOnMousePressed(e -> pt.pause());
circle.setOnMouseReleased(e -> pt.play());
Scene scene = new Scene(pane, 250, 200);
primaryStage.setTitle("PathTransitionDemo"); // Unos nayiva pozornice e
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Je regardais partout pour quelque soupçon, mais sans chance :(
Jean-Baptiste Yunès merci beaucoup d'avoir aidé ces jeunes passionnés! Il fonctionne comme un charme :) –