APP下载

基于Silverlight技术下的CAD图形研究与应用

2017-04-23钱小刚

电子技术与软件工程 2017年5期

钱小刚

摘 要 基于工程上用户对CAD图形在Web端进行无失真的展示及交互需求越来越迫切,以及应用程序跨平台要求,选择跨平台、跨浏览器的Silverlight富客户端技术,结合WCF服务提供后台数据服务接口,同时利用AUTO CAD和Expression Design 4.0软件对工程原始CAD图形进行处理,最终实现CAD图形在Silverlight Web前端进行无失真展示,同时与CAD图形进行各种丰富的交互应用。

【关键词】Silverlight WCF CAD 分布线

在水电、建筑、土木施工、环境艺术设计、工业设计、服装设计等各行各业从设计、实施、维护整个过程中会产生大量的CAD图形文件,依靠传统的文件存储,会产生如下问题:

(1)CAD图形文件存储到一定级别的数量,查询特别困难。

(2)CAD图形文件无法直接在Web进行查询和无失真的展示、放大、缩小。

(3)工程用户无法在CAD图形文件上直接结合实时数据,进行动态展示和交互。

为了解决工程上的实际问题,通过对Silverlight(银光)技术深入研究,结合CAD、Expression Design等软件能较好的实现CAD图形文件在Web端进行无失真的展示和交互,同时跨平台、跨浏览器,完全满足用户需求。

1 系统开发环境

本文是Silverlight富客户端技术与WCF服务技术结合应用于CAD图形文件展示与交互的尝试,使用C#语言结合XAML描述模式开发。系统采用Expression Blend 4.0 作为Web 前端开发工具,通过CAD2010和Expression Design 4.0处理CAD图形原文件,Visual Studio 2010 作为后台开发工具。

Visual Studio 是微软推行的一套完整的开发工具,用于完成桌面应用程序或Web 应用程序等的设计、开发和部署,能够进行工具共享,创建基于混合语言的解决方案。

Expression Blend 是在 Silverlight 和 .NET 平台上进行互动设计的工具。它使得用户体验概念可能在从最初的原型到最终的实现中都得到忠实的體现。

Expression Design 是一个专业的设计工具。它可以创建图形资源,并在 Expression Studio:Expression Blend 和 Expression Web 中创建的应用程序中使用。

2 CAD图形的展示与实现

2.1 图形的处理

通过CAD2010打开CAD图形原始文件(*.dwg),点击文件-》输出,保存为图元文件(*.wmf)。该文件为矢量文件,放大和缩小不变形、不失真。

打开Expression Design 4.0软件,点击文件-》打开,查找上一步处理过的图元文件(*.wmf),选中打开。处理过的CAD图形文件就显示在Expression Design画布上。点击文件-》导出,发布为XAML文件,即可在Silverlight和WPF平台上展示,如图1。

可以将处理过的CAD图形文件以及CAD图形文件的一些索引信息放入数据库,方便CAD图形的管理和索引工作,能快速实现CAD图形的查询和其它信息系统的使用。

2.2 后台服务

Silverlight所有后台服务通过WCF服务完成,Silverlight前台获取用户请求,传递给WCF服务,WCF服务通过后台处理后,异步返回给Silverlight前台用户。

WCF服务包括CAD图形文件信息管理和下载、用户通过关键字查询CAD图形文件、查询到的CAD图形文件下载到Silverlight前台。同时WCF服务还提供CAD文件热点坐标信息、以及用户与CAD图形文件交互信息、热点实测数据、热点历史数据等等。

2.3 Silverlight前端处理

Silverlight通过后台服务下载到所需CAD图形XAML文件,放入画布上。通过Silverlight提供的放大、缩小、平移等功能,方便用户对CAD图形进行各种操作。

Silverlight具有丰富的绘图功能,可以以CAD图形文件为地图,根据各种业务需求,在CAD图形文件上绘制各种图形,同时结合后台服务,查询各种信息,在CAD图形文件上进行展示。

Silverlight还具有丰富的动画功能,可以结合后台服务,查询CAD图形文件上热点实测、历史数据,在CAD图形上绘制各种生动、形象、直观的动画。

3 应用

在大坝设计、施工、维护中会产生了大量的CAD图形文件,并且在这些CAD图形文件中会标注大量的监测仪器。通过Silverlight技术结合WCF服务,实现了CAD图形文件在Web端快速查询、展示和日常操作,以及基于CAD图形文件为底图的分布线绘制。

3.1 监测布置图

监测布置图实现了大量CAD图形文件查询、展示、放大、缩小、移动等功能,提高了工程用户的工作效率,节省了大量时间,如图2。

3.2 分布线

大坝日常维护人员迫切希望能在CAD图形文件直接看到监测仪器实测数据,同时可以查询一段时间各个测点测值,并且通过动画动态展示每个测点测值变化趋势,从而判断每个测点变化情况,为后期采取相应措施提供依据。Silverlight提供了丰富的动画功能,能快速实现用户需求,通过WCF服务查询各测点测值,供Silverlight前端调用,为用户在前端提供丰富的交互体验,如图3。

4 结语

本文研究了基于Silverlight技术下的CAD图形文件应用开发,并在此基础上实现了CAD图形文件在Web端的查询、放大、缩小、移动等操作,同时基于CAD文件为底图开发了分布线动画功能,实现了用户与CAD图形间交互,满足了用户对CAD图形的各种需求,极大的提高了用户工作效率和使用体验。

同时基于矢量图形在Silverlight的展示和动画功能技术研究,可以结合各行各业、各种需求开发出丰富多彩的富客户端插件,在各行各业、各个平台进行应用。

参考文献

[1]魏永超. Silverlight 3.0开发详解与最佳实践[M].北京:清华大学出版社,2003

[2](美)西尔伯沙茨等著,杨冬青等译.数据库系统概念[M].北京:机械工业出版社,2005.

[3]孙博.基于微软新一代图形系统WPF和Silverlight的数据可视化研究与实现[D].长春:东北师范大学,2005.

[4]郭伟鹏,沈松雨.Silverlight支持下的WebGis的研究与实现[J].地理空间信息,2008.