地图符号系统的设计与实现
发布时间:2021-06-07
发布时间:2021-06-07
地图符号系统的设计与实现
本文由开到荼靡223贡献
pdf1。
测绘信息与工程 Journal of Geomatics 2004 Dec. ; 29 (6) 文章编号 :100723817 (2004) 0620025203 以及 CorelDraw 等 等
[4~10 ] [1~3 ]
25
中图分类号 :P283. 1 文献标识码 :B
地图符号系统的设计与实现
( 武汉大学资源与环境科学学院 ,武汉珞喻路 129 号 ,430079)
张园玉 霖 毅 李 龙 尹章才 申 应 李志涛 菁 洋 黄 梅
摘 要 设计并实现了一套地图符号系统 ,提出了线状符号的附属属性设置实现 ,并采用了程序符号的思想实现 一些相对特殊的如沙丘 、 河流 、 沼泽等地图符号 ,成功地对国家标准系列地形图图式进行了设计 ,实现了各种比例 尺下的地图符号的绘制 ,完成了在 Visual C + + 平台上所研制的地图符号软件系统的设计与开发 。 关键词 地形图图式 ; 地图符号系统 ; 地图符号 ; 程序符号 部填充可通过点符号或线符号 ,以一定的方式如井字 、 品字 、 随机排列构成 。线状符号表达呈线状分布的地物 ,但有些符 号 ,如陡崖 、 沙砾滩符号等 , 同时又具有一定的分布范围 , 可 定义成半线半面状符号 。另外 ,线状符号和面状符号中都包 含了一些不能制作或不方便制作的需要单独的程序来绘制 的地图符号如新月型沙丘 、 河流 、 沼泽符号等 ,将其定义为程 序符号 。
1. 3 地图符号库系统的类结构
一般来说 ,地图符号的设计和实现方法分为两种 : 一是
在已有软件的基础上利用其二次开发语言及自身的图形编 辑功能进行自定义符号 ,如 ArcInfo ,AutoCAD ,MapInfo ,ArcView
; 二是利用程序语言自己开发符号设计
软件平台实现符号 , 目前最 流 行 的 就 是 OOP 或 COM 技 术 。针对目前符号库系统都是面向计算机而不是面向 地理信息的可视化 ,忽略了地图符号中一些计算机较难实现 的或比较复杂的特殊符号 ,如难以处理复杂的线 、 面符号 [4 ] , 不能绘制河流渐变线符号 [5 ] 等情况 ,选择对比了大中小比例 尺中如 1∶ 000 ,1∶ 000 ,1∶ 000 ,1∶ 000 000等比例尺下 5 100 250 1 的符号 ,包括普通地图符号和相对特殊的地图符号 , 设计了 一套地图符号系统 , 在 VC + + 6. 0 环境下开发并完成了该系 统。
根据上述分析 , 系统的类结构为多个点图元 、 线图元和 面图元对象聚合成一个符号基类对象 ,而一个符号基类对象 又包含于点状符号 、 线状符号对象中 , 多个点状符号和线状 符号对象聚合而成一个面状符号对象 。点 、 、 线 面状符号被 符号库类对象包含 , 其间没有复杂的继承关系 , 只是一种管 理组合机制 ,充分体现了面向对象管理的优势 , 提高了系统 的效率 。以符号数据库类为例 :
class CSymbolDataBase { public : ) ΠΠ调用点 、 、 void Symbolize ( CDC 3 pDC , long lSymCode , … ; ΠΠΠ 线 CAreaSymbol 3 arrayAsym ; ΠΠΠΠΠ ΠΠΠΠ面符号对象集合 CLineSymbol 3 arrayLsym ; ΠΠΠΠΠ ΠΠΠΠ线符号对象集合 CPointSymbol 3 arrayPsym ; ΠΠΠΠΠ ΠΠΠΠ点符号对象集合 1 地图符号库系统的结构
地图被看作空间符号模型 ,空间现象的特征均是通过地
图图形语言加以表达的 。通过对地图图形分解 , 可区分点 、 线、 面三种地图符号类型 ,根据符号的几何特征 ,点 、 、 线 面符 号又可分解成更小的基本几何图形单元 ,即图元 。图元是构 成符号的最小单位 。
1. 1 图元分析
面符号中 Symbolize () 符号化函数 … …ΠΠΠΠΠ方法 ΠΠΠΠΠ … … ; }
很多符号库系统都是采用以图元作为符号的基本单元
的思想制作的 [4~8 ,10 ] ,然而大多数把各种图元单独作为一个 类 ,就形成
上一篇:-230水泵运行记录表
下一篇:高中数学必修5 数列习题课