zoukankan      html  css  js  c++  java
  • <19> MTK10A 修改模拟时钟表盘、表针的显示模式

    1. 表盘图片修改位置:

         plutommi\Customer\Images\PLUTO_SLIM128X128\MAINLCD\IdleScreen\Wallpaper\analog.jpg (gif,bmp)

    2. 表针的显示模式 gui_clock.c 中

    目前已知的表针模式有三种:   一种是 三角形的plogn 表针, 一种是 直线型表针, 另一种没做研究。 程序里面用

    #if  GUI_CLOCK_ANALOG_CLOCK_DRAW_POLYGON_HANDS 

    #elif  GUI_CLOCK_ANALOG_CLOCK_SMOOTHEN_LINES 

    #else

    #endif

    来分别绘制这三种模式

    在gui_clock.c 文件的开头define 了如下定义    

    #define GUI_CLOCK_ANALOG_CLOCK_DRAW_POLYGON_HANDS 1    //plogn 模式
    #define GUI_CLOCK_ANALOG_CLOCK_SMOOTHEN_LINES 0         //线型表针

    3. plogn 模式中的表针的宽度与长度。

    在函数 static void gui_clock_analog_clock_draw_hand(gui_clock_struct *clock,S32 type, S32 minute)  中有如下代码

    /* offset to (0,0) */
    polygon_vertex analog_clock_hour_hand_vertices[] =  //此处定义了时针的宽度
    {
    {-5, 0},
    {+5, 0},
    {0, 0},
    };

    /* offset to (0,0) */
    polygon_vertex analog_clock_minute_hand_vertices[] =  //此处定义了分针的宽度
    {
    {-3, 0},
    {+3, 0},
    {0, 0},
    };

    .........

    {   //此段代码用来定义表针的长度。 其中,变量 radius 是存储长度系数的变量,调整此值可改变表针长度
    x1 = g_gui_clock_analog_clock_center_x;
    y1 = g_gui_clock_analog_clock_center_y;
    radius = min(
    g_gui_clock_analog_clock_center_x - g_gui_clock_analog_clock_dial_x,
    g_gui_clock_analog_clock_center_y - g_gui_clock_analog_clock_dial_y) - 1 + 15;
    }

  • 相关阅读:
    根据进程id pid 查容器id
    jenkins 持续集成笔记1 --- 安装配置
    PMM 监控 MySQL 使用钉钉告警
    PMM 监控 MySQL
    docker HealthCheck健康检查
    顶层const和底层const
    Windows下使用VS2017搭建FLTK开发环境
    解决FAT32格式U盘安装win10时0x8007000D错误
    在VS中为C/C++源代码文件生成对应的汇编代码文件(.asm)
    VS2017设置主题和代码字体
  • 原文地址:https://www.cnblogs.com/sierllen/p/2564957.html
Copyright © 2011-2022 走看看