欢迎来到天天文库
浏览记录
ID:28849424
大小:112.00 KB
页数:8页
时间:2018-12-14
《第十章 逐层细化图层.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、第十章逐层细化图层概述在本章中将学习一种特殊类型的地图图层,称为逐层细化图层,它使用户得以执行逐层细化分析和探测。如果地图包含逐层细化图层,用户就可以通过鼠标指向和单击地图的某个区域得到该区域更详细的信息。逐层细化图层所提供的直观、易用的界面使用户得以通过指定和单击来探测数据。第一节“逐层细化”应用程序开发步骤逐层细化应用程序需要相当数量的设置以及精心地准备。主要步骤总结如下:1.获取用来建立多层次逐层细化图层的多种表。可以使用MapInfoProfessional创建表,或者从MapInfo公司或第三方供应商处购买表。2.使用特殊的列和特殊的元
2、数据创建新的空逐层细化表(.tab文件)。元数据为每一张成员表分配层次名,并且标识成员表中的重要列--ID列和标题列。3.把逐层细化表加入地图(例如,把逐层细化表加入所使用的Geoset(s)中,或者通过象Layers.Add这样的方法,把逐层细化表添加到地图中)。4.添加用户接口元素(例如工具栏按钮)到应用程序中,以便用户选择逐层细化工具并单击地图来进行细化。向应用程序添加代码来响应用户对逐层细化工具的使用(即:编写层次结构管理器)。此代码需要检测用户所选择的图元;确定替换图元的子图元;并调用一些方法(DrilldownRemoveFeatur
3、es,DrilldownAddFeatures)来展开或者收缩地图图元。第二节准备“逐层细化”图层要创建逐层细化图层,需要提供由两个或更多MapInfo表组成的表集合。特别地,需要:逐层细化图层的每一层次的详细信息都需要一张MapInfo表。这些被称为成员表。额外会有包含特殊元数据的空表来描述成员表。它被称为逐层细化表。成员表的要求逐层细化图层中的每个图元都必须有标识关键字(可能是字符串,如“NewYork”)。在单个层次中的所有关键字必须是唯一的;例如,州边界层只能包含一个被称为“Washington”的州。但是,对于逐层细化图层的所有其它层次
4、,图元的标识关键字是不需要唯一的。例如,逐层细化图层包含州边界和县市边界,就可以同时有“Washington”州和“Washington”县。“逐层细化”表的要求逐层细化表与其它表不同,它只包含一个文件:filename.tab。逐层细化表的.tab文件必须定义特定的列和元数据关键字,描述如下:逐层细化表必须定义三个标准列:Key、Level和Label。所有这三列都为字符(字符串)列,32个字符宽度。逐层细化表必须包含一系列元数据关键字。元数据关键字语法如下:以关键字begin_metadata标记.tab文件元数据部分的开始。原数据的每一行都
5、有两个元素:关键字和数值。例如,关键字“IsDrilldown”值为“True”。所有的关键字和数值都用双引号括起来。逐层细化表必须包含“IsDrilldown”关键字,且此关键字值必须为“True”。每一个关键字都以字符“”(反斜线)开始。元数据关键字可以层次化地嵌套。层次结构的每一层次用反斜线()符号标记。关键字值限制最多为239个字符。逐层细化表包含DDMapComponentMaps关键字层次结构。在此层次结构中,为每一张成员表指定四个元数据关键字:成员表元数据关键字关键字描述File必需的关键字,指定成员表路径和文件名。L
6、evelID必需的关键字,为此成员表定义标识符。FeatureIDCol指定成员表中包含唯一逐层细化关键字的列号。可选关键字;如果忽略,列号为1。FeatureCaptionCol指定成员表中用来作标注的列号。可选关键字;如果忽略,列号为1。例如,“逐层细化表示例”包含如“DDMapComponentMapsOneLevelID”和“DDMapComponentMapsTwoxLevelID”这样的关键字层次结构。请注意DDMap、ComponentMaps和LevelID是关键字层次结构标准的、必需的部分,而One和Twox是可
7、自定义的。可使用任何喜欢的关键字名代替One、Twox、Twoxx等等;那些关键字名只是用来区分每个成员表的关键字集。“逐层细化”表示例逐层细化表示例内容如下。如果要创建自己的逐层细化表,可以复制该示例到一文本文件,并参照自己的成员表进行修改。!table!version300!charsetWindowsLatin1DefinitionTableTypeNativeCharset"WindowsLatin1"Fields3KeyChar(32);LevelChar(32);LabelChar(32);begin_metadata"IsDril
8、ldown"="TRUE""DDMapComponentMapsOneFile"="C:ProgramFilesMapInf
此文档下载收益归作者所有