基于ArcGIS的地图符号库建立及符号化实施

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
14 文章编号: 049420911( 2003) 0120014204
测绘通报 中图分类号: P208
2003 年 第 1 期 文献标识码: B
基于 ArcGIS 的地图符号库建立及符号化实施
祁华斌1 , 艾廷华1 , 胡 珂2
( 1. 武汉大学 资源与环境科学学院, 湖北 武汉 430079; 2. 天津市测绘院 地理信息中心, 天津 300381)
4. 设定字体文件名, 生成字体文件并安装该字 体;
5. 在符号设计系统( Style Manage) 已创 建的地 形图符号库的点符号子库中一一导入已安装字体文 件中的点符号, 利用预览窗放大确定其定位点, 设置 符号名及其地物分类码, 完成点状符号子库的创建。
虑的图形 参量为: 实线{颜色, 粗 细}, 点符号线{颜 色, 大小, 方向, 比例}, 虚线{颜色, 粗细, 比例结构}, 齿线{颜色, 粗细, 比例结构}; 对于某些特殊的线状 符号, 如电力线及其符号, 由于其符号配置的不等距 性( 转折点处必须配置符号) , 不能用以上 4 种基本 线型组合而成, 可通过上述第 2 种符号设计途径, 即 通过 ESRI 公司提供的ArcObjects 组件以二次开发的 方式定制符号, 此时符号化功能模块直接调用该符 号定制程序实时生成符号进行符号化。
在该过程中, 符号化前应对地理数据做初步的
审查, 如面状目标的边界坐标串是否封闭; 符号化时 符号的颜色、样式、大小由符号属性特征决定, 需要 从相关属性表提取数据后判断计算符号参量设定; 符号化后应做进一步的处理, 如毛刺短线的删除( 在 建拓扑关系弧段求交时往往产生细小的短线目标) 、 线目标上垂分点弃除等。
16
测绘通报
2003 年 第 1 期
建立这种空间实体与符号之间的联系方法可以在需 要的情况下随时改变地物的显示符号, 而且多种地 物可以选择同一符号输出, 不必重复设计相同的符 号。编码对照 表文件可与符号 库作为一个文 件保 存, 也可单独作为一个文件保存( 一般以文本文件 ( * . txt) 的形式存在) , 为了便于修改以及符号化功 能模块对文件信息的读取, 本文所涉及的编码对照 表文件单独作为一个文件保存, 且其文件编写形式 如下:
二、符 号库 的创 建 和编 码 对照 表文 件 的 建立
ArcInfo 8. 01 的 ArcMap 模块中提供了交互式符 号设计系统 Style Manage, 它可同时对多个符号库进 行管理, 各符号库之间相互独立、互不影响, 因此它 满足地形图多比例尺系列符号库管理的要求。每个 符号库又细分为若干子符号库, 如点符号库、线符号 库、面符号库等, 实现对不同类型符号的分别管理。
一、引 言
地图符号是地图的语言单位, 是可视化表达地 理信息内容的基础工具; 地形信息符号库是地形图 符号的汇集系统, 它利用计算机进行管理, 实现地形 图符号数据的存储、检索和更新。当今流行的地理 信息系统和专用的计算机地图制图软件主要采用符 号库的形式来管理地图符号, 并用交互式设计的思 想来实现地图符号的制作。目前国内外 GIS 相关软 件符号库中符号设计的途径主要有 4 种: 一是文本 编辑器设计方法, 建立符号的文本描述, 其特点是设 计速度慢, 不能实时观察所设计的符号; 二是采用系 统提供的二次开发语言编程实现, 该方法主要应用 于特殊符号的绘制; 三是利用系统本身的图形编辑 功能将符号当作普通的图形块设计制作, 追加符号 码等描述项后存储到符号库中; 四是提供符号设计 界面, 用户可将系统本身提供的基本符号与自定义 的简单符号( 如点符号) 进行某种组合、位移、放缩后 得到制图输出所需要的复杂符号( 如复杂线型和面 状填充符号) , 这是目前较为流行的符号设计方式。 本文基于 ArcGIS 8. 01( Desktop 版) , 结合第 2 和第 4 种符号的设计途径, 在充分分析地形图图式的基础 上, 提出了一套地形图 符号库的创建 方案, 并 运用 ESRI 公司提供的基于接口编程的组件 ArcObjects 开 发了一个符号化功能模块, 用于地形图的符号 化。
2. 功能模块设计 考虑到功能模块的可移植性和可重用性, 符号 化功能模块的开发采用在通用开发平台 Visual Basic 上应用基于 COM 技术的 ArcObjects 的方式, 最终符 号化功能模块以动态链接库( Dlls) 的形式提供, 这样 符号化 功能 模 块不 仅可 以 在 ArcInfo 的嵌 入 式的 VBA 中使用, 而且可以通过其提供的接口在其他开 发人员 使用 ArcObjects 控 件开发 的独 立 系统 中使 用。 ArcObjects 是 ESRI 公司提供的基于接口编程的 组件, 它是形成 ArcInfo 8 的技术主体, 它包括一个技 术框架、一个面向对象的地理数据模型、一个软件组 件库和一个丰富的面向开发人员的资源集合。同其 他 COM 组件一样, 任何能够集成 COM 组件的应用 都可以嵌入 ArcObjects; 同时在 通用的 开发平 台上 ( 如 Microsoft Visual Studio, Delphi 等) , 开发人员也可 以用 ArcObjects 建立自己独立的应用。 根据结构化的符号设计思想, 以地图符号图元 为对象, 计算机中符号化的常用方法有 3 种, 即程序 法、信息法和综合法。程序法是每一个地图符号或 同一类的一组地图符号对应一个绘图子程序; 信息 法是通过程序处理已存在符号库中的信息块的方法 来完成符号的绘制; 综合法是将程序法与信息法相 结合进行绘制地图符号的一种方法。由于本文所讨
论的符号化功能模块不仅要处理已存在符号库中的 信息块, 而且要调用符号定制程序, 因此用符号化功 能模块进行符号化时应采用综合法。符号化功能模 块的具体实现步骤如下:
1. 将接口传入的 IMap 对象作为当前视图, 设 置地图单位和比例尺;
n 编码 1| 符号 1| 颜色 1 编码 2| 符号 2| 颜色 2 , 编码 n| 符号 n| 颜色 n 其中 n 为地物的个数, 编码为 7 位代码, 符号 为 5 位代码, 颜色为 9 位代码。
三、符号化功能模块的设计
1. 符号化基本过程 符号化功能模块实现按编码对照表文件中建立 的地物编码与符号库中的符号之间的一一对应关系 将制图输出范围内的空间实体用指定符号绘制并输 出( 即符号化) , 以其为核心的符号化基本过程( 见图 4) 如下:
Construction of Symbol Database and Implementation of Visualization Based on ArcGIS
QI Hua2bin, AI Ting2hua,HU Ke
摘要 : 地图符号是地图/ GIS 表达空间信息的语言单位, 通过符号参量传输表达不同的信息认 知内容; 符号库是 符号描述信息的 集 合。提出一套基于 ArcGIS 8. 01 的地形信息符号库的创建方 案, 并针对 这一方案, 运用 ESRI 公司提供 的基于接 口编程的 组件 Ar2 cObjects 开发了一个符号化功能模块, 对地形数据的点、线、面目标进行符号配置及可视化表达。 关键词: 地形信息; 符号库; 符号化; COM 技术
收稿日期: 2002207208 作者简介: 祁华斌( 19762) , 男, 湖北应城人, 硕士生, 主要从事地理信息系统的应用研究。
2003 年 第 1 期
测绘通报
15
号库中所需的各点状符号, 保存其块文件, 并分别转 为 bmp 文件;
3. 在造字软件( 如 Font Create Program 3. 0 等) 中新建一字体文件, 将各点符号的 bmp 文件导入字 体文件的字体模板中( 见图 1) , 调整符号位置, 使其 位于字体模板坐标系的设定范围内;
图 来自百度文库 / 品0 字形面状填充符号的生成
4. 编码对照表文件的建立 编码对照表文件 是建立空间实体的用户标识 UID( 地物编码) 与符号库中的符号标识 SID( 符号) 之间的一一对应关系的文件, 它是符号化功能模块 用以对空间实体进行符号化的依据, 当用户要改变 制图范围内某种地物的显示符号时, 只需修改文件 中该地物的用户标识与符号标识之间的对应关系。
图 2 复杂线状符号的生成
图 1 字体文件中的点状符号模板
2. 线状符号制作 线状符号是长度在地图上依比例尺表示而宽度 不依比例尺表示的符号, 部分符号的宽度与目标的 空间分布范围有关, 如陡坎等。线状符号符号化的 结果与符号的配置方向和数字化采集的方向有关, 因此对于有向线状符号的制作, 要么根据相反的符 号化方向制作 2 个不同的线状符号, 要么在设计线 状符号之前先约定符号配置方向( 如沿前进方向左 侧生成符号) 和线状符号数字化采集方向( 如从上到 下、从左到右采集数据) 之间的关系, 从而在制作符 号时只需按约定的方向制作一个符号。 任何线状符号都可以看做是由具有单一特征的 线状符号或点状符号组合而成, 这种组合要考虑叠 置顺序、在基线上布局的偏移量、符号单元的比例关 系等, 一种符号往往可以通过多种基本符号采用不 同的组合方式生成, 在设计时应力求简单, 基于这一 思想对线状符号进行设计。如图 2 中的线状符号可 以看作是由实线、虚线和齿线 3 种基本线型组合而 成。通过对地形图图式的分析, 地形图中的线状符 号可以抽象为实线、虚线、点符号线、齿线等 4 种基 本线型, 图式中的绝大多数线状符号都可通过 这 4 种基本线型组合而成, 各种基本线型符号设计时考
图 4 地图符号化的基本过程
1. 根据制图输出范围从地理数据库中 获取要 符号化的地物的几何坐标和属性参数;
2. 根据属性参数表中的地物编码到编 码对照 表文件中找到地物符号化时的符号代码和符号显示 颜色等参数;
3. 根据符号代码到符号库中获取符号 描述信 息;
4. 符号化功能模块根据地物的几何位 置信息 和符号描述信息对地物进行符号化, 并将符号化结 果输出。
3. 面状符号制作 地形图上的面状符号是在 2 维图上沿各方向都 依比例尺表示的符号, 在轮廓线范围内配置不同的 点状符号或绘制晕线或着染颜色。 根据地形图图式, 地形图中的面状符号填充图 案可抽象为 3 种基本类型: 一是在轮廓线范围内以 不同的倾角、不同的间距、不同的实、虚部长度的平 行线簇来构成不同的图案, 即阴影线填充图案; 二是 在轮廓范围 线内 以不同 的间 距、不 同的 布点 形式 ( / 井0字形或/ 品0字形) 、不同的旋转角绘制点状符 号以构成图案, 即点符号填充图案; 三是在轮廓线范 围内填充颜色, 即颜色填充图案。对于第 1、2 种类 型填充图案的面状符号的制作, 同线状符号的制作 相似, 也可通过点状符号、线状符号或面状符号组合 而成( 见图 3) ; 对于第 3 种类型填充图案的面状符 号的制作, 只需从颜色模板中选择自己所需要的颜 色即可。
1. 点状符号制作 点状符号是不依比例尺表示的小面积地物或点 状地物符号, 根据 Bert in 符号设计的思想, 点状地图 符号的参量描述有大小、方向、色相、灰度、纹理、密 度等, 通过这些参量及其组合在定量、定性上表达不 同的地理信息内容。它的图形比较固定, 不随它在 图幅的位置的变化而变化。点状符号由基本的几何 构造单 元组合而成, 可分为点、线段、折线、样条曲 线、多边形、矩形、三角形、圆、圆弧等 9 种基本图元。 点状符号都有明确的定位点和方向性, 但点状符号 设计应留有一定的/ 自由度0, 在符号化配置时允许 用户实时修改, 如大小、方向、颜色, 不能将所有参量 都固定。在 ArcMap 下创建点符号库步骤如下: 1. 在 ArcMap 的 符号设计系统 Style Manage 中 新建一符号库, 并根据用途给符号库命名( 如 1B500 地形符号库) ; 2. 利用 AutoCAD( R13 以上版本) 提供的强大的 制图及编辑功能, 在 AutoCAD 中按图式要求绘制符
相关文档
最新文档