随着我国教育科研网(CERNET)的不断普及和推广使用,许多高等学校将远程网络教育作为辅助教学的一个重要手段。网络教育的基础是建立网络教室系统,其中,传统的黑板被电子白板所替代,电子白板不仅可以满足教师的需要,方便随意地书写、绘画,开展丰富多采的教学活动,而且,通过电子白板,异地的学生们可以“登录”互联网,和教师进行“面对面”的实时交流,领略最新的知识,感悟信息爆炸所带来的冲击。这种教育所带来的效果是传统教育方式所无法比拟的。本文以所指导的大四毕业设计课题为例,设计了一种方便、实用的基于IP的电子白板系统。
2 电子白板应用技术简介
2.1 GDI图形设备接口
它是一个抽象的接口。相当于图形显示的函数库,实现设备的无关性。也就是说,Windows编程时不允许直接访问显示硬件,而必须通过和特定窗口相关的“设备环境”(DC)跟显示硬件进行通讯。
2.2 VCAD(VisualCAD)小型图形应用程序
该程序与Windows附带画图工具相似,使用标准Windows界面,用于设置界面,绘制直线、矩形、圆、自由线以及文字,并有调色板和绘图工具栏与相应操作对应。所有图形边框的宽度和颜色可以调整,矩形和圆可以置为实心或空心,文字类型和颜色可以调整并添加在任何地方。
建立一个图元链表存储图元信息,以实现存储和打开操作,并可以以图元包为单位进行网络传输。删除操作可以利用图元的外接矩形选定,并通过链表的删除操作实现。
2.3 Socket套接字
Winsock控件对用户来说是不可见的,它提供了访问TCP和UDP网络服务的方便途径。MicrosoftAccess、VisualBasic、VisualC++或VisualFoxPro的开发人员都可使用它。为编写客户或服务器应用程序,不必了解TCP的细节。通过设置控件的属性并调用其方法就可轻易连接到一台远程计算机上去,并且还可双向交换数据。
本次设计是采用TCP数据传输协议,它允许创建和维护与远程计算机的连接。要使用TCP协议,那么,首先必须决定应用程序是服务器还是客户端。如果要创建一个服务器端,那么应用程序需要“监听”指定的端口。当客户端提出连接请求时,服务器端能够接受请求并建立连接。在连接建立之后,客户端与服务器端可以自由地互相通讯。
如果创建客户应用程序,就必须知道服务器计算机名或者IP地址,还要知道进行“侦听”的端口,然后调用Connect方法。建立连接后,任何一方计算机都可以收发数据。
3 基于IP电子白板系统的设计
3.1 系统结构
系统结构如图1所示。
3.1.1 界面设计部分
为了营造出美观实用的界面,本系统采用了与Windows操作系统附带的画图板相类似的绘图环境,仅仅添加了几个连接
选项,力求使界面标准化,简化用户对系统的熟悉过程,同时在状态栏中加入了当前工作状态和鼠标坐标的显示功能。
3.1.2 绘图设计部分
绘图设计模块是电子白板系统的一个十分重要的组成部分。它首先进行绘图参数的初始化,然后对绘图工具栏进行设置,若用户没有要求打开原有的.pdf文件,则创建新的白板文件,接着由鼠标选择进入画图模块。在退出或存储项被击活时提示存储。
3.1.3 实时交互系统
实时交互系统包括服务器端和客户端两部分,它们首先分别进行初始化,创建套接字以及捆绑地址。然后服务端通过监听端口等待连接请求,当客户端有连接信号到来时,它接收客户端的地址并建立连接。客户端在收到确认信号以后,表示连接已经成功,可以开始传送数据。客户端的输入数据类型分为两类:文本和图形对象。文本用于客户之间进行文字交谈,图形对象则包括直线、矩形、圆、以及自由画线等。每一种数据类型都被定义为相应的类,并由另一个类包装成数据包在网络上传送,接收到数据的一方,通过解压数据包,将图形还原出来。当网络出错或请求断开时,释放网络资源。如图2所示。