免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 3297|回复: 2
收起左侧

[经验分享] SMALLWORLD开发的电力GIS系统数据地图导入的研究与应用

[复制链接]

1986

主题

10万

铜板

98

好友

技术员

Network change life, change t

积分
17879

斑竹勋章地信元老

QQ
发表于 2009-11-20 10:11 | 显示全部楼层 |阅读模式
提 要: 针对SMALLWORLD 开发的电力地理信息系统中基本数据地图的导入问题, 详细阐述了采用SMALLWORLD 的DXF 翻译器, 把DXF 文件转化为SMALLWORLD 所用的地理图形的方法, 简单、易行、精确, 为进一步开发奠定基础。
    关键词: SMALLWORLD; 地理信息系统; 数据地图
1 引言
    地理信息系统GIS(Geographic Information System ) 是为获取、存储、检索、分析和显示空间定位数据而建立的数字化的计算机数据库管理系统。GIS利用现代化计算机图形和数据库技术来输入、存储、编辑、查询、分析、显示和输出地理图形及其属性数据, 是集地理学、几何学、计算机科学及各类应用对象为一体的综合性高科技。由于GIS具有上述的特点, GIS不但可以广泛应用于国土资源调查、环境评估等方面, 更可以深入到区域规划、公共设施管理、能源、电力、电信等与国民经济相关的重要部门。随着GIS技术的不断发展和完善, GIS不但将在国家宏观决策、国家安全建设领域起着重要作用, 而且将步入寻常百姓家, 深入到日常生活的方方面面。
    目前, 国外已经将GIS广泛应用到电力系统的各个领域, 如: 配电管理、输电管理、电力设施管理、停电管理、用电营业管理等等。而我国GIS在电力系统领域的应用还仅仅处于起步阶段。
    电力系统从发电厂、输供电线路(架空线、电缆)、变电站、配电所直到千家万户电度表, 大量各种各样、不同规范的电气设施分布在广阔的地域和空间。如何充分合理利用目前有限的电力资源, 成为摆在电力决策者面前的首要问题。然而面对纵横交织的电网分布、日益复杂的电力设施、时刻变化的电网信息、不断变迁的城市道路与建筑, 尤其是电网中许多与空间位置有关的数据, 如何在需要的时候迅速准确地提供完整的信息, 也就是如何将各种图形、地图、数据属性信息统一管理并达到共享。所有这些问题的解决都依赖于GIS。在电力系统中, 输电系统的运行、雷电系统的定位、电力设施的管理、供配电系统的运行和维护、计划检修、故障管理、报装管理、停电管理、电网规划、用电变更、电力营销等, 都少不了地理信息, 因此, 电力GIS是电力系统, 特别是配电管理系统(DMS) 的重要工作环境和基础。GIS为供电企业的现代化管理提供了新的途径和手段。
    Smallworld 是当代新型的GIS开发软件, 它以电力、电信等管网系统空间信息应用需求为背景, 充分吸收了地理学专业GIS的精华, 摒弃了传统GIS的沉重历史包袱, 以面向对象(Object-Oriented) 技术为基础,采用了开放式的体系结构、分布式数据库管理系统和组件对象模型等计算机技术的最新成果, 其性能在电力、电信信息化管理方面遥遥领先于其他GIS软件。
    1999 年7 月, Smallworld 进入中国。在竞争激烈的中国GIS市场, 虽然Smallworld 进入时间不长, 但已被上海市电力公司市东供电公司、上海市供电局闵行供电所、浙江省杭州电力局、湖南省株洲供电局、河南省电力局等单位选用, Smallworld 正成为中国GIS市场一支充满活力的中坚力量。
2 数据地图的导入
    在Smallworld 中导入数据地图是GIS开发中的第一步, 也是非常重要的一步。一般数据地图是用AutoCAD 或其它绘图软件绘制的, Smallworld 对这些数据地图的导入需要很复杂的过程。数据地图的顺利导入是建立精确、稳定、使用方便的数据库的前提。数据地图的导入有很多方法, 比如采用FME加载等。本文介绍一种简单、易行的方法,以DXF 数据地图文件为例, 采用Smallworld 中的DXF 翻译器来实现数据地图的导入, 不需要安装其它软件即可迅速完成AutoCAD 所绘制的DXF 文件数据地图的导入。
2. 1 创建加载DXF 翻译器的新数据库
    检查DXF 软件组件是否在Smallworld product中, 检查是否有DXF 翻译器使用许可。准备完成后, 做如下工作:
    (1) 首先创建一个新的数据库, 为后面的工作做好准备。打开Smallworld\product 目录下的gis. mi 数据库, 用命令create- database (“目录”) , 在指定的目录下创建新的数据库。然后用gis- init (“目录”) , 对刚建立的数据库进行初始化。
    (2) 装载软件组件。Smallworld 中有一软件组件控制器, 加载数据地图导入所需要的软件组件。software- component- manager. initialise( ) , 初始化软件组件控制器。software-component-menu. activate() ,激活软件组件加载程序。选中所需要的ace-config,dxf-input- translator, dxf-output- translator, styleconfig 五个软件组件, 点击add 按钮, 加载上述组件。
    (3) 用system.gc (- ture) , 命令清除缓存内的垃圾, save-image (“目录\文件名”) , 存盘。
    (4) 创建DXF 的数据集分区, (包括创建DXF 输入转换表, 在DXF 的数据集中创建DXF 对象, 创建DXF 输出转换表) : create- dxf- dataset (- unset, - unset, - unset, - unset, : gis) , 创建DXF 数据库文件, 并把DXF 数据库添加到空间对象控制器(SOC) 中。命令中的四个参数分别为空间对象控制器所在目录,DXF数据库文件的目录,DXF 数据库文件名,DXF 数据库文件需要重命名时的文件名。在打开的新数据库进行操作时, 此四个参数可以选择为默认, 此时把DXF 数
据库文件dxf. ds 建立在ace. ds 同一个目录下。
    (5) 建立DXF 连接。m anage- soc () , 打开所有数据集, 建立连接。在searchpath 中填写正确的目录, 并把所使用文件files 设定为dxf.ds。
    (6) 创建DXF 对象。create- dxf- objects () , 创建DXF 对象, 这样在进行DXF 数据地图转换的过程中,可在用户数据集中形成几何图形。完成以上步骤后清除缓存垃圾并存盘。
2. 2 为用户设置DXF 功能许可
2. 2. 1 设置DXF 翻译器菜单
    完成2. 1 的步骤后,DXF 翻译器的输入输出等软件组件已经加载到Smallworld 中, 需要建立DXF 翻译器的菜单, 激活DXF 翻译器。步骤如下: (1) 在主图形和case tool 中创建自己的版本, 并设置成可写; (2)创建菜单条目。点击应用程序配置菜单, 选中功能按钮的菜单选项, 为DXF 翻译器添加菜单。首先设置下拉式菜单名称为DXF 翻译器, 在菜单条目细节编辑器中为菜单设置DXF 输入和DXF 输出两个选项。并分别用activate- dxf- import- editor() 和activate- dxf- export- editor() 激活DXF 输入编辑器和DXF 输出编辑器。点击更新, 把添加的菜单加入到打开的GIS图形中。
2. 2. 2 设置DXF 对象模型
    在应用配置环境ACE (Application Config Environment ) 中, 选中所有与DXF 有关的选项, 如DXF Dimention,DXF inserts,DXF lines,DXF Load History 等, 点击更新, 使选中的选项加入到对象控制器。在对象控制器中选中刚加入所有DXF 选项, 使之可视。这样, 在GIS数据库中为DXF 设置了对象模型, 使用DXF 翻译器导入DXF 对象为可能, 并能够显示。
2. 3 DXF 数据地图文件的导入
    当完成上述步骤后, DXF 翻译器就可以正常工作, 可对DXF 文件进行输入、输出的转换。现将使用DXF 输入进行数据地图的导入操作。
2. 3. 1 在数据建模子系统(case tool) 中建立对应模型
    首先对所要转入的对象在case tool 中建立所对应的模型。现以要导入等高线为例。打开case tool, 点击键盘Esc 键, 鼠标变为添加轨迹的提示符“×”。在图中选中所要插入的位置, 点击, 留下轨迹。在菜单中选择编辑对象, 填写name 为“denggaoxian " , externalname 为“等高线”。建立相应的几何模型和物理字段。
几何模型可如下建立: name 为“location ”, external name 为“位置”, 几何图形类型为simple- chain; 物理字段可如下建立: name 为“id”, external name 为“Id”,字段类型为sys-id。点击插入。完成等高线所对应的模型的建立。
    在case tool 菜单中选择“应用到数据库”按钮, 把建立的等高线的模型应用到数据库中。在数据库的应用配置环境中选中等高线并更新, 在对象控制器中选中等高线, 使之成为可视。并编辑等高线的样式, 包括线条的颜色、宽度、线形。这样, 转入的等高线数据可以按照指定的样式在GIS图中显示。
2. 3. 2 DXF 翻译器对DXF 文件的导入
    现在使用DXF 翻译器, 进行数据图形的导入。
    (1) 文件到DXF 对象到转换。点击菜单中的DXF输入翻译器。在激活的输入翻译器列表中选择转换方式为“文件到dxf对象”, 选择DXF 源文件(. dxf 文件,此例中为等高线图层) , 设置转换比例。然后单击“翻译”。此时翻译器把DXF 文件转换为DXF 对象, 如图1 所示。

此主题相关图片如下:

图1 等高线转入后形成的等高线的DXF对象
    (2)DXF 对象到用户对象到转换。在激活的dxf输入翻译器选择转换方式为“DXF 对象到用户对象”,并重新选中等高线的源文件。然后选择“编辑表格”按钮, 单击“dxf 块编辑”弹出dxf 块编辑器。在其中单击浏览, 打开对象浏览器, 选中所有记录, 然后单击dxf块编辑器中的exp lode?, 选中yes, 使所有的DXF块转换成为用户对象成为可能。然后单击“全部更新”, 并退出dxf 块编辑器。再单击编辑表格中的“dxf 线翻译”, 激活dxf 线翻译器。单击“浏览”, 选中所有记录,单击“编辑”, 在线翻译编辑器中单击“映射”, 选中刚才建立的表, 即等高线模型, 双击它, 单击线翻译器的更新并退出dxf 线翻译器。在DXF 输入翻译器中点击“翻译”, 重新翻译, 即可得到等高线的初步数据地图。
    (3)进入对象控制器中, 双击dxf load history 弹出其编辑器。获取记录, 然后单击“删除dxf 对象”按钮, 删除刚加载的等高线DXF 对象。
    (4)选中主界面中的图层, 单击编辑菜单中的“删除选择”, 删除边框。得到如图2 所示的最终的等高线数据地图。用户可以自定义等高线的样式来改变等高线在GIS图中的线条样式。


此主题相关图片如下:

图2 最终导入的GIS可用的等高线数据地图
    以上是以等高线为例进行数据地图的导入。按照这样的方法, 再导入其它的数据图层包括铁路、建筑物、河流、公路、道路中心线、绿地、高压线、低压线等数据图层, 即可得到完整的数据地图, 如图3 所示。这样可以在这个数据地图上根据实际情况开发出实用的电力GIS系统。

此主题相关图片如下:

图3 最终导入GIS可供使用的数据地图

3 结束语
    GIS是近年发展迅速, 其内涵和外延正在不断变化。由于地理信息在人类生活和国民经济中的重要作用, GIS在未来的几十年中将保持高速发展的势头, 成为高科技领域的核心技术。而数据地图的导入是GIS研发过程中的第一步, 是最重要也是最直接影响以后研发工作的一个重要环节。准确、迅速地导入数据地图将给设计和研发功能强大的GIS系统节省时间和提供可靠的保障。
    本文向各位读者介绍的这种直接采用Smallworld 自带的DXF 翻译器导入数据地图的方法, 具有实用、简便、迅速、精确的优点, 是目前Smallworld 开发的GIS最实用的方法。此方法的优点决定了它将在Smallworld 开发的GIS中得到广泛的应用。
轻轻的我来签到了,想带走一堆铜板...

3

主题

169

铜板

0

好友

助理工程师

Rank: 5Rank: 5

积分
167
发表于 2011-5-8 10:58 | 显示全部楼层
smallworld是通用公司下属的地理信息系统,其特长在于处理线状地物,如地下管网、电力、铁路等对象,在我国的应用领域目前还相对较小,还需大力发展与培育!

13

主题

4765

铜板

137

好友

教授级高工

大智若愚

Rank: 12Rank: 12Rank: 12

积分
1387

宣传勋章

QQ
发表于 2011-5-12 20:57 | 显示全部楼层
:zt:zt:zt,看不懂,呵呵
该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表