电力系统上的webdraw<!----><o:p></o:p>
现在的许多电力系统都是基于WEB平台运行的。所以在涉及到电力图,线路图,接线图,设备图,配网图,SCADA图形仿真监控图,电网拓扑图,电厂图农电网网等图形的系统时,由于图形系统的复杂性决定,许多电力系统在图形这一模块表现得相当薄弱,很多时候没有达到专业的水准,为什么呢?
因为缺少专业的实用的易用的方便的图形平台,现在要想在WEB系统上运行一些线路图,主接线图,在线绘制电力图等系统,那么北京图王软件的Visual Graph专业图形引擎平台是不二选择。
<!----><v:shapetype o:spt="75" coordsize="21600,21600" filled="f" stroked="f" id="_x0000_t75" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:extrusionok="f" o:connecttype="rect" gradientshapeok="t"></v:path><o:lock v:ext="edit" aspectratio="t"></o:lock></v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" alt="" style="WIDTH: 407.25pt; HEIGHT: 285pt"><v:imagedata o:href="http://vgraph.blog.51cto.com/album/181932/121636418564.jpg" src="file:///C:\DOCUME~1\h\LOCALS~1\Temp\msohtml1\01\clip_image001.jpg"></v:imagedata></v:shape>
这个例子的VBS(JS)实现代码只有二十行左右,不得了啊!二十行多代码的代码就能实现如此丰富的专业功能:
<html><o:p></o:p>
<head><o:p></o:p>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"><o:p></o:p>
<meta name="GENERATOR" content="Microsoft FrontPage 6.0"><o:p></o:p>
<meta name="ProgId" content="FrontPage.Editor.Document"><o:p></o:p>
<title>New Page 1</title><o:p></o:p>
<SCRIPT ID=clientEventHandlersVBS LANGUAGE=vbscript><o:p></o:p>
<!--<o:p></o:p>
Sub window_onload<o:p></o:p>
vg1.Design ""<o:p></o:p>
s = vg1.SystemParams.DefaultPath<o:p></o:p>
vg2.Run s + "listview.tbl"<o:p></o:p>
vg2.Width = 180<o:p></o:p>
vg3.Run s + "toolbar.tbl"<o:p></o:p>
vg1_OnSheetChange( vg1.vg.ActiveSheet )<o:p></o:p>
vg3.vg.Execute "btnPaste.Enable=true"<o:p></o:p>
vg4.Run s + "propedit.tbl"<o:p></o:p>
vg4.vg.ActiveSheet.SetPropertyValue "selected", vg1.vg.ActiveSheet.Selection<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
Sub vg1_OnSheetChange( ASheet )<o:p></o:p>
if not ( vg2.vg is Nothing ) then<o:p></o:p>
vg2.vg.ActiveSheet.SetPropertyValue "cursheet", vg1.vg.ActiveSheet<o:p></o:p>
end if<o:p></o:p>
if not ( vg3.vg is Nothing ) then<o:p></o:p>
vg3.vg.ActiveSheet.SetPropertyValue "cursheet", vg1.vg.ActiveSheet<o:p></o:p>
end if<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
Sub vg1_OnSelectChange<o:p></o:p>
if not ( vg4.vg is Nothing ) then<o:p></o:p>
vg4.vg.ActiveSheet.SetPropertyValue "selected", vg1.vg.ActiveSheet.Selection<o:p></o:p>
end if<o:p></o:p>
vg3.vg.Execute "OnSelectChange()"<o:p></o:p>
vg3.vg.Execute "btnUndo.Enable=CurSheet.Owner.CanUndo()"<o:p></o:p>
vg3.vg.Execute "btnRedo.Enable=CurSheet.Owner.CanRedo()"<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
Sub vg1_OnModifyChange( m )<o:p></o:p>
if not ( vg3.vg is Nothing ) then<o:p></o:p>
vg3.vg.Execute "btnSave.Enable=CurSheet.Owner.Modified"<o:p></o:p>
end if<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
Sub vg1_OnRButtonDown( x, y )<o:p></o:p>
vg1.vg.Execute( "menu=Create(systemparams.defaultpath+'popupmenu1.tbl', true, false);menu.ActiveSheet.CurSheet = ActiveSheet; px = 0; py = 0; GetCursorPos( px, py ); menu.Popup( px, py ); menu.Free()" )<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
Sub vg1_OnError(s)<o:p></o:p>
MsgBox s<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
Sub vg2_OnError(s)<o:p></o:p>
MsgBox s<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
Sub vg3_OnError(s)<o:p></o:p>
MsgBox s<o:p></o:p>
End Sub<o:p></o:p>
<o:p> </o:p>
--><o:p></o:p>
</SCRIPT><o:p></o:p>
</head><o:p></o:p>
<o:p> </o:p>
<body><o:p></o:p>
<o:p> </o:p>
<table border="0" width="916" cellpadding="0" cellspacing="0"><o:p></o:p>
<tr><o:p></o:p>
<td colspan="3" width="915"><o:p></o:p>
<object classid="clsid:465BBD45-50E1-11D7-8803-00E09876BB62" codebase="http://localhost/onlinedraw/vg.cab#version=1,0,0,0" id="vg3" width="925" height="35" VIEWASTEXT><o:p></o:p>
</object><o:p></o:p>
</td><o:p></o:p>
</tr><o:p></o:p>
<tr><o:p></o:p>
<td width="192"><o:p></o:p>
<object classid="clsid:465BBD45-50E1-11D7-8803-00E09876BB62" codebase="http://localhost/onlinedraw/vg.cab#version=1,0,0,0" id="vg2" width="182" height="463" VIEWASTEXT><o:p></o:p>
</object><o:p></o:p>
</td><o:p></o:p>
<td width="528"><o:p></o:p>
<object classid="clsid:465BBD45-50E1-11D7-8803-00E09876BB62" codebase="http://localhost/onlinedraw/vg.cab#version=1,0,0,0" id="vg1" width="558" height="464" VIEWASTEXT><o:p></o:p>
</object><o:p></o:p>
</td><o:p></o:p>
<td width="204"><o:p></o:p>
<object classid="clsid:465BBD45-50E1-11D7-8803-00E09876BB62" codebase="http://localhost/onlinedraw/vg.cab#version=1,0,0,0" id="vg4" width="182" height="463" VIEWASTEXT><o:p></o:p>
</object><o:p></o:p>
</td><o:p></o:p>
</tr><o:p></o:p>
</table><o:p></o:p>
<o:p> </o:p>
</body><o:p></o:p>
<o:p> </o:p>
</html>
<o:p> </o:p>
由于是在Html与JS/VBS基于Visual Graph图形引擎平台开发而成的。我们看一下CAB插件包的大小,突然发现只有400k。更令人叫绝的是400k的CAB里面包括有所有界面源码(自己可以定制Onlinedraw的所有界面以及所有动作行为,作为电力系统当中的多样性,其400K就已经可以无限更改其行为,而且还很简单。)以及Visual Graph的核心:vg.dll。
从这个例子,我们可以看到实现一个WEB上的电力绘图系统,电力图形系统,那是很方便快捷。其图形功能列举几项如下:
1.图形技术相当完善:多页面、多图层、表格图形混排、透明度、自由旋转、动画效果、自定义线型、网纹、箭头、自定义任意多个文字标注、自定义图元连接点、自定义光标、图形保护、控制点,支持图形的逻辑分组,允许图元嵌套构建更复杂的图元。
2.包含编辑与运行状态,可以任意操纵与控制图形变化,实现各种仿真与建模。
3.图形和图库是统一的XML格式,便于传输、存储和维护,支持WEB开发。
4.响应众多的图形操作事件,任意给图形添加属性成函数,任意自定义图形。
5.可以建立和分析图形间的任意拓朴连接关系,实现各种逻辑运算与控制。
6.内含面向对象的Visual Graph脚本语言,简洁易用的COM类库接口。
7.每个图形都是对象,拥有众多的属性和函数,可以方便地编辑和操纵。
8.支持报表开发,表格高度智能,可以制作超酷图形界面,轻松换肤。
9.非常容易地开发出任何复杂变化的图形,轻松实现自己的图形库。
10VBS、JS可以操控Visual Graph的一切,VG的内嵌脚本与VBS、JS可以交互控制。
<v:shape id="_x0000_i1026" type="#_x0000_t75" alt="" style="WIDTH: 462pt; HEIGHT: 335.25pt"><v:imagedata o:href="http://vgraph.blog.51cto.com/album/181932/121600674909.jpg" src="file:///C:\DOCUME~1\h\LOCALS~1\Temp\msohtml1\01\clip_image003.jpg"></v:imagedata></v:shape><o:p></o:p>
<o:p></o:p>
<o:p></o:p>
<o:p>北京图王软件:http://www.visual-graph.com </o:p>
分享到:
相关推荐
综上所述,现代电力系统分析教材不仅为从事电力系统运行、规划设计和科学研究的人员提供了重要的理论支持,也成为了高等院校电力专业学生及研究生的重要教材。通过深入理解教材中的内容,读者可以掌握电力系统分析的...
电力系统暂态分析是指在电力系统遭受如短路、断线等扰动后,系统运行参数如电流、电压、频率和相位等发生持续变化的动态过程。电力系统的运行状态可以分为稳态和暂态两种。稳态通常指电力系统在正常运行条件下,所有...
电力系统分析是电气工程领域的核心课程之一,主要研究电力系统的运行、规划和控制问题。《电力系统分析》第三版上册由何仰赞和温增银两位专家编写,旨在为学生和专业人士提供全面且深入的电力系统理论知识。华中科技...
4. 近代电力系统的特征:近代电力系统不仅在输电电压、输送距离、输送功率方面有了大幅度提升,而且在电源构成和负荷成分上也出现了多样化。各类发电厂如火力发电厂、水力发电厂、原子能发电厂、以及其他可再生能源...
在电力系统领域,Matlab(矩阵实验室)是一个广泛使用的工具,尤其在建模与仿真方面。Matlab的强大功能和灵活性使其成为电力工程师和技术人员进行复杂分析、设计和实验的理想选择。本文将深入探讨Matlab在电力系统...
"电力系统暂态分析—电力系统故障的计算机算法" 电力系统中的暂态分析是指在电力系统中发生故障时,计算机算法对暂态电流和电压的计算。这种算法可以用来计算大型电力系统中的短路电流和电压分布。在这种算法中,...
电力系统稳态分析是电力系统工程中的核心内容之一,主要研究在正常运行状态下电力系统各元件及整体的工作特性与相互作用。从给定的文件片段中,我们可以提取出以下几个关键知识点: 1. 我国电力工业的发展背景和...
在电力系统领域,MATLAB 和 Simulink 是两种强大的工具,用于进行复杂的系统建模与仿真。MATLAB 是一种高级编程语言,适用于数值计算、数据分析和算法开发;而 Simulink 是一个图形化的仿真环境,它基于 MATLAB 平台...
电力系统稳态分析是电力工程领域的一个核心主题,它研究的是电力系统在正常运行状态下的工作情况。由陈珩编著的《电力系统稳态分析》是一本深受业界认可的经典教材,它为学习者提供了全面深入的理解电力系统稳态运行...
电力系统暂态分析期末考试试题和答案 以下是对标题、描述、标签和部分内容的知识点详细解释: 一、电力系统暂态分析 电力系统暂态分析是研究电力系统在暂态故障下的行为和特性。它是电力系统分析的重要组成部分,...
电力系统分析基础 习题课.ppt 电力系统分析基础 习题课2.ppt 电力系统分析基础 习题课3.ppt 电力系统分析基础 习题课4(总复习).ppt 电力系统分析基础 潮流算例.ppt 电力系统分析基础 第一章复习题.doc 电力系统分析...
综上所述,这本《电力系统分析》不仅为学习电力系统的学生提供了丰富的理论知识和实践指导,也为电力系统的专业技术人员和科研人员提供了宝贵的参考资料。通过学习本书,读者可以对电力系统有一个系统的认识,并掌握...
电力系统分析是电气工程领域的重要课程,主要研究电力系统的运行、规划和控制。这份来自华北电力大学的课件,提供了全面且深入的电力系统知识,对于学习者来说是一份宝贵的资源。下面,我们将详细探讨课件中可能涵盖...
准同期并列时将待并发电机转速什至接近同步转速后就是励磁,当发动机的频率、电压幅值和电压相角分别与运行系统的频率、电压幅值和电压相角接近相同时,合上并列断路器,将待并发电机投入系统并列运行。 同步发电机...
尽管如此,我们仍可以从中抽取出一些与电力系统分析相关的专业术语和技术概念,这些术语和概念在电力系统分析中是十分重要的。 1. 电力系统分析:电力系统分析是指运用电气工程的理论和技术,对电力系统的结构、...
《现代电力系统分析》是电力系统领域的重要教材,由王锡凡教授主编,涵盖电力系统分析的理论模型、算法以及该领域的最新发展,是电力系统运行、规划设计和科研人员的重要参考书籍,同时也适合作为高校电力专业学生的...
电力系统自动装置是现代电力系统运行与控制的关键技术领域,涉及电力系统的稳定、安全和高效运行。自动装置的引入极大提升了电力系统的自动化水平,确保了电网的可靠性和灵活性。以下是对“电力系统自动装置”这一...
电力系统故障分析是电力工程专业的一门重要课程,其核心内容是研究电力系统在运行过程中由于各种干扰和故障引起的稳定性和安全性问题。刘万顺编写的《电力系统故障分析 第二版》作为推荐教材,系统地阐述了电力系统...