图形文件内含各种图形数据、属性、代码等等,后缀名为TBL,她是XML文件格式。
文件采用多页面形式,所有页面共享同一个windows窗口,因此可以通过换页看到不同的画面。文件
的SheetCount属性返回页面总数,第一个页面是Sheets[0],当前工作的页面是ActiveSheet,页面有很多
特有的属性、方法和事件。
图形对象放置在页面上,按照从下到上的顺序放置,它们的数量是UnitCount,最下面的那个图形对
象是Units[0],每个对象拥有唯一的名字Name属性。图形对象有很多属性、方法和事件。
基本的图形对象是文字、形状或线条,此外就是图形元件,这是由基本图形对象组合而成的,当然一
些图形元件又可以组合出新的元件,我们的图形大厦就是这么建立起来了。
从上面的描述中能够看出,我们似乎有可能把页面当作一个图形元件,因为页面和它上面的图形对象
的关系与图形元件和它内部的图形对象的关系很相似。事实上,Visual Graph的页面正好就是从图形元件
派生下来的。
这样我们就可以顺理成章地考虑把图形文件当做元件库,它上面的每个页面被看作元件。Visual
Graph没有专门的图库格式,它的图库也就是图形文件!这种概念上的统一,将带来极大的便利,用户在
学会画图的时候,同时也就学会了如何制作图库。
当图元被插入其他文件的页面中时,我们看到了页面(图元)的嵌套。这种嵌套带来的好处是巨大的
,因为我们有可能开发更为复杂的图形元件。例如我们可以制作一个列表框元件,它内部有一个滚动条,
而滚动条元件内部是由两个按钮元件、一个划块元件和若干矩形组成,而按钮元件又是由若干线条、矩形
组成的。每一个元件有自己特殊的属性、方法和事件,而它们组合出的新元件又有其他特殊的属性、方法
和事件。熟悉C#和Delphi的程序员都知道,Visual Graph的设计思路和它们极为相似。如果说Visual
Graph图形引擎又是一种编程语言,谁也不应该感到奇怪。
现在再回到页面,其实页面还有两个概念,图层和单元组。
首先是图层,默认状况下,视图只显示当前页面,但还有一种状况,可以允许在画面上同时显示多个
页面,类似一般地理信息系统中的图层概念,页面可以隐藏,也可以锁定。
有时候,一张图上有很多各种各样的图形,为了对它们加强管理,需要进行分组,分组其实只是逻辑
上的分组,并不是真的把一些图形集中组合在一起,例如图形a和b可以是一组,同时a和c又是在另一组。
这些单元组被保存在文件中。
当我们在画图的时候,经常要用鼠标选中某几个图形,在页面上有一个临时性的单元组,叫做选择组
,它是被选择部分的集合。选择组和单元组的唯一差别是它不能被保存到文件中。
图形有运行(Run)和编辑(Design)两种状态,在运行状态,图形可以响应鼠标事件做出动作,而在编
辑状态,鼠标可以选择图形、拖动或者改变图形的大小。
下面是一个典型的Visual Graph视图文件格式:
<?xml version="1.0" encoding="unicode"?>
<vg version="700" gridsize="8" range="0,0,1024,708" bordericons="7" borderstyle="3"
scrollbars="3" windowstate="0" backcolor="$FFFFFF">
<page name="page" bounds="0,0,793.700787,1122.141732" visible="false"
margin="100,100,100,100" paperwidth="2100" paperheight="2969"/>
<sheet name="sheet1" bounds="47,61,158,297" myprop="123">
<circle name="circle1" bounds="47,61,137,117" origin="92,89"/>
<element name="element1" bounds="75,152,158,297" origin="116.5,224.5">
<rect name="rect1" bounds="80,152,158,216" origin="119,184"/>
<rect name="rect2" bounds="75,233,153,297" origin="114,265"/>
</element>
<group name="Group1">
circle1
element1
</group>
</sheet>
</vg>
大致解释一下:
第二行表示文件版本是7版,文件中使用的栅格大小是8(栅格能够方便图形的排版和定位),工作区
的范围为1024 X 708,工作区很大的时候,拖动滚动条能够看到画面上其他部分的图形。
第三行表示打印纸。
第四行表示页面。
第五行表示页面上放了一个椭圆,并且指定了这个椭圆的位置和宽、高,还有椭圆的旋转中心的位置
。
第六行表示一个元件。
第七行和第八行两个矩形是包含在上面那个元件中的。
第十行表示当前页面上有一个单元组,这个单元组包含两个单元。
仔细观察这个文件,它有如下特点:
1、结构简单:
在第一行文件头下面是视图节点vg,这里存放视图类的各种属性(包括自定义属性)。
在页面节点里面是图形节点。如果图形是元件单元,那么这个节点里面可能还会有其他图形节点。
2、扩充性好:
在页面节点中,我们看到有一个myprop属性,该属性中保存了一个整数123,这是一个自定义属性,
Visual Graph系统的自定义属性和普通属性在存储和程序访问上没什么差别。所以非常便于扩充。
<wbr></wbr>
北京图王软件:http://www.visual-graph.com
相关推荐
Visual Graph图形开发平台是的功能特点:完整而庞大的矢量图形系统 二维矢量绘图工具系统 动态图形人机界面系统(HMI) 面向对象的可扩充图形库系统 表格或报表系统 组态监控系统最佳开发工具系统 图形拓扑分析系统。...
Visual Graph是专门处理交互图形的,与具体的业务没有关系,她提供了极其丰富的交互事件和控制命令,使程序员能够专心编写后台系统等与界面无关的部分,然后通过接口与Visual Graph联接,这样,体系结构就十分清晰...
Visual Graph是一款强大的图形化数据分析工具,尤其在电力行业中,它被广泛应用于线损分析与管理。线损,即电力在传输过程中的能量损失,是电力系统运行中的关键问题,对电力企业的经济效益和能源效率有着直接影响。...
在Visual Graph中,这些控件被优化以处理复杂的图形任务,无论是2D还是3D图形,都能够得到精确且高效的渲染。同时,C#和Delphi这样的编程语言支持使得开发者可以利用它们的强大语法和丰富的库资源,进一步定制和扩展...
Visual Graph是一套完整的图形编程语言,能够非常方便地建造各种基于图形的界面, 制作各种行业专用的图形控件,还可以制作丰富多样的报表。她能够和其他开发语言实现互相调用,弥补这些语言在图形(或报表)处理方面...
该系统提供了强大的图形化界面,使得用户能够直观地建立、修改和管理复杂的电力网络拓扑结构,包括发电机、变压器、线路、开关等设备。此外,它还支持自动校验和更新,确保模型的准确性和实时性,为调度决策提供强...
Visual Graph技术文档手册详细介绍了由北京图王软件开发有限公司打造的一款高效的专业交互图形开发引擎——Visual Graph(简称VG)。VG平台旨在为开发者提供一个便捷的工具,用于创建各种图形元件,进行图形管理、...
基于Visual Graph的OnlineDraw图形编辑工具经过近多年的深入研究与应用,有预见性地开发了大量具有潜在应用的功能,长期与用户互相合作,大量吸取用户应用经验,多年来的应用研究试验,Visual Graph终于被打造成图形...
一、Visual Graph重要文件 1.bin\ide.exe是绘图软件,您在此可以设计图库、绘制图形文件,这个软件的所有界面都是可以修改的。 2.bin\vg.dll是ActiveX控件,在许多编程语言中使用,使用步骤如下: a)运行bin\...
《Visual Basic画图控件Flipper Graph Control及帮助全套》 在编程领域,尤其是在开发图形用户界面(GUI)时,控件是构建应用程序的关键组成部分。本文将深入探讨Visual Basic中的一个强大画图控件——Flipper ...
Visual Graph是一套强大的交互图形开发平台,她能非常方便地建造基于图形的界面、制作各种图形元件、实现图形管理、图形建模、制作监控系统、表单系统、绘图系统、流程设计、CAD软件等。她提供功能非常强大的ActiveX...
Visual Graph在图库设计方面是无与伦比的,它不象许多图形软件只能设计简单的组合图形,也不象许多软件必须提供插件才能实现个别复杂的图形,它的基本图形元素虽然只有三种(字、形、线),却能够通过嵌套技术、...
“Graph.ocx”文件是Graph2.0版的控件本身,它是一个ActiveX控件,适用于支持ActiveX技术的开发环境,如Visual Basic 6、Visual C++或Delphi等。ActiveX控件是一种可重用的软件组件,可以直接嵌入到应用程序中,简化...
标题中的"major visual graph loader2_sorry_VCLDelphi_"暗示了这是一个与图形加载相关的Delphi项目,可能是一个库或组件,用于在VCL(Visual Component Library)环境中处理图形数据。"VCLDelphi"标签进一步确认了...
2. **MSChart控件**:MSChart是Microsoft提供的一种用于.NET Framework的图形控件,它允许开发者在Windows Forms应用程序中创建各种图表类型,如折线图、柱状图、饼图等。在Visual Basic中,可以通过在设计视图中...
Visual Graph在图库设计方面是无与伦比的,它不象许多图形软件只能设计简单的组合图形,也不象许多软件必须提供插件才能实现个别复杂的图形,它的基本图形元素虽然只有三种(字、形、线),却能够通过嵌套技术、...
3. "_src"通常表示这是源代码的形式,这意味着包含了编写控件的原始编程语言文件(可能是C++、Visual Basic等),开发者可以查看、修改和扩展源代码以满足特定需求。 使用这样的3D图形ActiveX控件,开发者可以轻松...
在Delphi的VCL(Visual Component Library)框架下,SimpleGraph作为一个组件,可以直接拖放到表单上,然后通过编程或设计界面来配置和操作。开发者可以利用它提供的各种图形对象,如线条、形状、箭头等,来构建复杂...
Graph OCX是一个图形控件,常用于Windows应用程序中进行图形绘制和处理。在这个例子中,我们看到的是一系列与使用Graph OCX相关的源代码和资源文件。这些文件主要用于创建一个可以展示和操作图形的应用程序。 1. **...
《Delphi控件实现流程图绘制:SimpleGraph v2.90详解》 在软件开发过程中,流程图是一种直观表达程序逻辑和系统流程的重要工具。本文将深入探讨一个基于Delphi开发的流程图控件——SimpleGraph v2.90,它是一个开源...