版权说明:转载文章请注明出处                                        访问超图公司网站 
 
 

吾家有女初长成——初试SuperMap FDO Provider for SDB/SDX+

超图公司研发中心 石伟伟博士

 

  产品研发背景:
  在规划、设计、测绘等领域,AutoCAD在国内拥有大量的用户,积累了大量的DWG数据,随着GIS应用的深入,不少单位已经基于SuperMap建立了GIS数据库和应用系统。在与客户交流的过程中,不少用户表达了希望能在熟悉的AutoCAD环境中直接编辑和使用GIS数据的愿望。在广泛的用户调研基础上,我们于2007年11月份启动了SuperMap FDO Provider for SDB/SDX+产品的研发工作。通过该产品,AutoCAD用户可在完全包含AutoCAD功能的AutoCAD Map3D2008中直接编辑和使用SuperMap数据。该产品预计于2008年5月正式发布。
  有关该产品的详情,可咨询应用研发中心,张艳女士,

  E-mail: zhangyan@supermap.com,电话:01082938421-8500

 

  应用研发中心启动SuperMap FDO Provider for SDB/SDX+项目已有三个多月的时间了,有很多着急的同事已经开始打电话询问软件开发的进展情况了。作为内部人士,我有幸拿到了SuperMap FDO Provider for SDB/SDX+的一个内部预览版本,便迫不急待的开始了试用之旅。
  第一步先安装Map3D2008。我们用的是AutoDesk公司提供的AutoCAD Map3D 2008试用版。AutoCAD Map3D 2008在国内许多规划设计单位已经有了很多用户了,但在GIS界知名度还不是很高,据说AutoDESK公司将逐步把产品研发的重点由AutoCAD转向Map3D了。软件安装的过程有些长,安装的过程中需要安装Microsoft .NET Framework 2.0的支持文件,看来AutoDesk已经被微软.NET化了。安装完了Map3D,就可以安装SuperMap FDO Provider了。
  因为还没有安装手册,所以我还要求助于开发人员。开发人员告诉我运行一下Install.exe就可以了,照做吧。程序安装的时间不超过两秒种,真的是很简单呀。唉呀,安装完怎么看不到XP的程序上多出个菜单呀?原来,我们的FDO Provider只是一个后台的引擎,不能单独使用的,必须要和Map3D等支持FDO 的软件一起使用。
  好吧,启动Map3D 2008,准备开始。还是非常熟悉的AutoCAD的操作界面。噢,打开菜单里怎么看不到SDB数据和SDX+连接的只言片语?急忙看了联机帮助,原来在Map3D中引入了一个新的数据连接窗口,专门用来连接和管理GIS数据。如下图所示:

 还是非常熟悉的AutoCAD界面,只是右边多了一个访问和管理GIS数据的界面

  在右边的显示管理器中,单击“数据”,选择“连接到数据”,出现了一个选择数据源的对话框,FDO支持的GIS数据类型还真不少,不管其他的了,直接选择“添加SuperMap SDX连接”。


数据源打开方式和SuperMap Deskpro完全一样

  数据源类型里列出了该引擎所支持的数据类型,包括SDB、SQL Server、Oracle的空间数据库和SuperMap SIT影像文件。我们选择了“SuperMap SDB文件(*.SDB)”,采用某城市1:500数据,(很熟悉的选择数据源的界面,完全和Deskpro一样),选择“连接”。AutoCAD Map3D里很快就列出了数据源里所有的数据集(Map3D里把数据源的信息叫做模式。模式这个词虽然很流行,但用到GIS里还是觉得有些别扭)。开发人员告诉我,目前提供的Provider中点、线、面、文本和CAD数据集都已经得到支持了。Map3D里提供了很多投影方式,我们可以给数据配上正确的投影信息(开发人员告诉我,如果SuperMap的数据有投影的话,大部分投影AutoCAD Map3D是可以自动识别的)。好,不多说了,把所有的数据集都选上,(我要测试一下AutoCAD Map3D究竟能装载多少数据。原来的AutoCAD打开一个十几兆的DWG数据可就慢得不行了,要知道我们这次打开的SDB文件是160M。然后添加到地图中,添加的过程有些长,我注意到C盘的空间下降很快,可能是Map3D使用了本地缓存)。好了,终于在Map3D的窗口中看到了SuperMap数据(把数据添加到窗口中,然后保存成本地DWG文件,下次打开时速度还是很快的)。先执行一下放大、缩小、平移吧,速度还挺快。在右侧的数据栏里,列出了所加入的各个图层、图层的类型以及图层的可见状态,很专业的一个图例窗口。


Map3D第一次打开大数据时速度比较慢,右边的图例窗口也很专业

  在图例中,可以像在Deskpro里一样对数据的风格、最大最小显示比例范围进行配置,通过合理配置最大最小显示范围,可以加快数据显示的速度。AutoCAD Map3D里设计图层样式的对话框出来的比较慢。Map3D里提供的符号还是比较多的,点状符号可以让用户进行添加,但线和面的符号在Map3D2008的环境里还不能由用户自己添加,有点遗憾。


Map3D里设置图层样式的速度有些慢,但功能还比较强

  选择一个房屋面,查看一下属性吧,这可是GIS的基本功能。出来了,还不错。Map3D里的属性对话框想必是对大数据量作过优化的,显示40多万条记录也没问题。Map3D的对话框上集成了常用的过滤和搜索的功能,用起来还是比较方便的。


Map3D中的查看属性窗口对大数据量支持的比较好,使用也比较方便

  试一下AutoCAD最吸引人的捕捉功能吧,不知道对这么大量的数据是否有效。先创建一个面对象吧,选中房屋面,右键点击创建多边形要素,开始绘制一个多边形对象。在绘制的过程中,各种捕捉方式能都有效的起作用,爽极了。


在图层上点击右键,可根据GIS图层的类型直接创建GIS对象


对于数据量较大的GIS数据捕捉依然有效

  Map3D号称是可以和DWG数据无缝集成使用的。下面我们就测试一下吧。Map3D里引入了GIS要素的概念,所有GIS数据都称为GIS要素。原有DWG中的图形被称之为几何图形。在Map3D里,GIS要素和几何图形之间是可以相互转换的。我们先画了一个DWG的几何图形(实际上你直接打开已有的DWG数据也是可以的),然后选择一个GIS图层,点击右键,选择从“从几何图形新建要素”。再进行框选,确认选择后Map3D会将所选择的几何图形自动转换为GIS要素。怎么样,还比较方便吧。同样的道理,也可以把GIS要素转化为几何图层。


Map3D里提供了“从几何图形创建要素”和“从要素提取几何图形”的功能,可以把DWG对象和GIS对象相互转换


GIS对象被创建后会自动弹出输入属性的对话框

  以前在SuperMap里都无法直接输出DWG数据,我们就用Map3D里试一下吧。点击工具,选择“输出到DWG”,160多兆的数据输出为DWG,可是对DWG的一个考验。不知道Map3D能完成这个“不可能完成的任务”吗?我们拭目以待吧。等了好久,也没有输出成果,看来我们还是应该打消把大量GIS数据转成DWG的想法,毕竟这不是DWG的专长。后来我又换了个几兆的数据,很顺利的就转成了DWG。
  SIT影像格式可是SuperMap里一个非常特色的技术,不仅支持的数据量大,而且显示的速度还非常快。SuperMap FDO Provider for SDB/SDX+里也提供了对SIT的支持。我们选择了一个有600多M的SIT影像,加载和显示的速度都很快。
  好了。匆忙之中体验了一下我们正在研发的SuperMap FDO Provider,感觉还是很不错的。当然小问题还不少,期待产品正式发布时能有更好的表现!



 




→ TOP

 

杂志首页

刊首语
 
 在路上

特别报道

 对话解延德:GIS让数据身临其境

本期焦点

 GIS照亮人生

大赛综述

 我创作我快乐——第五届全国高校GIS应用开发大赛回顾

作品点评

 组件GIS系统开发组分析与展望

 悟,地图的奥秘——评阅第五届地理数据处理组作品有感

 WebGIS的意义

 2007年超图GIS大赛有感
——模块开发组解题

 影响胜利的要素——Web GIS系统开发组作品简评题

评委点评

 发展国产软件,跻身国际竞争

 通向GIS世界的航道

 让我们做的更好

 燎原之火,还需有更高更明亮的火焰

 从事GIS,面向特定背景服务最重要

优秀指导教师点评

 171号作品开发过程点评

 GIS教育 实践为先

 少有凌云志 敢为世界先

亲历大赛

 激情点燃GIS成功的梦想

 大赛,我们成长的时节

 坚持到最后你就是胜者

 GIS大赛助我们成长

 知难而上,收获快乐

 五届大赛的快乐片断

业界动态

 RFID技术防盗 老树也有“身份证”

 《基础地理信息标准数据基本规定》3月1日实施

 计算机世界报:GIS软件不以价格分胜负

 全国经济普查地理信息系统试点潞城市

 2007国产软件测评揭晓 SuperMap GIS获三项表彰

 日文版SuperMap GIS 2008桌面系列产品正式发布

 超图与中国传媒大学共建广电传媒地理信息技术联合实验室

 超图与软件产业基地公共技术支撑体系签约

SPN专栏

 安徽瑞信软件有限公司

SuperMap国际化

 瑞典出差见闻录

 瑞典行

产品速递

 
吾家有女初长成——初试SuperMap FDO Provider for SDB/SDX+

 解读超图导航开发平台
SNE的产品特点及应用发展

技术风向标

 
雄关漫道真如铁,而今迈步从头越——记超图七年测评之路

专题报道

 
GIS与旅游的美丽邂逅

 基于SuperMap GIS的乡村旅游——地理信息系统解决方案

 数字峨眉山地理信息GIS平台

 黑龙江旅游公共信息服务系统

应用案例

 
国家土地督察北京局土地利用遥感巡察系统

 全国土地利用遥感监测查询浏览系统

 石家庄城镇地籍管理信息系统

 农行地图导航及效益测评系统

小贴士

 提问:在SuperMap Objects中如何实现反选?

 提问:在SuperMap Objects中如何绘制岛洞多边形?

 提问:为什么有时候绘制对象会失败?

 当使用IDW方法进行查值得时候,所有参数是正确的,而且进度条也正常运行。但是如果跟踪一下结果,发现定义的soDatasetRaster对象的实例并没有值。更奇怪的是,重新打开这个数据源,发现结果数据集就在那里,而且是正确的。不要觉得奇怪,不是Bug,也没有见鬼。你一定丢掉了一句重要的代码

 在使用工作空间管理器控件时,如果只想使用地图的选项卡,只用来显示地图,那么开始的时候可能会遇到这样的问题。就是打开工作空间之后,显示在控件地图选项卡中的是数据而不是地图,但是如果点击一下地图的标签的时候就刷新显示地图名称了。有点奇怪开始怀疑是缺陷,但实际上并不是。

 设置SQL语句进行查询问题。

 关于soTreeView的几点注意。

 在Delphi中实现三维显示功能的注意事项。



 杂志介绍 |  关于我们 |  订阅杂志 |  欢迎赐稿   版权所有© 2006 中国科学院地理信息产业发展中心 《超图通讯》编辑部