Select Git revision
CardinalDirection.java
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
App.java 1.28 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 {
@Override
public void start(Stage primaryStage) {
Drawer drawer = new Drawer(400, 400);
Circle circle = new Circle(200, 200, 50);
Rectangle rectangle = new Rectangle(100, 100, 150, 100);
drawer.add(circle);
drawer.add(rectangle);
drawer.repaint();
drawer.getCanvas().setOnMouseClicked(event -> {
double mouseX = event.getX();
double mouseY = event.getY();
Shape clickedShape = drawer.shapeContaining(mouseX, mouseY);
if (clickedShape != null) {
System.out.println("Shape clicked: " + clickedShape);
}
});
Group root = new Group();
root.getChildren().add(drawer.getCanvas());
Scene scene = new Scene(root, 400, 400);
primaryStage.setTitle("JavaFX Drawer");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}