acid-drop

- Hacking the planet from a LilyGo T-Deck using custom firmware
git clone git://git.acid.vegas/acid-drop.git
Log | Files | Refs | Archive | README | LICENSE

lv_example_img_3.c (1036B)

      1 #include "../../lv_examples.h"
      2 #if LV_USE_IMG && LV_BUILD_EXAMPLES
      3 
      4 static void set_angle(void * img, int32_t v)
      5 {
      6     lv_img_set_angle(img, v);
      7 }
      8 
      9 static void set_zoom(void * img, int32_t v)
     10 {
     11     lv_img_set_zoom(img, v);
     12 }
     13 
     14 
     15 /**
     16  * Show transformations (zoom and rotation) using a pivot point.
     17  */
     18 void lv_example_img_3(void)
     19 {
     20     LV_IMG_DECLARE(img_cogwheel_argb);
     21 
     22     /*Now create the actual image*/
     23     lv_obj_t * img = lv_img_create(lv_scr_act());
     24     lv_img_set_src(img, &img_cogwheel_argb);
     25     lv_obj_align(img, LV_ALIGN_CENTER, 50, 50);
     26     lv_img_set_pivot(img, 0, 0);    /*Rotate around the top left corner*/
     27 
     28     lv_anim_t a;
     29     lv_anim_init(&a);
     30     lv_anim_set_var(&a, img);
     31     lv_anim_set_exec_cb(&a, set_angle);
     32     lv_anim_set_values(&a, 0, 3600);
     33     lv_anim_set_time(&a, 5000);
     34     lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE);
     35     lv_anim_start(&a);
     36 
     37     lv_anim_set_exec_cb(&a, set_zoom);
     38     lv_anim_set_values(&a, 128, 256);
     39     lv_anim_set_playback_time(&a, 3000);
     40     lv_anim_start(&a);
     41 }
     42 
     43 #endif