You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.0 KiB
C
44 lines
1.0 KiB
C
#include "../../lv_examples.h"
|
|
#if LV_USE_IMG && LV_BUILD_EXAMPLES
|
|
|
|
static void set_angle(void * img, int32_t v)
|
|
{
|
|
lv_img_set_angle(img, v);
|
|
}
|
|
|
|
static void set_zoom(void * img, int32_t v)
|
|
{
|
|
lv_img_set_zoom(img, v);
|
|
}
|
|
|
|
|
|
/**
|
|
* Show transformations (zoom and rotation) using a pivot point.
|
|
*/
|
|
void lv_example_img_3(void)
|
|
{
|
|
LV_IMG_DECLARE(img_cogwheel_argb);
|
|
|
|
/*Now create the actual image*/
|
|
lv_obj_t * img = lv_img_create(lv_scr_act());
|
|
lv_img_set_src(img, &img_cogwheel_argb);
|
|
lv_obj_align(img, LV_ALIGN_CENTER, 50, 50);
|
|
lv_img_set_pivot(img, 0, 0); /*Rotate around the top left corner*/
|
|
|
|
lv_anim_t a;
|
|
lv_anim_init(&a);
|
|
lv_anim_set_var(&a, img);
|
|
lv_anim_set_exec_cb(&a, set_angle);
|
|
lv_anim_set_values(&a, 0, 3600);
|
|
lv_anim_set_time(&a, 5000);
|
|
lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE);
|
|
lv_anim_start(&a);
|
|
|
|
lv_anim_set_exec_cb(&a, set_zoom);
|
|
lv_anim_set_values(&a, 128, 256);
|
|
lv_anim_set_playback_time(&a, 3000);
|
|
lv_anim_start(&a);
|
|
}
|
|
|
|
#endif
|