虚拟仪表在VC 中的一种应用实现(1)
2014-01-08 01:05
导读:计算机应用论文论文,虚拟仪表在VC 中的一种应用实现(1)应该怎么写,有什么格式要求,科教论文网提供的这篇文章是一个很好的范例:
摘 要 虚拟仪表应用越来越广泛,本文根据VC开发虚拟仪表的流程和原
摘 要 虚拟仪表应用越来越广泛,本文根据VC开发虚拟仪表的流程和原理,从实际应用角度设计了一个虚拟指南针仪表的实例。 关键词 虚拟仪表;VC 面向对象;动态仿真1 引言 随着计算机技术的日益成熟,计算机的应用已渗透到各个领域,各种车载装备也逐步向数字化、智能化方向发展。用数字化的虚拟仪表取代机械式传统仪表已成为实现车辆自动化的一个重要课题。在车辆中,驾驶员仪表面板是驾驶员获取各种工况数据的重要窗口。长期以来驾驶员仪表面板采用机械式传统仪表,这种传统仪表装置在车辆中占用了固定的空间、显示精度低、可读性差、不易扩展,而且效率十分低下。而采用虚拟仪表后,在驾驶员前方放置一台平板显示屏,为延续传统操作习惯,将原来驾驶员仪表盘的车况数据在显示屏上以模拟表形式显示,为方便读数,增加了数字表及棒图形式显示,而对越限工况及各种报警,在显示屏上以图形指示灯形式指示报警。显示屏可以在车辆不同的状态下显示不同的工况参数及报警信号,各个参数可以根据需要通过热键自由切换,采用虚拟仪表后,仪表的读数一目了然,可读性好,读数精度高,并且容易升级、扩展。因此,虚拟仪表是未来车辆的发展方向。2 虚拟仪表控件的组成原理 仪表解决方案采用完全开放的组织架构,将仪表创建切分为:仪表盘、指针、度量刻度以及背景几个部分,这些部分既相互关联,又充分独立,当创建新的仪表的时候,可以根据需要将其进行任意组合,例如圆盘仪表盘 圆盘刻度 指针,就可以构建如图1所示的仪表。

图1 仪表框架原理 框架可以由三个基础类YPaintBase,YShapeBase和YFillBase组成。其中YFillBase是填充基础类(简称“填充”),它负责对颜色、图像的填充,边框等。YShapeBase是基本图形基础类(简称“形状”),由此类派生出简单的基本图形,如:圆、三角、五角星、特殊指针样式。YPaintBase是逻辑组合基础类(简称“逻辑”),由YPaintBase把YShapeBase和YFillBase进行组合,构建出复杂图形,而复杂图形可由YPaintBase的派生类再次组合。 框架也可由函数体来完成,分别定义一些画背景、刻度、指针的函数,即可完成上述功能,本文采用第二种方式来实现仪表框架的建立。3 应用实例 首先建立一个工程文件命名为Meter,采用对话框格式,其余选择默认选项即可。添加一个新类CMeter,里面增加如下函数体[1]: void DrawNeedle(CDC *pDC);//画指针 void DrawMeterBackground(CDC *pDC, CRect