SuperMap Objects 2008的控件和对象
SuperMap Objects 2008由六组可拆分的组件群组成,他们分别是核心组件、三维组件、拓扑组件、布局组件、分析组件、辅助开发组件。
表5.2.1 SuperMap Objects 2008的控件和对象
控件名称 |
主要功能描述 |
| 核心控件 |
 |
SuperWorkspace |
SuperWorkspace提供数据管理控件,专门负责打开、关闭和创建SuperMap数据源。SuperMap提供二维地图显示窗口。两者共同构成核心控件,提供对二维地图数据的创建、编辑、查询等绝大多数功能,以及对地图的各种操作。 |
 |
SuperMap |
|
Super3D |
提供三维地图显示窗口。提供对三维地图的显示、三维与二维数据之间的转换和分析功能。 |
|
SuperTopo |
提供构建拓扑网络的功能,包括弧段求交、节点和悬线的处理,以及构建网络拓扑、拓扑多边形、生成拓扑错误信息等。 |
|
SuperLayout |
提供地图布局排版功能,把制作好的地图通过排版打印出来。 |
|
SuperAnalyst |
提供各种高级分析功能,包括叠加分析、网络分析、栅格分析、淹没模拟等。 |
   |
辅助开发工具 |
包括多种样式的图例、工作空间可视化管理器和属性绑定显示表等。 |
◆ 核心组件(SuperMap Core Controls)
SuperMap Objects 2008 核心组件包括地图控件、工作空间控件和几十个ActiveX对象,核心组件是SuperMap Objects 2008最基础的组件,提供二维地图可视化、地图编辑、空间数据访问、管理、查询和部分空间分析功能,是其他组件的基础。核心组件包括地图控件和工作空间控件。
◆ 地图控件(SuperMap Control)
SuperMap Control 是一个运行时可见的ActiveX控件,负责地图的显示、编辑以及其他屏幕的交互式操作。SuperMap Control还提供了大量事件(Events),用户可以根据自己的需求在这些事件中编写自己的代码,实现特定的功能。与此相关的还有soLayer、soStyle、soSelection等数十个对象。
◆ 工作空间控件(SuperWorkspace Control)
SuperWorkspace Control是一个运行时不可见的控件,它负责管理SuperMap Objects 2008中其他控件和对象所需要的GIS数据和系统中用到的符号、线型和填充库。通过SuperWorkspace Control,您可以很方便地访问到系统中的数据源(Datasource)、数据集(Dataset)、记录集(Recordset)和几何对象(Geometry)等数据内容,还可提取几何对象的所有顶点(Vertex)坐标和属性数据。与此相关的还有soDataSource、soRecordset和soDataset等数十个对象。
SuperMap GIS大型空间数据引擎SuperMap SDX+ 就集成在SuperWorkspace Control中。当构建大型GIS应用系统时,用户经过授权就可以启用SuperMap SDX+,从而实现将空间数据和非空间数据一体化存储到Oracle、SQL Server和Sybase等关系型数据库中,并在系统中提供更多更高级的功能,如海量数据管理、并发访问和权限控制等。
◆ 三维组件(SuperMap 3D Control)
三维组件是SuperMap Objects 2008中用于三维建模、三维分析和三维可视化的组件。
三维组件中的Super3D控件是一个三维可视化控件,三维数据显示在Super3D窗口中,其视觉效果逼真,地形的起伏、地物之间的空间位置关系等都一目了然。Super3D窗口中的三维地形还提供了光照、雾化和材质贴图等修饰渲染的功能。
三维组件还提供了三维建模和多种基于三维地形的空间分析功能,如:挖方/填方、洪水淹没、可视域、多点可视性、坡度、坡向、表面面积、表面距离和体积等分析功能。
◆ 拓扑组件(SuperTopology Control)
拓扑处理组件提供了弧段相交、去除冗余点、合并邻近点、去除重复线、合并假结点、去除短悬线和长悬线延伸等拓扑处理功能,经处理后的数据既可创建网络拓扑关系,也可自动构面。拓扑组件还具备2.5维网络拓扑关系构建能力,可避免立交道路相交打断生成与实际不符的结点。
图 5.2.2 SuperMap Objects 2008自动拓扑处理选项
拓扑处理控件中新增拓扑检查的功能。充分考虑了实际GIS数据中存在的一些常见拓扑错误,SuperMap Objects 提供了24种针对点、线和面数据的拓扑规则,用于将数据中不符合特定规则的一些对象标识出来,由用户来决定是否采取进一步的处理。拓扑检查大大提高了GIS数据的质量,有利于后期的分析和各种处理操作。
◆ 布局组件(SuperLayout Control)
布局排版控件主要提供地图排版制作功能。在布局排版控件里,可把在SuperMap Control中制作好的地图和其他布局要素——比如指北针、地图名称、图例和有关文字表格说明等进行混合排版,以制作并打印出符合要求的纸质地图。
◆ 分析组件(SuperAnalyst Control)
空间分析控件是SuperMap Objects 2008新增的控件,主要提供各种复杂和高级空间分析功能。该控件在汇集SuperMap Objects原网络分析、三维建模等分析功能的基础上,还新增了许多栅格分析方面的功能。
基于矢量的空间分析提供:叠加分析、矢量邻近分析、网络分析、动态分段、追踪分析等功能;
基于栅格的空间分析提供:栅格邻近分析、条件提取、概括分析、水文分析、内插表面、统计分析、地图代数、表面分析等功能。
SuperAnalyst还集成了原本包括在核心控件(SuperMap Core Control)的部分对象:网络分析对象(soNetworkAnalyst)、栅格分析对象(soGridAnalyst)和叠加分析对象(soOverlayAnalyst)。通过调用这些对象,可以获得更多的高级功能。
网络分析对象隶属于SuperAnalyst控件,主要提供基于网络拓扑数据集的各种路径分析,比如两点间最短路径分析、多点旅行商问题分析、服务区分析、关键点和关键边分析。这些分析对城市管网、道路交通、电力线、通信线路、物流配送等方面都有着非常广泛而重要的应用。比如车辆自动导航、超市货物配送、邮局服务区分析等。
栅格分析对象隶属于SuperAnalyst控件,主要提供基于栅格数据集的各种分析计算,比如基于栅格数据集的流域面勾绘、流域分水岭勾绘等。这些分析功能在水利建设、道路选线、农业分析等很多领域都有非常广泛的应用。
叠加分析对象隶属于SuperMap控件,主要提供几何对象与矢量数据集之间、矢量数据集与矢量数据集之间的叠加分析功能,比如分析被一个面对象包含的点状地物、被一个线状地物穿越的面状地物、与一个面状地物有公共部分的面状地物等。这些功能在许多空间位置搜索、区域地理分析等方面有着重要的作用。比如城市商业中心区规划分析、区域经济分析等。
说明:核心控件还保留了网络分析对象和栅格分析对象的调用接口,但是这些接口基本在后续版本中不再维护,所以推荐使用分析控件种相应的接口。
SuperMap Objects 2008版本针对很多重要的分析方法进行了改进,使得叠加分析和网络分析的性能得到了大幅度的提高。
◆ 辅助开发组件
除了上述控件和对象外,SuperMap Objects还提供了多个辅助控件,目的是帮助开发者快速开发应用系统。截止到SuperMap Objects 2008,辅助控件主要包括:SuperGridView控件、SuperLegend控件、SuperWkspManager控件。它们的具体功能如下:
SuperGridView控件用于显示属性数据。通常属性数据以记录集的方式提供,如果使用VB或者其它语言提供的Grid控件逐条添加数据,速度比较慢。使用SuperGridView控件,可以直接把记录集绑定到SuperGridView控件中,不需要再进行开发;
SuperLegend控件提供了几种不同风格的图例:树形,列表和下拉框。图例控件显示与之相关联的地图窗口的图层风格和设置,除此,它还提供丰富的右键快捷菜单命令,用户可以通过这些菜单命令来进行图层管理,如该图层是否显示、是否可以选择、是否可以编辑、是否可以捕捉,修改图层的显示风格、制作专题地图等;
SuperWkspManager控件主要是用来帮助二次开发人员统一管理SuperWorkspace中的所有资源,SuperWkspManager控件以树状方式显示SuperWorkspace中的所有资源,包括数据源、数据集、地图、布局、符号库、线型库和填充库等。
由于这些辅助开发控件是针对SuperMap Objects的特点来制作的,所以效率非常高。使用它们不仅能大大减轻开发者的工作量和工作难度,缩短开发周期,而且还可以提高系统的稳定性。
图 5.2.3 辅助开发控件
|