SVG绘制配电站接线图
近几年来,随着Internet的迅猛发展,网页技术日新月异,人们都试图设计出精美、有特色的页面。其中,图形技术发挥着至关重要的作用,可升级矢量图像( SVG, Scalable Vector Graphics)和VML (Vector Markup Language)的产生有着十分积极的意义。它具有支持矢量图和动画、由文本构成图形易于操作、对点阵图形兼容等特点。然而,不同浏览器对两种标准的支持并不一致, 微软的IE浏览器系列对VML支持比较好,而其他的浏览器软件对SVG标准支持更完美。这也使得开发基于Web的图形系统变得更加复杂。多比图形控件出现简化了的这种开发难度,它是一款基于Web的矢量图形控件,能够检测浏览器类型,自动选择VML或SVG方案进行做图, 类似于网页上的Visio控件。
针对电力系统的需要,可将多比中间件技术用于配电站接线图的绘制及发布。多比编辑工具在提供友好界面的同时,提供了大量配电站元件图元,可以轻松、直观、方便、快捷地完成配电站接线图的制作。
1 多比控件技术概述
1. 1 VML技术
VML (VectorMarkup Language)是XML1. 0 的一个应用,使用VML 可以在IE 5. 0 以上版本中绘制矢量图形。由于VML 是基于新一带网络标记语言XML 标准的,也就是说,表示方法简单,易于扩展,数据与表现相分离,同时VML 支持高质量的矢量图形显示,它基于相连接的直线和曲线描述路径。其次VML 由文本构成,可以很方便地融合到HTML文件中,可用很少的字节来表示较复杂的图像,可以和其它HTML元素一样使用VML元素,在客户端浏览器显示图像。VML可以使用DHTML大部分属性和事件,如id, onmouseover等。最后VML 的功能不只是绘图,它可以在图形中嵌入文本,并可实现超链,通过脚本控制还可以实现动画效果。
1. 2 SVG技术
SVG是由W3C制定的基于XML来描述二维矢量图型的一个开放标准,它用文本格式的描述性语言来描述图像内容,因此是一种和图像分辨率无关的矢量图形格式。它具有以下优点:
1.图像文件可读,易于修改和编辑。
2.与现有技术可以互动融合。另外, SVG文件还可嵌入JavaScript脚本来控制SVG对象。
3.SVG图形格式可以用来动态生成图形。例如,可用SVG动态生成具有交互功能的地图,嵌入网页中,并显示给终端用户。
4. 如前所述, SVG文档作为一种规范的XML文档,能够很好地与W3C其他开放标准如DOM, CSS,XSL, XL ink, Xpointer, SM IL, HTML, XHTML等进行协同工作,简化异质系统间的信息交流,方便数据库的存取。
1. 3 多比控件简介
多比图形控件出现简化了的这种开发难度,它是一款基于Web的矢量图形控件,能够检测浏览器类型,自动选择VML或SVG方案进行做图, 类似于网页上的Visio控件,是目前国内外最佳的基于web矢量图解决方案,可以用于电力、化工、煤炭、工控组态软件、仿真、地理信息系统、工作流、复杂报表 工业SCADA系统、ERP流程设计系统、图形管理、图形拓扑分析、GIS地理信息系统系统、工程制图等领域。
多比图形编辑器实现了图形、图像和文字的有机统一。它除了支持HTML 中常用的标记,如文本、图像、链接、交互性、CSS的使用、脚本( Scrip t)外,还提供了大量针对图形、图像、动画的特定标记。对SVG图形文件进行编辑管理的过程为: SVG图形文件经XML 解析器打开,并在内存中生成一个对象树,用鼠标事件来驱动脚本执行,脚本通过DOM接口对对象进行相关的操作,来实现图形绘制、编辑等功能。
2.在配电站接线图中的应用
配电站接线图是一种特定的复杂而又有规则的图形,可以采用SVG技术绘制配电站接线图。它基本由一些固定的电气元件组成(或称为图元) ,这些图元有其固定的表现形式。该SVG编辑工具不仅提供了一个界面友好、方便使用的编辑环境,而且可以提供大量配电站电气元件图元,这样可以实现SVG文件格式存储,轻松完成配电站接线图的制作。
传统的ActiveX控件实现的方式有许多缺点:客户端的部署很困难,如客户端不能正确下载,下载了以后不能正确执行,下载的时候需要设置IE的安全级别等等.
3 实现图形编辑功能与操作
SVG图形编辑系统应用在电力系统接线图的绘制时,除了最基本的绘制与编辑功能外,还需要考虑到电力系统绘图的实际需要,设置不同的功能实现接线图更方便的绘制,如不同型号的电力线的选择、基本图元的选取等。对于不同型号的电力线选取,以粗度为0. 5 cm
线条的绘制为例,以示意方式区别普通的黑色线条。
图中,工具栏Design中变压器图案,表示点击后对变压器图元的绘制。点击图元后,矩形框变为红色表示选中,由图元可绘制出变压器的图形元件。编辑系统可以实现对元件图元进行适当的修改,如放大、缩小、平移、删除等。
以平移为例,对SVG图形编辑系统的功能和操作进行简单说明。
点击工具栏Tools中的箭头图案,矩形框变为红色,表示选中平移功能;按住鼠标左键,拖拽鼠标.