当前位置:首页 > 电子 > 正文内容

LVGL chart控件删除曲线上的点

admin1年前 (2022-12-28)电子2317

修改lv_chart.c 文件

找到函数 draw_series_line

static void draw_series_line(lv_obj_t * obj, lv_draw_ctx_t * draw_ctx)
{
    ... 此处省略一堆代码
                    if(ser->y_points[p_prev] != LV_CHART_POINT_NONE && ser->y_points[p_act] != LV_CHART_POINT_NONE) {
                        lv_draw_line(draw_ctx, &line_dsc_default, &p1, &p2);
                    }
                   //注释掉下面的
                    // if(point_w && point_h && ser->y_points[p_prev] != LV_CHART_POINT_NONE) {
                    //     lv_draw_rect(draw_ctx, &point_dsc_default, &point_area);
                    // }
                    lv_event_send(obj, LV_EVENT_DRAW_PART_END, &part_draw_dsc);
                }
            }
            p_prev = p_act;
        }
        /*Draw the last point*/
        if(!crowded_mode && i == chart->point_cnt) {
            if(ser->y_points[p_act] != LV_CHART_POINT_NONE) {
                lv_area_t point_area;
                point_area.x1 = p2.x - point_w;
                point_area.x2 = p2.x + point_w;
                point_area.y1 = p2.y - point_h;
                point_area.y2 = p2.y + point_h;
                part_draw_dsc.id = i - 1;
                part_draw_dsc.p1 = NULL;
                part_draw_dsc.p2 = NULL;
                part_draw_dsc.draw_area = &point_area;
                part_draw_dsc.value = ser->y_points[p_act];
                lv_event_send(obj, LV_EVENT_DRAW_PART_BEGIN, &part_draw_dsc);
                //注释掉下面的
                //lv_draw_rect(draw_ctx, &point_dsc_default, &point_area);
                lv_event_send(obj, LV_EVENT_DRAW_PART_END, &part_draw_dsc);
            }
        }
    }
    draw_ctx->clip_area = clip_area_ori;
}
 

扫描二维码推送至手机访问。

版权声明:本文由视觉博客发布,如需转载请注明出处。

本文链接:http://cqroom.cn/post/136.html

“LVGL chart控件删除曲线上的点” 的相关文章

STM32 中断向量表的位置 、重定向

STM32 中断向量表的位置 、重定向

这篇文章已经说了STM32的启动过程: http://cqroom.cn/post/39.html 我们也知道怎么跳到main函数了,那么,中断发生后,又是怎么跑到中断入口地址的呢? 从stm32f10x.s可以看到,已经定义好了一大堆的中断响...

SmartLink原理

SmartLink原理

智能家居/家电现阶段还处于普及阶段,由于家庭wifi网络的普及,目前普遍采用wifi与路由器完成连接,与手机/云端进行数据交互. 智能硬件,如智能插座,智能空调,智能空气净化器由于不具备人机交互界面,不能像电脑一样的搜索/选择指定路由器,输入连接密码的界面,所以必须先解决正确连接路...

ESP8266发送HTTP请求GET请求POST请求

ESP8266发送HTTP请求GET请求POST请求

一、ESP8266简介   ESP8266 是深圳安信可科技有限公司开发的基于乐鑫ESP8266的超低功耗的UART-WIFI模块的模组,可以方便进行二次元开发,接入云端服务,实现手机3/4G全球随时随地的控制,加速产品原型设计。  &em...

linux系统 硬盘自动挂载 自动格式化 脚本

mkdir /data1 mkdir /data2 mkdir /data3 mkdir /data4  mkfs.xfs /dev/sdb1 echo "/dev/sdb...

电源模块中隔离电压3000VDC有什么用?

电源模块中隔离电压3000VDC有什么用?

随着嵌入式行业的快速发展,在各种行业应用中电源要求也越来越高,为保证系统的稳定性,隔离电源应运而生。但隔离电源中关键指标——隔离电压指的是什么?与爬电距离有什么关系?本文将从隔离电源的原理为你揭晓。 微电子行业的高速发展,产品使用场合的电磁环境也越来越复杂,产品的稳定性也受到很大的...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。