论文部分内容阅读
地图符号库是数字化成图系统与地理信息处理软件中的一个重要的组成部分。符号绘制是实现地图符号库的关键,GDI+作为微软推出的最新的图形设备接口,与之前的GDI相比,具有更加强大的图形图象处理功能,给地图符号带来了新的绘制技术。本文在分析GDI+的基础上,按照分层的思想分别归纳出地图符号库中点、线、面三类符号的构成单元,分别设计相应的描述参数,最后通过组合GDI+函数绘制出符号,并在此基础上提出了一些地图符号改进绘制的方法。主要研究工作和创新点如下:(1)根据点状符号的组成特点,归纳出了5种图素:圆、拐角、弧段、矩形和等边三角形,并给出了各种图素的参数描述格式以及每个点状符号的图素组合结构。(2)将线状符号的线型归纳为虚线和实线,并给出了线状符号单元的拆分方法,分别设计了虚线和实线的参数描述格式,并就虚线层的绘制提出了两种绘制方法。(3)将面状符号拆分为边界线和填充基类,边界线可以通过线状符号的方式绘制;把填充基类分成颜色填充、线型填充、GDI+模板填充和点状符号填充,并分别设计了参数的描述格式,同时,利用GDI+的裁剪功能,提出了无空洞面域和含空洞面域的符号绘制方法。(4)设计了注记的C++结构体,利用GDI+提供的文本操作函数,初步实现了注记功能,并提供了简单的编辑功能。(5)针对用GDI+开发地图图式符号库时,绘制复杂线状符号存在的转角问题,即在线段/线段连接处标注符号不均匀的问题,提出了一种基于单位距离的线状符号绘制方法,该优化方法不但提高了复杂线状符号的显示效果,在符号显示效率上也有所提高。(6)实现了VC++环境下的GDI+二次缓存绘图技术、面域的点状符号快速填充和绘图区域的局部刷新技术,弥补了GDI+在地图符号库绘制上的不足,提高了整个地图符号的绘制速率和美观程度。