Javafx получает цвет холста - PullRequest
0 голосов
/ 18 июня 2020

Итак, я использую это, чтобы рисовать на холсте

@Override
public void start(Stage primaryStage) throws Exception{
    Screen screen = Screen.getPrimary();
    bounds = screen.getVisualBounds();
    root = new VBox();
    c = new Canvas(bounds.getMaxX(), bounds.getMaxY());
    gc = c.getGraphicsContext2D();
    root.getChildren().add(c);

    primaryStage.setTitle("Test");
    scene = new Scene(root, bounds.getMaxX(), bounds.getMaxY());
    primaryStage.setScene(scene);
    primaryStage.show();
    gc.setFill(Color.BLACK);
    gc.fillRect(0,0,bounds.getMaxX(), bounds.getMaxY());
    levelController.createLevel(gc, bounds);
    playerController.start();
}

Я пытался использовать эти два метода, чтобы получить Цветовой код определенных c координат, но он не работает, кто-нибудь знает решение?

Image image = Main.root.getBackground().getImages().get(0).getImage();
    PixelReader r = image.getPixelReader();
    Color argb = r.getColor((int)player.getPosition_X(), (int)player.getPosition_Y());
    System.out.println(argb);

    WritableImage snap = Main.gc.getCanvas().snapshot(null, null);
    int test = snap.getPixelReader().getArgb((int)player.getPosition_X(), (int)player.getPosition_Y());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...