一种指针式虚拟仪表盘的实现方法

文档序号:3887488阅读:344来源:国知局
一种指针式虚拟仪表盘的实现方法
【专利摘要】本发明公开了一种指针式虚拟仪表盘的实现方法,包括:建立一份设备上下文;加载表盘背景;复制两份内存上下文,表盘背景作为画布;加载表针图片;获取表针图像大小;设置表针旋转中心;表针旋转α角度后,以一个坐标为旋转中心,以step距离进行栅格化处理;获取每个小矩形坐标;在一个内存上下文中绘制旋转α角度的表针;将上述内存上下文中相应位置图像复制到设备上下文上进行显示;当角度α发生变化后,在上述内存上下文中重新绘制表针;按照角度α变化前矩形坐标,用另外一个内存上下文中相应背景图像擦除设备上下文上的上一次表针显示内容;按照角度α变化后的矩形坐标,将内存上下文中相应位置图像复制到设备上下文上进行显示。
【专利说明】一种指针式虚拟仪表盘的实现方法

【技术领域】
[0001] 本发明属于机动车辆仪表盘【技术领域】,具体涉及一种指针式虚拟仪表盘的实现方 法。

【背景技术】
[0002] 目前,最常见的仪表盘大多数采用动圈或动磁式模拟仪表、步进电机式数字仪表 方式进行信息显示,而随着计算机和液晶显示技术进一步发展,一些设备开始逐步采用液 晶屏进行人机交互,由此仪表盘也变得越来越漂亮,功能越来越多,从实用开始走向时尚、 炫目,最终完成实用与时尚的完美结合。
[0003] 为了不改变操作者的使用习惯,虽然很多设备的仪表盘逐渐升级为液晶屏显示, 但是像发动机转速、车速等参数还要在液晶屏上模拟真实仪表进行显示,这种需求给产品 的实现带来很多问题:
[0004] 首先,表针转动时,需要模拟模拟仪表加、减速等惯性环节,显示要连续,不能一步 一步跳动;
[0005] 其次,刷新频率要高,一般要达到毫秒级,由于刷新速度快,背景重绘时容易造成 屏幕闪烁。
[0006] 针对以上问题,很多厂家采用双缓冲技术消除仪表显示画面的闪烁问题,效果并 不理想,采用双缓冲的方式,只解决了后台图形绘制、复杂图形计算等效率,但是不能够提 高从缓存中读取的速度,随着屏幕和分辨率逐步变大,显示的虚拟仪表数量变多,闪烁的问 题就变得十分明显。由于嵌入式设备资源比较有限,有些厂家牺牲硬件成本解决软件问题, 造成成本增大。


【发明内容】

[0007] 本发明要解决的技术问题是设计一种具有如下功能的指针式虚拟仪表盘的实现 方法:将特定区域分割成若干个小方框,背景重绘时只需要刷新通过计算获得的方框即可, 减少刷新面积,可以解决虚拟表盘在实时刷新过程中闪烁问题,提高表盘显示效果和硬件 使用效率,降低硬件成本。
[0008] 为解决上述技术问题,本发明采用的技术方案为:
[0009] -种指针式虚拟仪表盘的实现方法,包括如下步骤:
[0010] 步骤101、建立一份设备上下文DC ;
[0011] 步骤102、加载表盘背景,并在设备上下文DC上进行显示;
[0012] 步骤103、复制两份内存上下文MEMDCUMEMDC2,表盘背景作为画布;
[0013] 步骤104、加载表针图片;
[0014] 步骤105、获取表针图像大小,宽度w,长度1,此时表针可以表示成长为1,宽为w 的矩形;
[0015] 步骤106、设置表针旋转中心(XtlJ0);
[0016] 步骤107、表针旋转α角度后,以坐标(X。,YQ)为旋转中心,以st印距离进行栅格 化处理;
[0017] 步骤108、通过几何计算,获取每个小矩形坐标;
[0018] 步骤109、在内存上下文MEMDCl中绘制旋转α角度的表针;
[0019] 步骤110、按照步骤108获得的矩形坐标,将内存上下文MEMDCl中相应位置图像复 制到设备上下文DC上进行显示;
[0020] 步骤111、当角度α发生变化后,在内存上下文MEMDCl中重新绘制表针,并通过几 何计算得到新的矩形坐标;
[0021] 步骤112、按照角度α变化前矩形坐标,用内存上下文MEMDC2中相应背景图像擦 除设备上下文DC上的上一次表针显示内容,保持背景不变;
[0022] 步骤113、按照角度α变化后的矩形坐标,将MEMDCl中相应位置图像复制到设备 上下文DC上进行显示;
[0023] 步骤114、如果角度α发生变化,则重复步骤111?113。
[0024] 进一步:上述步骤108的具体计算过程如下:
[0025] 步骤1、已知表针图像大小,即宽度w和长度1,旋转角度α,步长st印;
[0026] 步骤2、根据旋转角度α,可知直线斜率k = tan(a)
[0027] 步骤3.将系统坐标平移至表针旋转中心(H)可得到求中线函数
[0028] y' = k*x'
[0029] 其中:x'为平移坐标系中的横坐标,y'为平移坐标系中的纵坐标
[0030] 步骤4、当0彡α彡45时,根据图片宽度w,可以求出另外表针矩形框的两条长边 平行线函数方程:

【权利要求】
1. 一种指针式虚拟仪表盘的实现方法,其特征在于,包括如下步骤: 步骤101、建立一份设备上下文DC ; 步骤102、加载表盘背景,并在设备上下文DC上进行显示; 步骤103、复制两份内存上下文MEMDCUMEMDC2,表盘背景作为画布; 步骤104、加载表针图片; 步骤105、获取表针图像大小,宽度w,长度1,此时表针可以表示成长为1,宽为w的矩 形; 步骤106、设置表针旋转中心(H); 步骤107、表针旋转a角度后,以坐标(\,I)为旋转中心,以step距离进行栅格化处 理; 步骤108、通过几何计算,获取每个小矩形坐标; 步骤109、在内存上下文MEMDC1中绘制旋转a角度的表针; 步骤110、按照步骤108获得的矩形坐标,将内存上下文MEMDC1中相应位置图像复制到 设备上下文DC上进行显示; 步骤111、当角度a发生变化后,在内存上下文MEMDC1中重新绘制表针,并通过几何计 算得到新的矩形坐标; 步骤112、按照角度a变化前矩形坐标,用内存上下文MEMDC2中相应背景图像擦除设 备上下文DC上的上一次表针显示内容,保持背景不变; 步骤113、按照角度a变化后的矩形坐标,将MEMDC1中相应位置图像复制到设备上下 文DC上进行显示; 步骤114、如果角度a发生变化,则重复步骤111?113。
【文档编号】B60K35/00GK104385920SQ201410536038
【公开日】2015年3月4日 申请日期:2014年10月11日 优先权日:2014年10月11日
【发明者】李玉河, 高阳 申请人:天津工程机械研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1