powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JavaFX - как ускорить анимацию?
7 сообщений из 7, страница 1 из 1
JavaFX - как ускорить анимацию?
    #38997929
MAULER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую.

Попробовал вот этот пример.
Всё получилось, но как бы ускорить эффект анимации? Есть ли возможность не прибегая к геометрии через свойства добавить скорости?
...
Рейтинг: 0 / 0
JavaFX - как ускорить анимацию?
    #38997935
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAULER,

Что такое геометрия через свойства? Duration же отвечает за продолжительно анимации, нет?
...
Рейтинг: 0 / 0
JavaFX - как ускорить анимацию?
    #38997949
MAULER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Да, Duration, но как я понял там в методе

new KeyFrame(Duration.ZERO, - задается начало отсчета, а в
new KeyFrame(new Duration(40000), - говорится что 40 сек. эффект будет длится.

Но как бы мне ускорить саму анимации, а то уж она слишком медленная.

Если не сложно, подскажите куда воткнуть этот Duration ?
...
Рейтинг: 0 / 0
JavaFX - как ускорить анимацию?
    #38998561
MAULER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот фрагмент кода. Он рабочий.
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
        Group root = new Group();        
        Scene scene = new Scene(root, 800, 600, Color.GREEN);        
        primaryStage.setScene(scene);
        
        Circle circle = new Circle(150, Color.web("white", 0.09));
        circle.setStrokeType(StrokeType.OUTSIDE);
        circle.setStroke(Color.web("white", 0.16));
        circle.setStrokeWidth(5);            
        root.getChildren().add(circle);
                                
        Timeline timeline = new Timeline();                
        
        KeyValue kvX = new KeyValue(circle.translateXProperty(), 800);
        KeyValue kvY = new KeyValue(circle.translateYProperty(), 600);       
        KeyFrame kf = new KeyFrame(Duration.seconds(5), kvX, kvY);
        
        timeline.getKeyFrames().addAll(kf);
        
        timeline.play();
        primaryStage.show();



Мне не понятно, что заставляет окружность передвигаться из верхнего левого угла в нижний правый? Ведь я не наращиваю координаты X и Y.
...
Рейтинг: 0 / 0
JavaFX - как ускорить анимацию?
    #38998573
DoSOfRedRiver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAULER,

Наверное, circle.translateXProperty()

https://docs.oracle.com/javafx/2/api/javafx/scene/Node.html A translation transformation is one which shifts the origin of the node's coordinate space along either the x or y axis. For example, if you create a Rectangle which is drawn at the origin (x=0, y=0) and has a width of 100 and a height of 50, and then apply a Translate with a shift of 10 along the x axis (x=10), then the rectangle will appear drawn at (x=10, y=0) and remain 100 points wide and 50 tall. Note that the origin was shifted, not the x variable of the rectangle.

A common node transform is a translation by an integer distance, most often used to lay out nodes on the stage. Such integer translations maintain the device pixel mapping so that local coordinates that are integers still map to the cracks between pixels.
...
Рейтинг: 0 / 0
JavaFX - как ускорить анимацию?
    #38998582
MAULER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это понятно! Спасибо.
Но как задавать
Translate with a shift of 10

сам сдвиг? Точнее шаг в 10 точек или какой то другой?
...
Рейтинг: 0 / 0
JavaFX - как ускорить анимацию?
    #38999379
DoSOfRedRiver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAULER,

Вообще, для изменения скорости анимации, как я понимаю, сущесвует rate
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JavaFX - как ускорить анимацию?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]