Skip to content
Snippets Groups Projects
Select Git revision
  • 1f421f65a480307eacae4a3acc5a51d3533697f9
  • master default protected
2 results

App.java

Blame
  • Forked from COUETOUX Basile / graphic-2020
    Source project has a limited visibility.
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    App.java 1.39 KiB
    package shape;
    
    import javafx.application.Application;
    import javafx.geometry.Point2D;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.scene.canvas.Canvas;
    import javafx.scene.canvas.GraphicsContext;
    import javafx.scene.paint.Color;
    import javafx.stage.Stage;
    
    public class App extends Application {
    
        public static void main(String[] args) {
            launch(args);
        }
    
        @Override
        public void start(Stage primaryStage) {
            Group root = new Group();
            Canvas canvas = new Canvas(300, 300); 
            GraphicsContext graphicsContext = canvas.getGraphicsContext2D();
    
            ShapeContainer shapeContainer = new ShapeContainer();
    
            Shape rect = new Rectangle(Color.GRAY, new Point2D(150, 150), new Point2D(250, 250));
            Shape decoratedRect = new BorderDecorator(new CenterDecorator(rect, 5, Color.RED), 5, Color.BLUE);
            shapeContainer.addShape(decoratedRect);
    
            Shape triangle = new Polygon(Color.GRAY,
                    new Point2D(100, 50),
                    new Point2D(150, 150),
                    new Point2D(50, 150));
            Shape decoratedTriangle = new BorderDecorator(new CenterDecorator(triangle, 5, Color.RED), 5, Color.BLUE);
            shapeContainer.addShape(decoratedTriangle);
    
            shapeContainer.draw(graphicsContext);
    
            root.getChildren().add(canvas);
            primaryStage.setScene(new Scene(root));
            primaryStage.show();
        }
    }