掌桥专利:专业的专利平台
掌桥专利
首页

一种指针式仪表盘显示方法、装置、显示设备和存储介质

文献发布时间:2024-04-18 20:02:40


一种指针式仪表盘显示方法、装置、显示设备和存储介质

技术领域

本发明涉及仪表显示技术领域,特别是一种指针式仪表盘显示方法、装置、显示设备和存储介质。

背景技术

随着科技的进步,车载仪表盘已经采用液晶显示,支持用户的个性化需求。随着用户的需求越来越高,显示器的分辨率也越来越高,在面临多界面、动画复杂的仪表界面时,就需要申请较大的VRAM(视频随机存取存储器,Video Random Access Memory),这就对显示驱动芯片提出了较高的要求,如果采用规格较高的芯片,那么成本会相应提升,如果采用规格较低的芯片,那么可能无法满足仪表界面的显示需求,显示质量差。

发明内容

本发明实施例要解决的技术问题在于,提供一种指针式仪表盘显示方法、装置、显示设备和存储介质,以解决现有技术中制造成本高和显示质量差的问题。

本发明公开了一种指针式仪表盘显示方法,包括:

获取待显示图像,将所述待显示图像分为动态显示层和静态显示层,所述动态显示层包括指针显示层,所述静态显示层包括仪表盘显示层;

基于所述待显示图像申请内存空间;

针对所述动态显示层和所述静态显示层中的各个图层创建对应的图层表面对象和图层窗口,并将对应的所述图层表面对象和所述图层窗口绑定,其中,所述图层窗口包括指针窗口和仪表盘窗口,所述图层表面对象包括指针表面对象和仪表盘表面对象;

基于所述动态显示层在所述内存空间中划分出动态空间,所述动态空间用于作为所述动态显示层的位块传输缓冲区;

创建所述指针显示层对应的指针上下文对象,将所述指针上下文对象与所述指针表面对象绑定,设定所述指针窗口的交换间隙和旋转中心位值矩阵,当所述指针显示层旋转时根据所述旋转中心位置矩阵移动所述指针窗口使得指针显示层的旋转中心位于仪表显示层的中心;

提交所有所述图层窗口至显示器。

可选地,所述动态显示层中的各个图层对应的图层窗口为双缓冲窗口。

可选地,所述动态显示层还包括图像切换显示层;所述图层窗口还包括图像切换窗口;所述图层表面对象还包括图像切换表面对象;

所述提交所有所述图层窗口至显示器的步骤之前,所述指针式仪表盘显示方法还包括:

创建所述图像切换显示层对应的图像切换上下文对象,将所述图像切换上下文对象与所述图像切换表面对象绑定。

可选地,所述静态显示层还包括指示图显示层;所述图层窗口还包括指示图窗口;

所述提交所有所述图层窗口至显示器的步骤之前,所述指针式仪表盘显示方法还包括:

对所述指示图窗口中的图片进行切换、褪色处理。

可选地,所述基于所述待显示图像申请内存空间的步骤之后,包括:

打开所述显示器,设置所述显示器属性并提交。

可选地,所述将对应的所述图层表面对象和所述图层窗口绑定的步骤之后,包括:

设置每个所述图层窗口的属性。

可选地,所述基于所述动态显示层在所述内存空间中划分出动态空间的步骤,包括:

基于所述静态显示层在所述内存空间中划分出图像缓冲区。

本发明还公开了一种指针式仪表盘显示装置,包括:

获取模块,用于获取待显示图像,将所述待显示图像分为动态显示层和静态显示层,所述动态显示层包括指针显示层,所述静态显示层包括仪表盘显示层;

内存模块,用于基于所述待显示图像申请内存空间;

绑定模块,用于针对所述动态显示层和所述静态显示层中的各个图层创建对应的图层表面对象和图层窗口,并将对应的所述图层表面对象和所述图层窗口绑定,其中,所述图层窗口包括指针窗口;

划分模块,用于基于所述动态显示层在所述内存空间中划分出动态空间,所述动态空间用于作为所述动态显示层的;

指针模块,用于创建所述指针显示层对应的指针上下文对象,将所述指针上下文对象与所述指针窗口绑定,设定所述指针窗口的交换间隙和旋转中心位值矩阵,当所述指针显示层旋转时根据所述旋转中心位置矩阵移动所述指针窗口使得指针显示层的旋转中心位于仪表显示层的中心;

提交模块,用于提交所有所述图层窗口至显示器。

本发明还公开了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上所述方法的步骤。

本发明还公开了一种显示设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上所述方法的步骤。

与现有技术相比,本发明实施例提供的指针式仪表盘显示方法的有益效果在于:

利用2D Graphics Driver的多层次架构,将仪表指示盘拆分为指针显示层和仪表盘显示层,仅仅针对需要动态显示的指针显示层才申请VRAM,仪表盘指示层作为静态图片显示,不会发生动态变化,因此无需申请VRAM,这样可以大大缩小需要申请的VRAM大小,从而有效降低对芯片的要求,降低制造成本,申请更小的VRAM也能有效提升处理效率,确保良好的显示效果。

附图说明

下面将结合附图及实施例对本发明的方案作进一步详细的说明,附图中:

图1是本发明提供的指针式仪表盘显示方法的第一实施例的流程示意图;

图2是指针式仪表盘的一实施例的示意图;

图3是本发明提供的指针式仪表盘显示方法的第二实施例的流程示意图;

图4是本发明提供的指针式仪表盘显示装置的一实施例的结构示意图;

图5是本发明提供的显示设备的一实施例的结构示意图。

图中各附图标记为:

10、指针式仪表盘显示装置;11、获取模块;12、内存模块;13、绑定模块;14、划分模块;15、指针模块;16、提交模块。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。现结合附图,对本发明的较佳实施例作详细说明。

请结合参阅图1和图2,图1是本发明提供的指针式仪表盘显示方法的第一实施例的流程示意图,图2是指针式仪表盘的一实施例的示意图。

2D图形驱动(Graphics Driver)有两个显示控制器(Displays),可以在两个显示器上同时显示图形内容,支持多达26个不同的帧缓冲区。每个帧缓冲区都可以用于显示一个矩形窗口,也被称为"Windows",可以同时创建和显示多个窗口,每个窗口都有自己的帧缓冲区。可以在窗口中显示静态图片,而无需申请额外的显存,一旦申请了显存(VRAM),可以将多个图片数据加载到VRAM中,并在需要时将它们绘制到窗口的帧缓冲区中。可以对窗口中的图片进行各种操作,如移动、缩放和旋转。窗口在屏幕上按照z轴顺序进行排列,即后创建的窗口位于前面创建的窗口之上。

重叠的窗口可以设置为不透明,只有最顶层的窗口才是可见的。此外,2D图形驱动还支持使用混合单元(Layers)将窗口混合到底层的框架内容中。这使得你可以实现窗口与底层内容的混合效果。这种2D图形驱动架构的设计允许创建具有复杂场景的应用程序和游戏,并在相对较低的显存和内存使用下实现高效的图形渲染。

在显示图2所示的应用场景时,假设图片的分辨率大小为1280*480,创建这种复杂的场景时,采用单层架构双buffer渲染每帧的所有细节,为了保证画质还需要求图片采用RGB888以上的格式,可以计算出所需要的VRAM=1280*480*24/8*2/1024=3.6Mbyte。

在本发明中,利用2D Graphics Driver的多层次架构,将需要动态显示的窗口和不需要动态显示的窗口进行区分,仅仅是需要动态显示的窗口才申请VRAM,静态显示图片的窗口就不申请VRAM,大大缩小了所需的VRAM,在图2所示的场景中,为指针需要动态显示,以及两个仪表盘中间的图片切换显示窗口需要动态显示,指针的窗口尺寸为250*250,图片切换显示窗口的尺寸为424*162,此时消耗的VRAM=(2*250*250+424*162)*(32/8*2/1024)=1513.19KByte,远小于3.6Mbyte。可以清楚得出使用这种方法使用的VRAM较小。

具体的显示方法包括如下步骤:

S101:获取待显示图像,将待显示图像分为动态显示层和静态显示层,动态显示层包括指针显示层,静态显示层包括仪表盘显示层。

在一个具体的实施场景中,获取待显示图像,待显示图像可以是根据用户的个性化需求设计出的图像,包括仪表指示盘、背景图、警告指示图等等。例如,待显示图像即为图2所示的图像。包括两个仪表指示盘(包括指针和仪表盘)、背景图、图片切换显示区、限速和警示两个指示图,则根据是否需要动态显示为标准,将仪表指示盘进行划分,分为动态显示的指针和在实际显示时并不会发生变化的仪表盘。

将待显示图像分为动态显示层和静态显示层,其中,动态显示层包括指针显示层静态显示层包括仪表盘显示层。

S102:基于待显示图像申请内存空间。

在一个具体的实施场景中,基于待显示图像申请内存空间,例如可以根据需要显示的分辨率、图像的尺寸、图像的各层的窗口的大小等申请内存空间,此处内存指的是VRAM。内存空间的大小取决于你要执行的BlitEng和DrawEng操作的数量和复杂性,确保分配足够的内存空间。

图形绘制擎(BlitEng):BlitEng是“Bit Block Transfer Engine”的缩写,用于执行位块传输操作。位块传输是一种将图像从一个位置复制到另一个位置的操作,常用于图像的拷贝、裁剪、缩放和旋转等。BlitEnq通常提供了一些基本的图像处理功能,如像素复制、颜色混合和透明度处理等。它可以用于在屏幕上绘制图像、进行图像的复制和变换等操作。

绘制引擎(DrawEng):DrawEng是一个更高级的图形引擎,用于执行复杂的图形绘制操作。它通常提供了更多的绘制功能,如绘制几何形状(如线段、矩形、多边形等)绘制文本、绘制贴图(纹理映射)、渲染光照效果等。DrawEng可以根据应用程序提供的绘制命令和参数,将图形数据转换为最终的像素数据,并将其渲染到屏幕上。

在声明一个命令缓冲区变量。这可以是一个数组、指针或其他适合的数据结构,用于存储命令数据。使用适当的内存分配函数(如malloc)为命令缓冲区分配对应的内存空间。

在其他实施场景中,打开显示器,设置显示器属性并提交。通过调用相应的函数或方法来获取对显示器的引用。使用显示器的引用,可以访问和设置其属性。属性可以包括分辨率、刷新率、色彩空间、亮度等。根据具体需求,设置显示器的属性。在完成属性设置后,需要提交更改以使其生效。这通常涉及调用特定的函数或方法来提交显示器的属性更改。

S103:针对动态显示层和静态显示层中的各个图层创建对应的图层表面对象和图层窗口,并将对应的图层表面对象和图层窗口绑定,其中,图层窗口包括指针窗口和仪表盘窗口。

在一个具体的实施场景中,图层表面对象(表面对象)代表了一个可绘制的图像表面或画布。图层表面对象可以被认为是一个二维的像素数组,它存储了图像的像素数据和相关的图形属性。图层表面对象通常用于在计算机图形中创建、显示和操作图像。它可以表示屏幕、窗口、纹理、帧缓冲区等可绘制的图像区域。图层表面对象提供了一组方法和属性,用于进行像素级别的操作,如绘制图形、填充颜色、复制像素数据等。

针对动态显示层和静态显示层中的各个图层创建对应的图层表面对象和图层窗口,并将对应的图层表面对象和图层窗口绑定,则动态显示层中的指针显示层具有与之对应的且相互绑定的指针窗口和指针表面对象(sneedle),静态显示层中的仪表盘显示层具有与之对应的且相互绑定的仪表盘窗口和仪表盘表面对象(smeter)。

在其他实施场景中,静态显示层还包括背景显示层、速度显示层、警告显示层,动态显示层还包括图片切换显示层,对应的建立背景图表面对象(sbg)、指示对象(速度指示表面对象(sspeed)、告警指示表面对象(swarn))、图片切换表面对象(spicture)。

具体地说,sneedle:用于存储指针的图像数据。这个图层表面对象可以包含指针图像的像素数据,可以用于在绘制引擎中绘制指针的位置和角度。sbg:用于存储背景图的图像数据。这个图层表面对象可以包含背景图像的像素数据,用于在绘制引擎中绘制整个背景。smeter:用于存储仪表盘的图像数据。这个图层表面对象可以包含仪表盘图像的像素数据,用于在绘制引擎中绘制仪表盘的位置和状态。.sspeed:用于存储速度指示图的图像数据。这个图层表面对象可以包含速度指示图像的像素数据,用于在绘制引擎中绘制速度指示器的位置和数值。swarn:用于存储警告指示图的图像数据。这个图层表面对象可以包含警告指示图像的像素数据,用于在绘制引擎中绘制警告指示器的位置和状态。spicture:用于存储需要切换的多张图片的图像数据。这个图层表面对象可以包含多张图片的像素数据,用于在绘制引擎中根据需要切换并绘制不同的图片。

这些图层表面对象可以被绘制引擎(如DrawEng)使用,通过传递相应的图层表面对象和绘制命令,可以在屏幕上绘制指针、背景、仪表盘、速度指示器、警告指示器和切换的图片等图形元素。每个图层表面对象存储了相应图像的像素数据,使得绘制引擎可以直接使用这些数据进行绘制操作。

对应的创建背景图窗口、指示窗口(速度指示窗口、告警指示窗口)和图片切换窗口并与上文中的表面对象一一对应绑定。

将每个图层表面对象与相应的图层窗口进行绑定的目的是为了在图层窗口中显示和操作对应的图像数据。

当创建一个图层窗口时,图层窗口本身并不包含图像数据。相反,图像数据通常存储在一个或多个图层表面对象中。图层表面对象是图形库提供的数据结构,用于存储像素信息和图像数据。通过将图层表面对象与对应的图层窗口进行绑定,可以实现以下功能:

显示图像:绑定图层表面对象后,可以使用图形库提供的函数或方法,将图层表面对象中的图像数据绘制到图层窗口上。这样,图层窗口就能够显示与图层表面对象相关联的图像。

操作图像数据:通过绑定图层表面对象,可以对图像数据进行操作。使用图形库提供的函数或方法,修改图层表面对象中的像素值,实现图像的变换、绘制和处理操作。

窗口管理:通过将图层表面对象与窗口进行绑定,能够更方便地管理窗口。根据需要,对图层窗口进行打开、关闭、放大、缩小等操作。同时,绑定图层表面对象还可以在图层窗口之间进行图像数据的传输和共享。

绑定图层表面对象与窗口是将图像数据与窗口关联起来的重要步骤,它使得图像能够在窗口中显示,并且可以对图像数据进行操作和管理。具体的实现方式可能会因所使用的图形库、编程语言和平台而有所不同。建议查阅相关的图形库文档或示例代码,以了解如何在特定环境中进行图层表面对象和窗口的绑定操作。

在一个实施场景中,动态显示层中的各个图层对应的图层窗口为双缓冲窗口。双缓冲(Double Buffering)是一种图形渲染技术,用于解决图像闪烁和不流畅的问题。它基于使用两个缓冲区来进行图像绘制,一个缓冲区用于显示,另一个缓冲区用于绘制,然后在绘制完成后进行交换,从而实现平滑的图像更新。

需要说明的是,在图2所示的场景中,仪表指示盘有两个,因此对应的指针和仪表盘的窗口和对象也有两个,彼此一一对应。在其他实施场景中,仪表指示盘有多个的情况与此类似,不再赘述。本文以其中一个仪表指示盘为例进行说明,剩余的仪表指示盘参照此处说明。

S104:基于动态显示层在内存空间中划分出动态空间,动态空间用于作为动态显示层的位块传输缓冲区。

在一个具体的实施场景中,根据动态显示层的大小等显示需求在内存空间中划分出动态空间,动态空间用于作为动态显示层的位块传输缓冲区。动态空间用于存储指针表面对象和图片切换表面对象的像素数据,并在需要时进行Blit操作,将它们复制到指针窗口和蓝色层的窗口的缓冲区中。Blit是一个常见的图形编程术语,它是"Bit BlockTransfer"的缩写,表示位块传输。在图形编程中,Blit是将一个图像从一个位置复制到另一个位置的操作。Blit操作通常涉及两个图像表面(Surface):源图像和目标图像。源图像是要复制的原始图像,而目标图像是将源图像复制到的目标位置。Blit操作将源图像的像素数据按照一定的规则复制到目标图像的相应位置上。

在其他实施场景中,可以对应静态显示层中的各个图层从内存空间中划分出图像缓冲区。加载背景图、仪表盘、速度指示图和警告指示图的图像文件。这些图像文件格式为.bin文件,是PNG或JPEG等常见格式的图像转换成二进制的像素数据。加载图像文件时,您可以使用图形库提供的函数或方法,将它们加载到内存中。创建相应的图像缓冲区。图像缓冲区是在内存中创建的数据结构,用于存储图像数据。可以使用图形库提供的函数或方法,创建具有指定宽度和高度的图像缓冲区。通常,图像缓冲区的大小与窗口的大小相匹配,以确保图像可以完全显示在窗口中。

一旦创建了图像缓冲区,使用图形库提供的函数或方法,将加载的图像数据绘制到相应的缓冲区中。绘制图像时,需要指定图像在缓冲区中的位置。这可以通过提供图像的坐标(通常是左上角的坐标)来完成。

S105:创建指针显示层对应的指针上下文对象,将指针上下文对象与指针表面绑定,设定指针窗口的交换间隙和旋转中心位值矩阵,当指针显示层旋转时根据旋转中心位置矩阵移动指针窗口使得指针显示层的旋转中心位于仪表显示层的中心。

在一个具体的实施场景中,要创建指针显示层对应的指针上下文对象并将其与指针表面对象绑定,以便进行旋转和移动操作。使用图形库提供的函数或方法,创建一个指针上下文对象。指针上下文对象用于管理指针窗口的绘制和渲染操作。可以通过调用图形库提供的函数或方法,将指针表面对象与指针上下文对象进行绑定。

为了获取下一缓冲图片,可以设置指针窗口的交换间隙。交换间隙用于定义一次交换的帧数是多少帧,在本实施例中交换一次是交换一帧图片。您可以使用图形库提供的函数或方法,设置指针窗口的交换间隙。使用指针上下文对象提供的函数或方法,对指针进行旋转操作。

通过旋转中心位值矩阵可以指定指针图层旋转的旋转中心。旋转中心位值矩阵是一个矩阵,用于定义指针图层的旋转中心位置。可以将旋转中心位值矩阵设置为适当的值,以确保指针图层旋转后的中心位于仪表显示层的中心。在指针图层旋转时,将指针窗口移动至旋转中心位值矩阵对应的位置,以实现预期的旋转效果。使用图形库提供的函数或方法,移动指针窗口的位置。可以指定窗口的新位署坐标,使得指针显示层的旋转中心位于仪表盘显示层的中心。

在其他实施场景中,动态显示层还包括图像切换显示层;图层窗口还包括图像切换窗口;图层表面对象还包括图像切换表面对象。则创建图像切换显示层对应的图像切换上下文对象,将图像切换上下文对象与图像切换表面对象绑定。

要创建一个图像切换窗口的图像切换上下文对象,并将其与图像切换表面对象进行绑定,以进行缩放、平移和旋转等操作,使用图形库提供的函数或方法,创建一个图像切换上下文对象。图像切换上下文对象用于管理图像切换窗口的绘制和染操作。

将图像切换表面对象与图像切换上下文对象进行绑定。可以通过调用图形库提供的函数或方法,将图像切换表面对象与图像切换上下文对象关联起来。使用图形库提供的函数或方法,对图片进行缩放操作、进行平移操作、旋转操作。

在其他实施场景中,静态显示层还包括指示图显示层;图层窗口还包括指示图窗口(速度指示窗口、告警指示窗口),图层对象还包括指示图对象(速度指示表面对象(sspeed)、告警指示表面对象(swarn))。

使用图形库提供的函数或方法,加载两个指示图(速度指示图、告警指示图)的图片到对应的指示图对象中。在需要切换图片的时候,使用图形库提供的函数或方法,将当前显示的图片切换为另一张图片。可以根据需要在两个指示图窗口之间切换图片,例如按下按钮或定时切换。可以使用图形库提供的函数或方法,在每次切换图片时逐渐减少当前图片的透明度。这可以通过修改图片的Alpha通道值来实现。可以使用渐变或动画效果,逐渐降低图片的透明度,使其逐渐褪色。

S106:提交所有图层窗口至显示器。

在一个具体的实施场景中,使用图形库提供的函数或方法,将所有图层窗口提交到显示器。这将把图层窗口的内容渲染到显示器上,并等待窗口信号同步以实现显示。

在其他实施场景中,在提交图层窗口之前,设置窗口属性。使用图形库提供的函数或方法,设置它们的属性,如位置、大小、背景颜色、文本等。确保属性设置符合客户的需求。

通过上述描述可知,在本实施例中利用2DGraphics Driver的多层次架构,将仪表指示盘拆分为指针显示层和仪表盘显示层,仅仅针对需要动态显示的指针显示层才申请VRAM,仪表盘指示层作为静态图片显示,不会发生动态变化,因此无需申请VRAM,这样可以大大缩小需要申请的VRAM大小,从而有效降低对芯片的要求,降低制造成本,申请更小的VRAM也能有效提升处理效率,确保良好的显示效果。

请参阅图3,图3是本发明提供的指针式仪表盘显示方法的第二实施例的流程示意图。本发明提供的指针式仪表盘显示方法包括如下步骤:

S201:设置一个命令缓冲区变量,并基于待显示图像申请内存空间。

在一个具体的实施场景中,创建一个命令缓冲区来存储绘制命令和相关数据。您可以使用图形编程库或框架提供的函数或方法来创建命令缓冲区,并为其分配足够大的内存空间,以便后续的BlitEng和DrawEng操作可以使用。

S202:打开显示器并设置显示器属性,设置完成后提交以使得属性生效。

在一个具体的实施场景中,可以使用图形编程库或框架提供的函数或方法来打开显示器,并按需设置显示器的属性,例如分辨率、刷新率等。请注意,设置完属性后,需要提交一次(display commit)才能使属性生效。

S203:分别针对指针、背景图、仪表盘、速度指示图、警告指示图和需要切换的多张图片设置图层表面对象。

在一个具体的实施场景中,创建六个图层表面对象,分别用于存储指针、背景图、仪表盘、速度指示图、警告指示图和需要切换的多张图片等信息。图层表面对象可以存储像素数据和其他相关信息,并用于后续的绘制操作。可以使用图形编程库或框架提供的函数或方法来创建这些图层表面对象。

S204:定义两个指针窗口和一个图像切换窗口,并从内存空间中申请动态空间。

在一个具体的实施场景中,双缓冲技术常用于提高绘制效率和减少闪烁。定义两个指针窗口和一个图像切换的窗口,并为它们申请VRAM(显存)作为Blit操作的缓冲区。这样可以在绘制时使用双缓冲技术,提高绘制效果和性能。

S205:从内存空间中定义背景图、仪表盘、速度指示图、警告指示图的图像缓冲区。

在一个具体的实施场景中,可以为背景图、仪表盘、速度指示图和警告指示图分别定义图像缓冲区。这些图像缓冲区将用于存储相应图像的像素数据,并在需要时进行绘制和更新。

S206:针对每个图层表面对象创建对应的图层窗口,并设置窗口的属性。

在一个具体的实施场景中,针对每个图层表面对象创建对应的图层窗口,将它们与相应的图层表面对象进行绑定。这些窗口可以用于将图像绘制到屏幕上,并且可以按需设置窗口的属性,例如位置、大小、透明度等。

S207:创建指针上下文对象,将指针上下文对象与指针表面对象绑定,设定指针窗口的交换间隙和旋转中心位值矩阵,当指针显示层旋转时根据旋转中心位置矩阵移动指针窗口使得指针显示层的旋转中心位于仪表显示层的中心。

在一个具体实施场景中,为指针窗口创建一个指针上下文对象,并将指针对象绑定到该指针上下文对象上。可以使用函数或方法如setSwapInterval(1)来将交换间隙设置为1帧,根据所需的旋转中心的位置(也就是仪表显示层的中心),创建旋转中心位值矩阵。根据旋转中心位置矩阵,在指针图层需要进行旋转时,将指针窗口进行平移变换,使旋转中心位于仪表显示层的中心。

S208:创建图像切换显示层对应的图像切换上下文对象,将图像切换上下文对象与图像切换表面对象绑定。

在一个具体的实施场景中,可以为图片切换窗口创建一个图片切换上下文对象,并将图像切换对象绑定到该图片切换上下文对象上。通过使用图形库提供的函数或者方法图片切换上下文对象的属性进行设置,可以对切换的图片进行缩放、平移、旋转等操作。

S209:对指示图窗口中的图片进行切换、褪色处理。

在一个具体的实施场景中,加载两个指示图(速度指示图、告警指示图)的图片到对应的指示图对象中,对指示图窗口中的图片进行切换、褪色处理。

S210:提交所有图层窗口至显示器。

在一个具体的实施场景中,将上述提到的图层窗口提交(commit)到显示器(display),等待窗口信号同步以实现显示。一旦窗口被提交到显示器,它们的内容将被显示出来。等待窗口信号同步可以确保窗口的显示顺序和同步。

通过上述描述可知,在本实施例中利用2D Graphics Driver的多层次架构,将仪表指示盘拆分为指针显示层和仪表盘显示层,仅仅针对需要动态显示的指针显示层才申请VRAM,仪表盘指示层作为静态图片显示,不会发生动态变化,因此无需申请VRAM,这样可以大大缩小需要申请的VRAM大小,从而有效降低对芯片的要求,降低制造成本,申请更小的VRAM也能有效提升处理效率,确保良好的显示效果。

请参阅图4,图4是本发明提供的指针式仪表盘显示装置的一实施例的结构示意图。指针式仪表盘显示装置10包括:获取模块11、内存模块12、绑定模块13、划分模块14、指针模块15、提交模块16。

获取模块11用于获取待显示图像,将待显示图像分为动态显示层和静态显示层,动态显示层包括指针显示层,静态显示层包括仪表盘显示层;

内存模块12用于基于待显示图像申请内存空间;

绑定模块13用于针对动态显示层和静态显示层中的各个图层创建对应的图层表面对象和图层窗口,并将对应的图层表面对象和图层窗口绑定,其中,图层窗口包括指针窗口;

划分模块14用于基于动态显示层在内存空间中划分出动态空间,动态空间用于作为动态显示层的;

指针模块15用于创建指针显示层对应的指针上下文对象,将指针上下文对象与指针窗口绑定,设定指针窗口的交换间隙和旋转中心位值矩阵,当指针显示层旋转时根据旋转中心位置矩阵移动指针窗口使得指针显示层的旋转中心位于仪表显示层的中心;

提交模块16用于提交所有图层窗口至显示器。

其中,动态显示层中的各个图层对应的图层窗口为双缓冲窗口。

动态显示层还包括图像切换显示层;图层窗口还包括图像切换窗口;图层表面对象还包括图像切换表面对象;指针模块15用于创建图像切换显示层对应的图像切换上下文对象,将图像切换上下文对象与图像切换表面对象绑定。

静态显示层还包括指示图显示层;图层窗口还包括指示图窗口;指针模块15用于对指示图窗口中的图片进行切换、褪色处理。

内存模块12用于打开显示器,设置显示器属性并提交。

绑定模块13用于设置每个图层窗口的属性。

通过上述描述可知,在本实施例中利用2D Graphics Driver的多层次架构,将仪表指示盘拆分为指针显示层和仪表盘显示层,仅仅针对需要动态显示的指针显示层才申请VRAM,仪表盘指示层作为静态图片显示,不会发生动态变化,因此无需申请VRAM,这样可以大大缩小需要申请的VRAM大小,从而有效降低对芯片的要求,降低制造成本,申请更小的VRAM也能有效提升处理效率,确保良好的显示效果。

请参阅图5,图5是本发明提供的显示设备的一实施例的结构示意图。该计算机设备具体可以是终端,也可以是服务器。如图5所示,该显示设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现指针式仪表盘显示方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行指针式仪表盘显示方法。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提出了一种显示设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上所述的步骤。

在一个实施例中,提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上所述的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

应当理解的是,以上实施例仅用以说明本发明的技术方案,而非对其限制,对本领域技术人员来说,可以对上述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而所有这些修改和替换,都应属于本发明所附权利要的保护范围。

相关技术
  • 一种用于校正显示设备的灰阶显示曲线的方法、电子设备及计算机可读存储介质
  • 一种温度显示方法装置、计算机装置和计算机存储介质
  • 一种应用程序的页面显示方法、装置及存储介质
  • 一种来电界面的显示方法、装置、设备和存储介质
  • 一种图像显示方法及装置、计算机可读存储介质
  • 一种显示设备的控制方法、装置、显示设备及存储介质
  • 一种同步422数据处理系统及方法
技术分类

06120116588107