全液晶仪表2D虚拟指针绘制方法与流程

文档序号:20621051发布日期:2020-05-06 20:49阅读:538来源:国知局

本发明属于全液晶仪表2d虚拟指针绘制领域。



背景技术:

全液晶仪表2d指针的实现大致有两种方式。

一种是纯图片法,即用制作好的2d指针图片代表指针,这种方法实现比较简单,缺点是图片内容本身不变的,即设计的时候是什么样,在汽车仪表中表现的就是什么样,当车速等数值不变时,指针实际上是静态的,基本是对传统机械表指针的模拟,无法发挥出全液晶仪表的优势。

另一种是纯绘制法,这种做法采用代码编写,即:通过代码编写相应的函数,代码运行在gpu中,具有更高的灵活性。但是完全用代码实现指针的绘制,绘制所需的算法往往十分复杂,不容易实现,有很大难度,且计算量较大。

综上,两种虚拟指针绘制方法存在的缺陷亟需解决。



技术实现要素:

本发明是为了解决传统的指针绘制方法所使用的绘制算法编写复杂、及虚拟指针样式是静态的,无法动态表现的问题,本发明提供了一种全液晶仪表2d虚拟指针绘制方法。

全液晶仪表2d虚拟指针绘制方法,该绘制方法是基于汽车仪表中的cpu、gpu和flash模块实现,其中,gpu包括控制器和n个着色器模块;

flash模块中存储有m个指针样式图片和一个指针颜色动态变化函数,m个指针样式图片均不相同,且每一个指针样式图片对应一种指针样式,m≥3;

每个指针样式图片上的所有素点的位置与汽车仪表显示器上的所有像素点的位置一一对应;

该绘制方法包括如下过程:

步骤一、汽车仪表的cpu,用于接收主题更换指令,并根据接收到的主题更换指令,从flash模块中调用相应的指针样式图片,并提取所调用的指针样式图片中每个像素点的颜色值、及每个像素点所对应位置,并将提取出的指针样式图片中每个像素点的颜色值、及每个像素点所对应位置加载至gpu中的任意一个着色器模块;

汽车仪表的cpu,还用于根据接收到的主题更换指令,向gpu中的控制器发送函数调用指令;

步骤二、gpu中的控制器根据接收的函数调用指令,从flash模块中调用指针颜色动态变化函数,并将调用的指针颜色动态变化函数加载在步骤一中的着色器模块中;

利用着色器模块中的指针颜色动态变化函数,对着色器模块中的所有像素点的颜色值进行动态变化,并将每个像素点动态变化后的颜色值及该像素点所对应的位置,发至汽车仪表的显示器,从而完成对全液晶仪表虚拟指针样式的绘制。

优选的是,着色器模块包括片段着色器和顶点着色器;

片段着色器,用于加载调用的指针颜色动态变化函数,还用于加载所提取出的指针样式图片中每个像素点的颜色值,并利用指针颜色动态变化函数对所提取出的指针样式图片中每个像素点的颜色值进行动态变化,并将动态变化后的每个像素点的颜色值及该像素点所对应的位置,发至汽车仪表的显示器;

顶点着色器,用于存储从指针样式图片中提取出每个像素点的位置,并将每个像素点所对应的位置,发送至汽车仪表的显示器。

优选的是,所述指针颜色动态变化函数为正弦函数、指数函数、幂函数、多项式及上述多个的组合。

本发明带来的有益效果是,利用着色器模块中的指针颜色动态变化函数,对着色器模块中的所有像素点的颜色值进行动态变化,从而实现每个像素点的颜色随时间变化,只要指针的样式固定,则通过改变该样式下的随时间变化的每个像素点的颜色值,使显示器上指针的显示颜色随时间动态变化,使指针颜色显示丰富多彩,充满动感,指针即有静态部分,又有动态部分,即容易实现,又有较强的表现力。

本发明是在2d贴图基础上应用函数绘制动态部分,实现了指针的动态变化,整个绘制过程简单。

具体实施方式

下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

本实施方式所述的全液晶仪表2d虚拟指针绘制方法,

该绘制方法是基于汽车仪表中的cpu、gpu和flash模块实现,其中,gpu包括控制器和n个着色器模块;

flash模块中存储有m个指针样式图片和一个指针颜色动态变化函数,m个指针样式图片均不相同,且每一个指针样式图片对应一种指针样式,m≥3;

每个指针样式图片上的所有素点的位置与汽车仪表显示器上的所有像素点的位置一一对应;

该绘制方法包括如下过程:

步骤一、汽车仪表的cpu,用于接收主题更换指令,并根据接收到的主题更换指令,从flash模块中调用相应的指针样式图片,并提取所调用的指针样式图片中每个像素点的颜色值、及每个像素点所对应位置,并将提取出的指针样式图片中每个像素点的颜色值、及每个像素点所对应位置加载至gpu中的任意一个着色器模块;

汽车仪表的cpu,还用于根据接收到的主题更换指令,向gpu中的控制器发送函数调用指令;

步骤二、gpu中的控制器根据接收的函数调用指令,从flash模块中调用指针颜色动态变化函数,并将调用的指针颜色动态变化函数加载在步骤一中的着色器模块中;

利用着色器模块中的指针颜色动态变化函数,对着色器模块中的所有像素点的颜色值进行动态变化,并将每个像素点动态变化后的颜色值及该像素点所对应的位置,发至汽车仪表的显示器,从而完成对全液晶仪表虚拟指针样式的绘制。

本实施方式中,gpu为图像处理器,flash模块为汽车仪表的闪存。

本发明利用着色器模块中的指针颜色动态变化函数,对着色器模块中的所有像素点的颜色值进行动态变化,从而实现每个像素点的颜色随时间变化,只要指针的样式固定,则通过改变该样式下的随时间变化的每个像素点的颜色值,使显示器上指针的显示颜色随时间动态变化,使指针显示丰富多彩,充满动感,指针即有静态部分,又有动态部分,即容易实现,又有较强的表现力。

本发明是在纯2d贴图基础上应用函数绘制动态部分,实现了指针的动态变化,整个绘制过程简单。

进一步的,着色器模块包括片段着色器和顶点着色器;

片段着色器,用于加载调用的指针颜色动态变化函数,还用于加载所提取出的指针样式图片中每个像素点的颜色值,并利用指针颜色动态变化函数对所提取出的指针样式图片中每个像素点的颜色值进行动态变化,并将动态变化后的每个像素点的颜色值及该像素点所对应的位置,发至汽车仪表的显示器;

顶点着色器,用于存储从指针样式图片中提取出每个像素点的位置,并将每个像素点所对应的位置,发送至汽车仪表的显示器。

进一步的,所述指针颜色动态变化函数为正弦函数、指数函数、幂函数、多项式及上述多个的组合。例如,当所述指针颜色动态变化函数为正弦函数时,则每个像素点的颜色值能随着时间而周期性变化,体现在汽车仪表显示器上,则显示器上显示的指针做从亮到暗再到亮的周期渐变,使指针在同一个样式下,颜色进行动态变化,使指针显示丰富多彩,充满动感。

虽然在本文中参照了特定的实施方式来描述本发明,但是应该理解的是,这些实施例仅仅是本发明的原理和应用的示例。因此应该理解的是,可以对示例性的实施例进行许多修改,并且可以设计出其它的布置,只要不偏离所附权利要求所限定的本发明的精神和范围。应该理解的是,可以通过不同于原始权利要求所描述的方式来结合不同的从属权利要求和本文中所述的特征。还可以理解的是,结合单独实施例所描述的特征可以使用在其它所述实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1