一种基于QML+OpenGL的车载图形界面系统技术方案

技术编号:14859986 阅读:90 留言:0更新日期:2017-03-19 12:22
本发明专利技术提供一种基于QML+OpenGL的车载图形界面系统,包括以下步骤:步骤S1,初始化进入用户界面定义状态;步骤S2,通过使用鼠标区域控件设置鼠标响应区域,切换不同的状态;步骤S3,判断状态是否满足触发条件,直到满足触发条件状态被激活;步骤S4,添加过渡元素触发动作;步骤S5,调用脚本变化执行动作。使用QML和OpenGL语言,通过定义状态和添加过渡元素来定义车载图形界面,通过属性变化修改状态元素属性,并通过使用鼠标区域控件设置鼠标响应区域,来达到元素属性都可以改变,状态同时也可以改变;通过使用属性变化对元属添加动画,并通过使用数据类型和视图列表来显示动画效果,应用动画和视觉效果来扩展过渡变化,可以帮助我们查看所有的功能都被覆盖到。

【技术实现步骤摘要】

本专利技术属于嵌入式应用开发领域,涉及Qt开发、QML软件设计和OpenGLES图形技术,尤其涉及一种基于QML+OpenGL的车载图形界面系统
技术介绍
MFC是专门为windows设计的一个用于开发图形用户界面的类库。MFC或多或少使用了面向对象的方法包装了Win32的API,正因如此,这些API有时是C++,有时是C,甚至是C和C++的混合体。消息循环MFC是事件驱动的架构。要执行任何操作,都必须是对特定的消息作出响应。Windows对应用程序发送的信息数以千计,遗憾的是,要分清楚这些分繁芜杂的消息是很困难的,并且关于这方面的文档并不能很好的解决这些问题。创建界面MFC无法创建大小动态可变的子窗口,必须重新手动修改代码来改变窗口的位置,这个问题在软件进行国际化翻译的时候更加严重,因为许多国家表达相同意思需要更长的词汇和句子,必须要对每个语言的版本重新修改自己的软件。国际化使用MFC是可以国际化的,但是需要将每一个字符串放在一个字符串表中,在代码中到处使用LoadString(IDENTIFIET)。然后转化这些资源到DLL中,翻译字符串到所需要的语言,改变图形界面,然后调用程序使用这个DLL。整个过程是如此的繁琐,可谓牵一发而动全身。考虑的事情要面面俱到。Resources问题使用MFC,一部分开发过程要依靠“resources”,在很多的案例中开发者必须使用他们。这样会导致如下的后果:除了VisualStudio,你很难使用其他的工具来完成开发。资源编辑器仅有有限的功能,比如:通过Dialog编辑器不可能改变所有的属性,一些属性可以改变,另一些属性则不可能改变。
技术实现思路
专利技术所要解决的技术问题是提供一种基于QML+OpenGL的车载图形界面系统,可以应用动画和视觉效果来扩展过渡变化帮助我们查看所有的功能全都被覆盖到了。对此,本专利技术提供基于QML+OpenGL的车载图形界面系统,包括以下步骤;步骤S1,初始化进入用户界面定义状态;步骤S2,通过使用鼠标区域控件设置鼠标响应区域,切换不同的状态;步骤S3,判断状态是否满足触发条件,直到满足触发条件状态被激活;步骤S4,添加过渡元素触发动作;步骤S5,调用脚本变化执行动作。本专利技术的进一步技术方案是:所述步骤S3的触发条件为根据用户需求进行自定义设置的触发指令,当接收到对应的指令时状态被激活。本专利技术的进一步技术方案是:所述的触发条件为鼠标触发、按键触发或者状态触发其中一种。本专利技术的进一步技术方案是:所述步骤S4还包括步骤S401,所述步骤S401中设置起始属性和目标属性,将起始属性和目标属性分别绑定到特定的状态名称上,当所述过渡元素的过渡被设为可逆过渡时,可逆过渡条件为真则自动切换到上一个状态。本专利技术的进一步技术方案是:所述步骤S4还包括步骤S402,所述步骤S402中定义动画可以以并行、串行或暂停执行。本专利技术的进一步技术方案是:所述步骤S4还包括步骤S403,所述步骤S403通过使用属性变化对元素添加动画。本专利技术的进一步技术方案是:所述步骤S403通过使用基本属性动画、过渡和属性行为的其中一种实现添加动画。本专利技术的进一步技术方案是:所述使用基本属性动画包括插入预定义的缓冲动画曲线。本专利技术的进一步技术方案是:所述步骤S1还包括以下子步骤:步骤S101,通过列表获取数据模型;步骤S102,通过代理进行数据绑定;步骤S103,通过视图显示数据。本专利技术的进一步技术方案是:所述步骤S1通过属性变化修改状态元素。与现有技术相比,本专利技术的有益效果在于:使用QML和OpenGL语言,通过定义状态和添加过渡元素来定义车载图形界面,通过属性变化修改状态元素属性,并通过使用鼠标区域控件设置鼠标响应区域,来达到元素属性都可以改变,状态同时也可以改变;通过使用属性变化对元属添加动画,并通过使用数据类型和视图列表来显示动画效果,应用动画和视觉效果来扩展过渡变化,可以帮助我们查看所有的功能都被覆盖到。附图说明图1是本专利技术一种实施例的工作流程图;图2是图1添加过渡元素触发动作的细化流程图。具体实施方式下面结合附图,对本专利技术的较优的实施例作进一步的详细说明。实施例1:如图1所示,本专利技术提供一种基于QML+OpenGL的车载图形界面系统,包括以下步骤;步骤S1,初始化进入用户界面定义状态;步骤S2,通过使用鼠标区域控件设置鼠标响应区域,切换不同的状态;步骤S3,判断状态是否满足触发条件,直到满足触发条件状态被激活;步骤S4,添加过渡元素触发动作;步骤S5,调用脚本变化执行动作。如步骤S1所述,初始化进入用户界面定义状态;状态对应的英文名称为States,状态用于管理有id的元素它是由多个状态元素构成的,通过属性变化修改状态元素属性,指定修改的目标元素的id给目标属性,定义要修改的目标元素的属性值,当元素进入到某个状态,状态对应的属性将被设置,我们可以修改anchors对齐方式;修改item的parent;执行一段javascript代码;PropertyChanges对应的英文名称为属性变化。如步骤S2所述,通过使用鼠标区域控件设置鼠标响应区域,切换不同的状态;鼠标区域对应的英文名称为MouseArea;例如我们需要定义两个状态“on”、“off”,使用PropertyChanges为每个状态设置目标和其对应的属性值;使用MouseArea的事件响应来完成不同状态间的切换响应用户界面的单击事件,让SwitchButton在状态“on”和“off”之间直接切换。如步骤S3所述,判断状态是否满足触发条件,当满足触发条件状态被激活;所述触发条件为根据用户需求进行自定义设置的触发指令,当接收到对应的指令时状态被激活。所述的触发条件为鼠标触发、按键触发或者状态触发其中一种。比如U盘是否插入,当接收到鼠标触发或者按键触发或者状态触发对应的指令时状态被激活。还可以使用when属性表达式来触发状态改变,表达式内容为元素对应的状态,当表达式条件为真,stateslist中只能有一个状态是被激活的,当表达式条件为假,状态没有被激活。如步骤S4所述,通过添加过渡元素触发动作;过渡元素对应的英文名称为Transition;过渡用于为状态之间的切换提供动画支持,过渡只能被状态切换激活。如步骤S5所述,调用脚本变化执行动作。脚本变化对应的英文名称为StateChangeScript。步骤S1本文档来自技高网
...

【技术保护点】
一种基于QML+OpenGL的车载图形界面系统,其特征在于,包括以下步骤:步骤S1,初始化进入用户界面定义状态;步骤S2,通过使用鼠标区域控件设置鼠标响应区域,切换不同的状态;步骤S3,判断状态是否满足触发条件,直到满足触发条件状态被激活;步骤S4,添加过渡元素触发动作;步骤 S5,调用脚本变化执行动作。

【技术特征摘要】
1.一种基于QML+OpenGL的车载图形界面系统,其特征在于,包括以下步骤:
步骤S1,初始化进入用户界面定义状态;
步骤S2,通过使用鼠标区域控件设置鼠标响应区域,切换不同的状态;
步骤S3,判断状态是否满足触发条件,直到满足触发条件状态被激活;
步骤S4,添加过渡元素触发动作;
步骤S5,调用脚本变化执行动作。
2.根据权利要求1所述的基于QML+OpenGL的车载图形界面系统,其特征在于,所述步骤
S3的触发条件为根据用户需求进行自定义设置的触发指令,当接收到对应的指令时状态被
激活。
3.根据权利要求2所述的基于QML+OpenGL的车载图形界面系统,其特征在于,所述的触
发条件为鼠标触发、按键触发或者状态触发其中一种。
4.根据权利要求1所述的基于QML+OpenGL的车载图形界面系统,其特征在于,所述步骤
S4还包括步骤S401,所述步骤S401中设置起始属性和目标属性,将起始属性和目标属性分
别绑定到特定的状态名称上,当所述过渡元素的过渡被设为可逆过渡时,可逆过渡条件为
真则自动切换到上一个状态。
5.根据权利要求4所述的基...

【专利技术属性】
技术研发人员:张作深孙开雨张洋赵宣姚家荣
申请(专利权)人:深圳市航盛电子股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1