- Сцена (любая удобная вам реализация
QGraphicsView/Widgetи т.д.)- На сцене должен быть объект или объекты, которые будут анимироваться.
- Не важно, что вы будете анимировать и какие параметры. Хотя бы один объект с одним параметром.
- Минимальный набор функций плавности (easing functions)
- Linear
- EaseInSine / EaseInSine / EaseInOutSine
- EaseInQuad / EaseOutQuad / EaseInOutQuad
- EaseInCirc / EaseOutCirc / EaseInOutCirc
- EaseInElastic / EaseOutElastic / EaseInOutElastic
- Список функций плавности должен содержать визуальное отображение кривой. Можно реализовать любым удобным вам способом. К примеру, известным уже вам
QPainterили рассмотренным в примереQChart. Для этого, возможно, поможет пример из Pacman, где так же менялось визуальное представление виджета фигур (пулл фигур).
- При выборе / смене функции плавности, анимированный объект должен менять свое поведение в соответствии с выбранной функцией.
- Анимация включается либо сама, при смене выбранной функции плавности, либо по нажатию кнопки "Анимировать".