基于Silverlight技术的机械制图在线学习系统设计与开发
2015-02-09祁锋
【摘 要】随着多媒体技术在教学中的普遍使用,传统机械制图的教学改革也迫在眉睫。本文基于微软新一代浏览器Silverlight技术设计与开发了一个机械制图在线学习系统,系统包括在线学习、在线练习、重难点Flash动画等功能。
【关键词】Silverlight 机械制图 在线学习
1 引言
《机械制图》是机械类专业一门重要的专业基础课,在现代工程技术人员的培养中起着极其重要的作用[1]。随着多媒体技术在教学中的普遍使用,传统机械制图的教学改革也迫在眉睫。传统的《机械制图》教学存在着的课程结构,课程内容,教学方法,教学目标上的局限性,已落后于多媒体教学、网络教学等教学方式,采用多媒体技术、网络技术等进行深入的改革是必然的[2]。
目前,关于《机械制图》在线学习系统方面的研究还比较少,内容也比较简单。只有中国科学技术大学和石家庄铁道学院有相关研究。因此,本文设计开发的《机械制图》在线学习系统具有一定的创新性。通过对这样一个学习系统的开发可以改变传统的《机械制图》教学方式,可以克服课本上枯燥的线形文字和插图的不足,丰富教学内容;同时也为学生提供了一个主动学习的平台,使学生由被动接受知识的对象转变为主动获取知识的探索者,激发学生的学习积极性,切实提高教学质量,对《机械制图》课程的发展具有极其重要的意义。
2 Silverlight技术
2.1 Silverlight介绍
Microsoft Silverlight是一个跨浏览器的、跨平台的插件,为网络带来下一代基于NET framework的媒体体验和丰富的交互式应用程序。Silverlight以XAML为界面呈现语言,支持2D矢量图形、文字、动画、数据双向绑定、控件风格与模板、LINQ、WCF、JSON、Socket和跨域访问等高级特性。在Silverlight4.0版本中还加入3D能力,支持更多的多媒体格式,丰富了动画效果、滤镜功能,使搜索引擎优化、数据绑定增强等。Silverlight提供灵活的编程模型,并可以很方便地集成到现有的网络应用程序中。Silverlight可以对运行在Mac或Windows上的主流浏览器提供高质量视频信息的快速、低成本的传递,支持IE、Firefox甚至Apple的Safari浏览器,而无需对现有的网站设计进行移植[2]。
对于互联网用户来说,Silverlight是一个安装简单的浏览器插件程序。用户只要安装了这个插件程序,就可以在Windows和Mac上多种浏览器中运行相应版本的Silverlight应用程序,享受视频分享、在线游戏、广告动画、交互丰富的网络服务等等。
对于开发设计人员而言,Silverlight是一种融合了微软的多种技术的Web呈现技术。它提供了一套开发框架,并通过使用基于向量的图像图层技术,支持任何尺寸图像的无缝整合,对基于asp .net、AJAX在内的Web开发环境实现了无缝连接。Silverlight使开发设计人员能够更好地协作,有效地创造出能在Windows和Macintosh上多种浏览器中运行的内容丰富、界面绚丽的Web应用程序[2]。
2.2 Silverlight工作原理
Silverlight是以宿主浏览器为基础环境的。宿主浏览器接口通过npctrl.dll与Silverlight对接。npctrl.dll是一个ActiveX控件,可以被调用。npctrl.dll会调用agcore.dll来处理一些非托管的接口程序, 也会调用coreclr.dll来创建一个公共语言运行库(CLR,Common Language Runtime)。我们编写的Silverlight应用程序是运行在coreclr.dll创建的CLR当中的。
3《机械制图》在线学习系统设计与开发
3.1学习系统功能结构设计
《机械制图》在线学习系统包括四大功能,分别是在线学习、在线练习、重难点Flash、注册登录。具体功能框图如图2所示。系统采用三层结构实现,各层之间通过服务接口和数据访问接口实现通信和数据交换。这种结构在实现良好的程序结构的同时,也能达到灵活部署、方便升级和维护的目的。
1.在线学习功能:实现机械制图理论教学内容的WEB展示,方便学生随时随地学习。教学内容的素材主要为视频形式,含多媒体动画效果,需要在网页中同样实现多媒体动画效果。
2.在线练习功能:在网页上实现简单的绘图功能,学生可以根据练习题的要求在网页上进行简单的图线绘制,完成练习后,可以单击查看正确答案按钮查看正确练习答案。
3.重难点Flash:展示学习过程中重点、难点的Flash动画。
4.注册登录功能:上述三个功能的使用都需要学生先注册成功,并以用户名和密码成功登录后才能使用。
3.2开发环境
采用Microsoft Visual Studio 2008 平台,Microsoft Expression web 3,ASP.net开发技术,Sliverlight技术,xaml技术,数据库采用SQL server 2008。
3.3在线绘图功能的实现
Shape绘图是一个名为“Shape”的基本类,由它衍生出6个子类,通过这6个子类可以绘制不同的图形,分别是:Line:绘制直线;Rectangle:绘制矩形;Ellipse:绘制椭圆形;Polygon:绘制多边形;Polyline:与Polygon类似,区别在于图形的封闭性;Path:以上的综合体。
Geometry对象(如 EllipseGeometry、PathGeometry 和 GeometryGroup)可以用于描绘二维 (2-D) 形状的几何图形。这些几何图形的描绘具有许多用途,例如,定义一个要绘制到屏幕的形状或者定义剪辑区域。Geometry对象可以很简单(如矩形和圆),也可以是基于两个或更多个Geometry对象创建的复合形状。使用 PathGeometry对象可以创建更复杂的几何图形,这些对象可用于描绘弧线和曲线。
Geometry 和 Shape 类的相似之处在于它们均描绘二维形状(例如,比较 EllipseGeometry 和 Ellipse),但它们之间也存在一些重要的区别。例如,Shape 对象是 UIElement 对象,而 Geometry 对象不是。因为是 UIElement 对象,所以 Shape 对象可以进行自我呈现并具有 Opacity、OpacityMask 以及 Geometry 对象所没有的其他图形属性。因此,本系统中的绘图功能采用shape类。
实现的绘图功能包括:点绘制、直线绘制、射线绘制、构造线绘制、圆形绘制、多边形绘制等。可以满足《机械制图》课程一般练习的需求。
4 结束语
《机械制图》在线学习系统实现了在线学习、在线练习、重难点知识点Flash动画制作,对提高学生的自主学习能力,改善机械制图的教学质量提供了很好的帮助。
【参考文献】
[1]骆正茂.基于Silverlight的机械零部件在线制图系统[J].现代制造工程,2011(6):43-45,72
[2]胡世清,程国雄.基于Silverlight的网络虚拟课堂教学系统的设计与实现[J].中国电化教育,2011(6):126-129.
[3]银光中国.http://www.silverlightchina.net.
[4]程国雄,胡世清.基于Silverlight互动学习RIA平台的研究与实现[J].计算机工程与科学,2010(7):23-26.
[5]叶大萌,祁锋主编.机械制图[M].华中科技大学出版社,2013.
[6]祁锋主编.机械制图习题集[J].华中科技大学出版社,2013.
[7]四川大学工程制图教研室编.机械制图[M].北京邮电大学出版社.
[8]四川大学工程制图教研室编.机械制图习题集[M].北京邮电大学出版社.
[9]大连理工大学工程制图精品课程网.http://graphics.dlut.edu.cn/.endprint