《计算机图形显示基础精选PPT.ppt》由会员分享,可在线阅读,更多相关《计算机图形显示基础精选PPT.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机图形显示基础课件第1页,此课件共61页哦第一章 显示技术本章讲述液晶显示器,等离子显示器和CRT显示器的工作原理。重点:各显示设备的基本工作原理及其优缺点。第一节 液晶显示器和等离子显示器 一、液晶显示器(1)液晶的分类和特点 液晶是一种有机化合物,液态晶体,是某些有机物在一定温度范围内的中间状态。在这种状态下,液晶既具有流动性和连续性,又呈现晶体的性质。液晶相温度,及上下限。分类 向列型(分子轴向着同一方向),胆甾型(层与层之间分子轴向发生扭曲),近晶型(分子轴向一致,而且按层排列)第2页,此课件共61页哦第3页,此课件共61页哦特点 优点(1)低电压,微功耗;(2)被动型显示,不怕亮
2、光。本身不发光,靠调制外界光达到显示的目的。在明亮的室外也能显示。(3)体积小,外型薄。(4)显示面积大。(5)无辐射,无污染。缺点:(1)响应速度慢,余辉长(一般为毫秒级)原因是液晶依靠外加电场作用下,液晶分子排列发生变化,由于材料的粘滞度影响,响应速度慢。(2)非主动发光,暗时不能显示,需要加背光。(3)显示视角小。液晶显示器依靠液晶分子的各向异性,对不同方 向的入射光,反射率不一样,所以视角较小。第4页,此课件共61页哦(2)液晶结构及工作原理 当偏振光通过某些透明物体时,偏振光的偏振面将会旋转异一定的角度,这种现象称为偏振面的旋转。能使偏振光的偏振面发生旋转的物质称为旋光物质。液晶即是
3、一种旋光物质。扭曲向列效应就是利用外加电压控制偏振光偏振面的旋转来达到显 示的目的。第5页,此课件共61页哦第6页,此课件共61页哦(3)液晶显示器的驱动电路 1 静态驱动电路。第7页,此课件共61页哦2 时分割法驱动笔段型LCD 时分割驱动电路把背电极分为COM0,COM1,COM2三组,把字段电极分为三组S1,S2,S3。在S1,S2,S3和COM0,COM1,COM2上加上不同的驱动电压,就可以使需要显示的字段的字段电极电压-背电极电压达到显示电压,从而达到显示的目的。第8页,此课件共61页哦(4)液晶显示器的灰度和彩色 1 灰度显示法 大容量点阵图形显示器中,灰度显示是不可缺少的。并且
4、灰度显示也是彩色显示的基础。灰度显示方法主要有空间灰度调制和时间灰度调制。a.空间灰度调制 将显示象素划分为若干个可以单独控制的“子象素”,当显示象素中不同数量的子象素被选通时,在一定距离外观看,象素将显示不同的灰度等级。优点:不需要特殊驱动和控制技巧。缺点:要牺牲一定的分辨率。第9页,此课件共61页哦b.时间灰度调制在单位时间内,控制显示象素的选通、截止时间长短,使显示象素在观察者眼中形成不同的灰度等级。任何点阵图形显示,都是由动态扫描驱动的一祯祯画面组成。选取若干祯为一个单位,在这个单位内某一象素在不同的祯内被选通,在另一些祯中不被选通。则该象素就会呈现出不同的灰度等级来。2.彩色显示法
5、LCD本身不能实现真正意义上的全彩色显示,采用的是“微彩色膜方式”。他将一个点阵象素分割为三个子象素,并在这三个子象素表面设置R,G,B三个微型滤色膜。LCD仅作为光阀门使用,控制每个子象素光阀就可以控制R,G,B三个滤色膜通过光的通断。控制三个子象素光线的灰度级别,就可以控制R,G,B三个子象素通过的不同光量,就可以混合出千万中颜色。第10页,此课件共61页哦 液晶本身只起一个光开关的作用,可以称为液晶阀。如果只能控制液晶阀的开关,则R,G,B可以组合成八种颜色。如果各颜色的子象素实现多级灰度,则可实现非常丰富的多种颜色。第11页,此课件共61页哦二、等离子显示器(1)工作原理 等离子体:当
6、气体受到高电压作用或强大射线照射时,外围电子摆脱原子核的束缚,由自由电子、带正电离子组成的电中性的气体就叫等离子体。等离子显示器 就是利用气体放电发光进行平面显示的一种装置。七段式等离子数字显示器件由两块平板玻璃、封接框和排气管组成。在前玻璃板上喷涂有透明位电极,后玻璃板上有和位电极相同的七段笔画电极。上面沉淀有一层透明介质,防止离子直接撞击电极。两玻璃片之间距离为0.2-0.3mm。通过排气管抽去空腔中的气体,充入以氖为主的氖氩混合气体。第12页,此课件共61页哦 等离子显示器用交变电压驱动。当外加电压,放电单元两端电压超过着火电压时,单元放电。产生大量的离子和电子,它们受电场加速,电子向正
7、极运动,离子向负极运动。附着在玻璃壁上。由于这些电荷在两极之间产生“壁电压”,它使放电单元内电场迅速减弱,当减弱到一定程度时,放电停止。随后,外加电压相位改变,交流电压的后半周期到来,因为有前半周所产生的壁电压存在,协助放电。于是在较低的外电压下,放电单元开始放电。这样,交流电压所产生的脉冲放电每半周一次。每次放电都伴着光输出,达到显示信息的目的。第13页,此课件共61页哦(2)等离子显示器驱动 交流电压驱动,电压频率要达到(1050kHz),工作电压130200V,才能正常工作。位电极电压和笔划电极电压相位相差180度。幅值为Ut,Ut大于着火电压Up的一半。只有在笔画电极和位电极之间同时加
8、上幅值为Ut的脉冲电压时,等离子显示器才能着火发亮。点阵型PDP,两块玻璃基板布置多条相互正交的条列电极,每个交点就是一个象素。彩色PDP由三个单元组成一个象素,其中每个单元电极两侧分别涂有红、绿、蓝荧光粉。放电产生紫外线,由紫外线激励荧光粉发出颜色。第14页,此课件共61页哦第15页,此课件共61页哦(三)特点优点:(1)发光明亮,均匀,不易使人疲劳。(2)平板显示器,很薄,几个毫米。可以作成大型数字显示器。(3)温度特性好,在-55+110度都可以正常可以显示。第16页,此课件共61页哦第二节 CRT显示器 光栅式CRT图形显示技术是一种被广泛应用的技术。一、阴极射线管(CRT)及光栅扫描
9、显示原理1 阴极射线管 阴极射线管是一种大型电真空显示器件。由电子枪、偏转系统和荧光屏三个基本部分组成。阴极射线管末端有一个电子枪,能够发射出电子束,这束电子束被聚焦到荧光屏上。在荧光屏的内表面涂有荧光物质薄层,电子束撞击荧光屏而形成荧光亮点。电子束的偏转使用电磁偏转法。在和管颈轴线垂直的平面内,加上两个相互垂直的磁场,电子束在洛仑兹力的作用下而发生水平或垂直偏转。第17页,此课件共61页哦第18页,此课件共61页哦(2)光栅的扫描和消隐 CRT显示器显示字符和图形,采用光栅扫描方式。光栅扫描包括水平扫描和垂直扫描。电子束在水平和垂直扫描的联合作用下,在屏幕上由左到右,由上到下进行运动。水平(
10、垂直)同步信号、水平(垂直)消隐信号以及欲显示的字符、图形信号或视频信号混合在一起,加到CRT控制栅极上,这个信号称为全电视信号。第19页,此课件共61页哦第20页,此课件共61页哦二、彩色CRT工作原理 彩色CRT具有三个电子枪,呈品字型排列。在荧光屏上,每一个象素由红、绿、兰三个子象素构成。从三个电子枪上射出的三个电子束通过荫罩进行聚焦,分别打在RGB三个基色子象素上,产生三个颜色的混合,从而产生彩色荧光。第21页,此课件共61页哦第二章 C+语言基础 第一节 面向对象的C+语言 重点:(1)理解面向对象和面向过程程序设计的区别(2)了解C+语言和C语言的主要区别。程序设计有两种方式:一种
11、是面向过程的程序设计方法(POL,Procedure-Oriented Programming)。C语言即是一种。“数据+算法=程序”。先定义数据,再根据算法对这些数据进行处理,最后得到输出结果。面向对象的程序设计(Object-Oriented Programming,简称OOP)将数据和对数据的操作相结合,作为一个整体来处理。将性质相同的一类对象和对象的操作概括为一种新的数据类型类,同时类之间可以继承和派生。概括为“对象+消息=面向对象程序”。第22页,此课件共61页哦一、C+与C语言的一般语法区别 1注释C+支持的注释方法有两种:(1)/*/用于大段的注释(2)/.用于单行注释。2变量定
12、义C语言的变量定义必须放在所有可执行语句之前。而C+不再区分变量定义部分和执行部分,可以在函数体内任意位置定义局部变量。int C=1;for(int i=0;i10;i+)C+;(1)局部变量。在一个函数体内定义的变量,只在本函数范围内有效,函数体外不能访问。(2)全局变量。在函数体外定义的变量,有效范围是从定义处到整个源文件的结束。3动态变量的创建C语言中用函数malloc()动态分配存储空间,用函数free()动态释放已分配的存储空间。C+中提供了两个新的动态分配存储空间的运算符new和delete。第23页,此课件共61页哦二、指针和引用 引用是C+的一个特征。指针是对象(变量)的地址
13、,而引用是给对象的地址起一个别名。引用经常用于函数参数表中,作为参数实现双向传值。1引用变量 引用变量的说明方式为:&引用名=变量名;2引用参数 引用用的最多的场合是在函数的参数表中。在C+中,可以使 用引用参数,即把形参定义为引用变量,这样在调用函数中处理更为简单。第24页,此课件共61页哦三、函数的改进 1函数的重载 函数重载是指同一个函数名可以对应多个函数的实现。函数重载允许一个程序内声明多个名称相同的函数,这些函数通常执行相同的功能,但是带有不同类型、不同数目的参数或是不同类型的返回值。2设置默认参数调用函数时,若某个参数有一个经常用的值,在声明函数原型的时候,可以用该值作为函数参数的
14、默认值。第25页,此课件共61页哦第二节 对象和类 类是面向对象程序设计的核心,类描述了具有相同特性和相同行为的对象,是对一组对象的抽象。它实质上是一种新的数据类型。和C语言的结构有相同之处。重点:类和对象抽象概念的理解及其定义方法,派生、继承的含义。难点:概念比较抽象,结合实例进行理解。第26页,此课件共61页哦第二节 对象和类 类是面向对象程序设计的核心,类描述了具有相同特性和相同行为的对象,是对一组对象的抽象。它实质上是一种新的数据类型。和C语言的结构有相同之处。一、类(一)类的定义类的一般定义形式为:Point类定义1 class 类名 private:/私有数据及函数;protect
15、ed:/受保护数据及变量;public:/公有数据及函数 第27页,此课件共61页哦Point类及其定义class Point int x y;public:void set_x(int k)x=k;int get_x()return x;void set_y(int k)y=k;int get_y()return y;其中,Point是类名标识符。在此类中,x和y是两个私有数据成员,分别表示点的横坐标和纵坐标。set_x和set_y函数分别用于设置x与y,即点的坐标值;get_x和get_y都是没有参数的函数,分别返回点的横、纵坐标。第28页,此课件共61页哦1、成员的访问类型(1)priv
16、ate私有的,是指只有本类中所定义的成员函数才能直接访问这些私有数据或调用这些私有函数,任何该类以外的函数都无法去访问这些私有数据或调用私有函数。否则,编译会出现错误。(2)protected受保护的成员除了被本类的成员函数存取及调用外,还可以被派生类的成员函数访问。类以外的函数无法访问(3)public公有的成员可以被本类以外的任何函数访问。一般情况下数据成员都定义成私有的,不允许访问,这样能保证数据的安全性和隐蔽性。把成员函数定义成公有的,作为类和外界操作的接口,保护数据成员不被随意修改。第29页,此课件共61页哦2、成员的组成类的成员分为两大类数据成员和成员函数数据成员。可以是简单的变量
17、,也可以是用户自己定义的变量。也可以是已经定义的一个类的对象。成员函数。类的成员函数定义如果比较短,可以放在类定义内。如果类的定义比较长,则要放在类定义之外。而函数原型则要放在类之内。一般一个类分为两部分即两个文件,类的定义部分放在一个.h头文件里。成员函数的实现部分放在一个.cpp的源文件里。(二)对象的定义类是一种新的数据类型,类的对象定义实质上就是变量的定义。和int,float等变量的定义相同。所以也有普通对象、对象数组、对象指针等。第30页,此课件共61页哦(三)函数和析构函数 构造函数和析构函数是类的特殊成员函数。构造函数名与类名相同。析构函数是在类名前加一个符号“”。如果用户没有
18、定义构造函数和析构函数,系统将自动产生默认的构造函数和析构函数。二、继承 继承描述的是类与类之间的关系。把在已有类的基础上定义新类的过程称为继承。继承可以实现代码重用,因而继承机制可以缩短软件开发周期,加快编程速度。(一)基类和派生类 被继承的类称为基类(或父类)。基于父类并增加新特性从而派生出的类称为派生类(或子类)。派生类保留了父类中的数据成员和成员函数,增加了基类中没有的一些数据成员和成员函数,是对基类功能的扩展。第31页,此课件共61页哦派生类的定义一般格式如下:class 派生类名:继承方式(public/protected/private)基类名/派生类新定义的成员 (二)多继承
19、继承分为单继承和多继承。单继承指派生类一个基类派生,多继承指派生类从多个基类派生,具有多个基类的特性。多继承派生类的格式定义如下:class 派生类名:继承方式1 基类名1,继承方式n 基类名n/本派生类新定义的成员 ;第32页,此课件共61页哦 第三章可视化编程语言Visual C+第一节 Visual C+6.0开发环境认识重点:熟悉可视化编程工具的开发环境,了解各种工具的用法。Visual C+6.0 提供了可视化的集成开发环境,包括AppWizard、WorkSpace、ClassWizard和WizardBar等工具。一、认识Visual C+6.0集成开发环境微软的Develope
20、r Studio是一个通用的可视化集成开发环境,支持Visual C+、Visual Basic等可视化编程语言。窗口界面包括标题栏、菜单栏、工具栏、项目工作区、编辑区和输出区。第33页,此课件共61页哦项目工作区项目工作区WizardBar编辑区编辑区输出框输出框第34页,此课件共61页哦第二节 MFC应用程序概述重点(1)了解Windows程序的特点。(2)熟悉MFC应用程序的框架 (3)理解Windows程序的消息传递机制。难点(1)Windows下应用程序的结构体系。(2)交互式应用程序的消息机制。第35页,此课件共61页哦一、窗口编程基础Windows应用程序是运行在Windows操
21、作系统上的,Windows操作系统是一个多任务操作系统。1窗口。窗口是应用程序与用户进行交互的界面,应用程序通过窗口传递信息给用户,同样,用户通过窗口输入数据,给应用程序发出命令。2消息和消息队列 Windows应用程序是利用消息(Message)来和用户以及操作系统进行交换信息的。消息的作用是通知一个应用程序某个确定的事件的发生,例如单击鼠标左键。这时候应用程序会对这个事件做出响应,如何响应是在程序中定义的,也就是编写了对应该消息(或事件)的处理函数代码。3、事件驱动的程序设计 第36页,此课件共61页哦二、MFC应用程序框架 如果用Windows API(Application Progr
22、amming Interface)函数编制Windows应用程序,需要做大量的工作。如果用AppWizard来创建一个MFC单文档应用程序,不需要做任何工作,就可以生成一个具有常用工具栏、菜单栏和状态栏的标准Windows应用程序。MFC(Microsoft Foundation Class)是微软编写的一套专门用于Windows编程的基础类库。VC+编程基本上是围绕MFC类库来进行的。第37页,此课件共61页哦(一)构建Windows应用程序的基本类由VC+提供的AppWizard生成的单文档应用程序有五个现成的类。分别是CDrawApp,CMainFrame、CDrawView、CDraw
23、Document以及CAboutDlg。类名称基类说明CDrawAppCWinApp应用程序类CMainFrameCFrameWnd窗口框架类CDrawDocCDocument文档类CDrawViewCView视图类第38页,此课件共61页哦(二)文档/视图结构 文档/视图结构是MFC应用程序最核心的概念,它把应用程序的数据和对数据的显示、操作分离开。当打开一个文件时,从文件读入的数据保存在文档类对象里,而视图对象是对文档类中数据的可视化表示,提供和用户交互的界面允许用户查看、编辑数据。应用程序的数据存储在文档对象中,并可以显示在视图中。一个文档可以对应多个视图,即文档中的数据可以以不同的方式
24、显示。例如:在Excel中,同样的数据可以以表格的形式表示,也可以以图标的形式表示。一个MFC应用程序开始运行后。文档类对象负责管理数据,视图类对象反映显示当前文档对象中的数据,视图和主框架提供可视化的界面与用户实现交互 第39页,此课件共61页哦三、消息映射 Windows程序是消息或事件驱动的。(一)消息的类别1窗口消息。用户与窗口交互会产生窗口消息,例如单击鼠标左键或右键,移动鼠标。输入数字或字符等。视图类对象,窗口类对象都能处理窗口消息。窗口消息的格式为:WM_XXX,例如窗口关闭WM_CLOSE,鼠标左键按下WM_LBUTTONDOWN等。2命令消息 选择菜单项、单击工具按钮会产生命
25、令消息。命令消息的格式是:WM_COMMAND 第40页,此课件共61页哦(二)消息映射系统 AppWizard生成的CMainFrame,CDrawDoc,CDrawView都能够接受窗口消息或命令消息,并调用自己类中已定义的相应函数进行处理。每个类中都维护着一个消息映射表,保存着该类能够接受并处理的消息以及和该消息相对应的处理函数的信息。应用程序类、窗口框架类、文档类和视图类中都定义了一张消息映射表。当发生一个消息或事件时,应用程序按一定的顺序搜索这些类的消息映射表,找到并调用对应的消息处理函数。(三)消息处理的路径应用程序类窗口框架类文档类视图类应用程序类、窗口框架类、文档类和视图类都可
26、以接受并处理窗口消息。当一个窗口消息例如鼠标左键按下的消息发出后,该消息按下列顺序处理。第41页,此课件共61页哦第四章 基于Visual C+的图形显示基础 对于面向用户的软件,用户主要通过输入、输出设备与计算机进行人-机对话,软件的可视化操作显得非常重要。对软件在图形、图象功能上有很高的要求。Windows提供了丰富的内部函数,称为API(application programming interface),或者叫做Windows应用程序编程接口。API中和图形有关的部分称为图形设备接口GDI(Graphics device interface)。作为一种图形操作系统,Windows把所有
27、的东西都作为图形在显示器上进行显示,因此,Windows拥有大量的图形处理函数,即GDI函数。GDI负责管理与不同输出设备的连接,从而使程序开发者不需要和硬件设备打交道,直接调用相关的函数即可。第42页,此课件共61页哦 第一节 GDI基础知识 重点(1)了解计算机图形显示的方法 (2)理解设备环境DC和CDC (3)学会使用笔,刷子,字体等GDI对象,进行绘图。难点 抽象概念较多,通过操作软件进行实际演示。第43页,此课件共61页哦第一节 GDI基础知识一、DC和CDC1设备环境 设备环境DC(device context),又称设备上下文或设备描述表,实际上就是所有绘制图形方法的集合。在W
28、indows环境下,所有图形输出都是在DC上进行的。DC的数据结构中存储了显示器(或打印机)的性能、属性的详细信息。这些数据信息决定了程序如何在显示器上进行显示。用户在绘图之前,必须先获得绘图窗口区域的一个设备环境DC,接着才能进行GDI函数的调用。2设备上下文类MFC把设备环境DC封装成了设备上下文类CDC,该类封装了所有的图形输出函数,包括设备环境的创建和初始化、画简单图形(画线、矩形、椭圆)以及复杂操作(如位图,区域操作等)。CDC类的适用范围很广,不仅支持窗口,还能支持打印机。第44页,此课件共61页哦3OnDraw成员函数 在视图客户区绘图最常适用的是OnDraw函数,它是Cview
29、类的一个虚函数,每当窗口需要重绘时调用该函数。它的函数原型如下:virtual void OnDraw(CDC*pDC);参数是CDC类的指针,利用该指针就可以调用CDC类的成员函数来完成各种图形绘制工作。4获取设备上下文(DC)绘图前必须准备好设备上下文(DC),得到一个CDC类的对象,然后才能调用CDC类的成员函数进行绘图。在MFC应用程序中获得CDC类对象的方法有两种,一种是直接接受一个参数为指向CDC类对象的指针。例如CView类中的OnDraw函数。第45页,此课件共61页哦二、绘图工具GDI对象CGdiObjectCGdiObject类是MFC提供的绘图工具的类,它的派生类包括画笔
30、(CPen),画刷(CBrush),字体(CFont),位图(CBitmap),调色板(CPalette)和区域(CRgn)等。使用GDI对象有两个步骤:(1)定义一个GDI绘图对象的实例。(2)调用CDC:SelectObject函数,将它选入到设备上下文中。1、CPen画笔。画笔用来绘制对象的边框以及直线和曲线。用户可以指定线的颜色及宽度,并且可以指定画实线、点线或虚线。默认的画笔画的是一个象素宽的黑色实线。CPen(int nPenStyle,int nWidth,COLORREF crColor);nPenStyle是画笔的风格(样式),即画笔的线型,该参数可以为:PS_SOLID 创
31、建一个实线画笔。PS_DASH 创建一个虚线画笔。PS_DOT 创建一个点线画笔。PS_DASHDOT 创建一个双点划线画笔。nWidth是画笔的宽度。第46页,此课件共61页哦a.用不同线型绘制直线。for(int i=0;iSelectObject(&NewPen);pDC-MoveTo(120,100+30*i);/光标移动到指定起始位置pDC-LineTo(500,100+30*i);/使用选中的画笔画线 pDC-SelectObject(pOldObject);/恢复原对象 b.画不同粗细的直线 for(int i=0;iSelectObject(&NewPen);pDC-MoveT
32、o(120,120+30*i);pDC-LineTo(500,120+30*i);pDC-SelectObject(pOldPen);第47页,此课件共61页哦2、CBrush对象 CBrush类画刷用来填充一个封闭图形对象(如矩形、椭圆)的内部区域。默认的画刷将封闭图形的内部填充成白色。CBrush(COLORREF crColor);创建一个实画刷,颜色是crColor CBrush(int nIndex,COLORREF crColor);创建一个网格画刷。NIndex指定了画刷的网格形式。HS_BDIAGONAL:HS_CROSS:HS_DIAGCROSS:HS_FDIAGONAL:H
33、S_HORIZONTAL:HS_VERTICAL:第48页,此课件共61页哦应用实例 a实心刷CBrush NewBrush(RGB(0,0,255);CBrush*pOldBrush;pOldBrush=pDC-SelectObject(&NewBrush);pDC-Rectangle(100,100,200,200);pDC-SelectObject(pOldBrush);b网格刷CBrush NewBrush;NewBrush.CreateBrush(HS_CROSS,RGB(255,0,0);CBrush*pOldBrush;pOldBrush=pDC-SelectObject(&Ne
34、wBrush);pDC-Rectangle(100,100,200,200);pDC-SelectObject(pOldBrush);第49页,此课件共61页哦3、CFont对象 字体CFont类是一种具有某种风格和尺寸的所有字符的集合,并提供了修改字体的成员函数。CFont类构造函数及初始化成员函数 该类只有一个构造函数CFont()。初始化函数BOOL CreateFont(int nHeight,int nWidth,int nEscapement,int nOrientation,int nWeight,BYTE bItalic,BYTE bUnderline,BYTE cStrike
35、Out,BYTE nCharSet,BYTE nOutPrecision,BYTE nClipPrecision,BYTE nQuality,BYTE nPitchAndFamily,LPCTSTR lpszFacename)第50页,此课件共61页哦CFont类对象应用实例CFont m_MyFont;m_MyFont.CreateFont (50,0,100,0,FW_BOLD,TRUE,FALSE,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH|FF_SWISS,Ari
36、al);CFont*pOldFont;pOldFont=pDC-SelectObject(&m_MyFont);pDC-TextOut(200,200,“字体实例”);pDC-SelectObject(pOldFont);第51页,此课件共61页哦第二节 绘制图形元素重点:掌握常用图形的绘制方法,包括点、矩形、椭圆、多边形等 基本图形。并上机进行实际动手操作。第52页,此课件共61页哦图形元素(简称图元)主要包括点、直线、简单曲线、复杂曲线、文字等。这些图形元素是构成复杂图形的基础。1绘制点、直线和矩形(1)点的绘制:绘制点的CDC类的成员函数为SetPixel。函数声明为:COLORREF
37、SetPixel(int x,int y,COLORREF crColor);该函数绘制大小为一个象素的点。x和y为所绘制点的坐标;参数crColor表示绘制点的颜色。pDC-SetPixel(100,100,RGB(255,255,0);(2)直线的绘制:Cpoint MoveTo(intx,inty);/移动当前点到x和y指定的点。BOOL LineTo(int x,int y);/从当前点向x和y指定的点画线。每次画直线都是以当前位置为起始点。画直线结束后,直线的结束位置又成为当前位置。第53页,此课件共61页哦(3)矩形的绘制:矩形的绘制主要是调用CDC的成员函数Rectangle。函
38、数声明如下:BOOL Rectangle(int x1,int y1,int x2,int y2);参数x1,y1,x2,y2分别代表了所要绘制矩形的左上顶点坐标值和右下顶点坐标值。在矩形绘制前要选好画笔和画刷。2绘制简单曲线(1)椭圆的绘制。绘制椭圆的函数为Ellipse。函数声明如下:BOOL Ellipse(int x1,int y1,int x2,int y2)。参数x1,y1为所绘制椭圆的外切矩形的左上角顶点坐标值;参数x2和y2指定了所绘制椭圆外切矩形右下角顶点坐标值。圆是椭圆的一个特例。(2)多边形的绘制。多边形的绘制使用函数Polygon()。函数声明如下:BOOL Polyg
39、on(LPPOINT lpPoints,int nCount);参数lpPoints指向一个存放多边形顶点的数组;参数nCount记录多边形顶点个数。第54页,此课件共61页哦3文本的绘制(1)(1)BOOL TextOut(int x,int y,const CString&str);该函数用当前选中的字体在指定的位置x和y显示一个CString类型的字符串。pDC-TextOut(20,20,”Text Out”);(2)virtual COLORREF SetTextColor(COLORREF crColor);该函数设置输出文本的颜色,参数crColor就是文本的颜色。pDC-Set
40、TextColor(RGB(0,255,0);pDC-TextOut(200,200,”The Color of Text is Green”);第55页,此课件共61页哦 第三节 分散控制系统中的图形显示系统第56页,此课件共61页哦 分散控制系统中的图形组态软件和监控软件即是一个典型的交互式绘图系统。一、图形组态软件 图形组态软件是用来生成用户流程图的工具软件。它生成的图形是一种矢量图形,因此生成的图形文件很小,一般在350K之间。图形组态软件将图元分为三类:基本图元、动态数据工具和特殊对象。基本图元包括:直线、折线、各种填充型(矩形、椭圆、圆角矩形等)以及文字等工具。动态数据工具包括模拟
41、量点,开关量点、棒图、指针等工具。它们直接和测点数据相连接,显示测点数据的变化。特殊对象包括实时趋势、X-Y图、报警工具。这些工具可以提供测点数据的变化趋势、两个变量之间的关系以及某些测点的值是否超过了报警的上下限等信息。第57页,此课件共61页哦第58页,此课件共61页哦(1)流程图颜色的设置。流程图中设备和管线的颜色配置好坏直接影响操作人员的工作效率。操作画面的颜色应采用冷色调,冷色调可以使操作人员的头脑冷静、思维敏捷、也不容易引起视觉的疲劳,绿色和天蓝色还能消除眼睛的疲劳。流程图中画面的颜色设计要统一,各种管线的颜色要和实际管线上涂刷的颜色一致。(2)过程流程图中数据的显示 工业过程画面中的另一重要部分是测量数据的显示。包括动态数据显示的位置、显示的方式、数据更新的速度等。第59页,此课件共61页哦第60页,此课件共61页哦二、监控软件监控软件显示由图形组态软件生成的工业过程画面,将其生成的文件读出并显示出来。监控软件显示的每一个画面都是由图形组态软件绘制后保存生成的一个文件。同时监控软件对从控制网络上接受来的测量数据进行分析和整理,并和画面中的相对应的动态数据点相连接,就可以在画面中显示出整个实际生产过程中的各种数据。从而实现集中监控 第61页,此课件共61页哦
限制150内