Есть ли способ сделать анимацию насыщенности изображения в javafx? - PullRequest
2 голосов
/ 07 ноября 2019

Например, у меня есть что-то вроде этого

ImageView img = new ImageView();
img.setImage(new Image("someimg.png"));
ColorAdjust ca = new ColorAdjust();
ca.setSaturation(0.5);
img.setEffect(ca)

Я хочу, чтобы насыщенность плавно увеличивалась с течением времени. Есть ли способ сделать это, например, с помощью объекта Timeline?

1 Ответ

3 голосов
/ 07 ноября 2019

Я нашел решение

    ImageView img = new ImageView();
    img.setImage(new Image("someimg.png"));

    ColorAdjust ca = new ColorAdjust();
    img.setEffect(ca);

    Timeline t = new Timeline(
            new KeyFrame(Duration.ZERO, new KeyValue(ca.saturationProperty(), -1.0)),
            new KeyFrame(Duration.seconds(5), new KeyValue(ca.saturationProperty(), 1.0))
    );

    t.play();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...