Skip to content
Snippets Groups Projects
Commit 898345ca authored by SAYEH Nahlane ghina's avatar SAYEH Nahlane ghina
Browse files

modification de ShapeContainer

creation de AbstractShape
creation de Polygon,BorderDecorator et CenterDecorator
parent b8dc2b1f
Branches master
No related tags found
No related merge requests found
......@@ -7,34 +7,44 @@ import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.paint.Color;
import javafx.scene.paint.Paint;
import javafx.stage.Stage;
public class App extends Application {
public static void main(String[] args) {
launch(args);
launch(args); // Lance l'application JavaFX
}
@Override
public void start(Stage primaryStage) {
// Créer un groupe racine pour contenir le Canvas
Group root = new Group();
Canvas canvas = new Canvas(130, 110);
// Créer un canvas sur lequel on va dessiner
Canvas canvas = new Canvas(300, 300);
GraphicsContext graphicsContext = canvas.getGraphicsContext2D();
// Créer un ShapeContainer pour stocker les formes
ShapeContainer shapeContainer = new ShapeContainer();
graphicsContext.setFill(Color.AQUAMARINE);
graphicsContext.fillOval(10,10,10,10);
shapeContainer.add(new Rectangle(Color.BLUE,new Point2D(10,10), new Point2D(40,40)));
shapeContainer.draw(graphicsContext);
root.getChildren().add(canvas);
primaryStage.setScene(new Scene(root));
primaryStage.show();
}
// Ajouter des formes et appliquer des décorateurs
Shape polygon = new Polygon(Color.BLUE, new Point2D(50, 50), new Point2D(100, 50), new Point2D(75, 100));
Shape decoratedPolygon = new BorderDecorator(polygon, 10); // Ajouter une bordure au polygone
Shape centerDecoratedPolygon = new CenterDecorator(decoratedPolygon, 5); // Ajouter un cercle au centre
// Ajouter la forme décorée au conteneur
shapeContainer.add(centerDecoratedPolygon);
// Dessiner toutes les formes dans le GraphicsContext
shapeContainer.draw(graphicsContext);
// Ajouter le canvas au groupe racine
root.getChildren().add(canvas);
}
\ No newline at end of file
// Créer une scène et l'ajouter à la fenêtre principale
Scene scene = new Scene(root, 300, 300);
primaryStage.setScene(scene);
primaryStage.setTitle("Dessin de Formes avec Décorateurs");
primaryStage.show(); // Afficher la fenêtre
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment