Oracle数据仓库的分层管理器解决方案(2)
文章作者 100test 发表时间 2007:03:14 13:56:16
来源 100Test.Com百考试题网
2、分层管理器开发步骤
分层管理器应用程序需要进行许多设置和准备。主要步骤汇总如下:
(1)获取多层逐层细化图层时要使用的各个表的数据。
(2)创建一个包含特殊列和特殊元数据的新的空逐层细化表(.tab 文件)。元数据为每个组件表指定一个层名,同时标识组件表中的重要列标识列和标题列。
(3)将逐层细化表加入地图。例如,将逐层细化表加入您使用的Geoset,或通过编码方法将逐层细化表加入地图。
(4)在应用程序中添加用户界面元素,响应逐层细化事件。
(5)添加代码,响应用户对逐层细化工具的使用(也就是说编写分层管理器)。
(6)该代码需要检测用户已选择的图元;确定需要添加的子图元和需要删除的图元;调用应用程序来实现分层或汇总地图图元。
实例分析
由于遥感影响数据量特别巨大,对于数据的存储、管理、分析和有用图形部分显示就显得非常困难,这需要用关系——对象数据库对数据进行存储。在图形显示时,为了使取得有用图层信息,减少加载时间和提高编辑效率,需要对图形进行分层显示,即用到了前面介绍的分层管理器技术。本文用VB作为编程语言,MapX作为GIS组件进行二次开发来实现分层管理技术。
1、构建分层管理器
构建逐层细化表,其表结构为:
Definition Table
Type Native Charset "WindowsLatin1"
Fields 3
Key Char (32).
Level Char (32).
Label Char (32) . |
元数据关键字和对应值为:
begin_metadata
"\IsDrilldown" = "TRUE"
"\DDMap\ComponentMaps\One\File" = " Tab_YNP.TAB"
"\DDMap\ComponentMaps\One\LevelID" = " Tab_YNP "
"\DDMap\ComponentMaps\One\FeatureIDCol" = "3"
"\DDMap\ComponentMaps\One\FeatureCaptionCol" = "1"
…(其他各组件层的关键字和值与此相同)
"\DDMap\HierarchyManager\IsDLL" = "TRUE"
"\DDMap\HierarchyManager\ID" = "SomeDLL.dll"
"\DDMap\HierarchyManager\InitialLevel" = " Tab_YNP "
end_metadata |