导图社区 计算机地图制图
中国矿业大学《计算机地图制图》课程期末复习,是以计算机硬件设备为基础,在相应软件系统的支持下,以数字格式对地图制图要素与现象数据进行采集、处理与管理,按照地图制图的规范进行符号化、图版制作与输出,并提供地图自动分析的全过程
编辑于2023-06-23 14:32:21计算机地图制图
绪论
计算机地图制图
以计算机硬件设备为基础,在相应软件系统的支持下,以数字格式对地图制图要素与现象数据进行采集、处理与管理,按照地图制图的规范进行符号化、图版制作与输出,并提供地图自动分析的全过程
数字地图
以数字形式记录和存储的地图,是在一定的坐标系统内具有确定的位置、属性以及关系标识和名称的地面要素及现象的离散数据,在计算机可识别的存储介质上存储的有序集合
电子地图
以地图数据库为基础,通过一定的硬件和软件在电子屏幕上显示的可视化地图,是数字地图在屏幕上符号化的表示
计算机地图制图的系统
硬件
地图数字化输入设备
键盘、鼠标、扫描仪
计算机硬件系统
控制器、运算器
CPU
存储器
主机
输入、输出设备
地图输出设备
绘图仪、电子屏幕
软件
计算机系统软件
计算机制图函数库与基础软件
计算机地图制图软件系统
计算机地图制图应用系统
制图数据
地图模型与方法
应用人员
常见软件
ArcGIS、Super Map、MapInfor、GeoStar、Map CAD、CoreDraw、AutoCAD
地图数据组织
地图数据信息
几何信息、拓扑信息、属性信息
地图数据结构
地图数据在计算机中的组织存储形式
数据结构
数据的组织形式,适合计算机存储、管理、处理的数据逻辑结构
分类 (掌握)
栅格数据结构
规则的像元阵列来表示地图要素及其分布的数据结构,其阵列中的每个数据表示地物属性特征
表示 方法
点实体——表示为一个像元
线实体——表示为在一定方向上连接成串的相邻像元的集合
面实体——表示为聚集在一起的相邻像元的集合
矢量数据结构
通过记录坐标的方式尽可能精确地表达点、线、面分布的地物要素
记录信息
矢量数据自身的存储和处理
与属性数据的联系
矢量数据之间的空间关系(拓扑关系)
无拓扑关系的矢量结构 (P79-P80)
Spaghetti模型 (记录要素的位置坐标和属性信息)
点位字典法
有拓扑关系的矢量结构
表示关联和邻接两种基本的空间关系
约定
点(结点)——孤立点、线的端点、面的首尾点、链的连接点等
线(链、弧段、边)——两结点间的有序弧段
面(多边形)——若干链构成的闭合多边形
数据预处理
几何纠正 (P63-64)
好像说过不考
地图数字化后,为消除因图纸变形或地图定向定幅所导致的误差的过程
一次变换
同素变换
仿射变换
二次变换
数据压缩
分类
信息量的压缩
数据简化或数据综合
矢量数据压缩:从数据集S抽出一个子集A,一定精度范围内,A所含的数据量尽量少且A可以表示S的全貌
存储空间的压缩
矢量压缩 (P64-66)
间隔取点法
方法一:以曲线坐标串系列号为主,规定每隔k个点取一点
方法二:以规定距离为间隔的临界值,舍去那些离已知点比规定距离更近的点
垂距法和偏角法
按垂距或偏角的限差选取符合或超过限差的点
道格拉斯-普克法 (重要)
流程
输入一系列坐标点组成的曲线
曲线第一个点A和最后一个点B连成一条直线AB
确认一个阈值(这个值用于控制简化后曲线的精度)
分别计算曲线上各点到这条直线的距离,并取出其中的最远距离与阈值进行比较
如果最远距离大于阈值,则将该点保留,记为C,此时可以生成两条直线AC、CB,重复步骤4
否则将该点舍弃
一种整体性算法,对图像的外形保存较好 (保性性好)
是在全部数字化以后整体修正,故在数字化过程中不会用到 (数字化地图是要实时性的选点)
光栏法 (自学)
基本思路
对每一条曲线上的所有点, 逐点定义一个扇形区域。若曲线的下一节点在扇形外, 则保留当前节点; 若曲线的下一节点在扇形内, 则舍去当前节点
扫描矢量化时,实时选择点
压缩方法比较
标准
简化后的曲线的总长度、总面积、坐标平均值等与原始曲线的相应数据的对比
道格拉斯普克算法VS光栏法
道格拉斯普克算法采用递归实现,它需要对整条曲线进行扫描,才能进行压缩,而且采用递归,计算量较大
属于概化算法,主要是把凹凸不平的折线变得平直
光栏法能给定阈值保留曲线特征点、并且他和道克拉斯普克算法最大的不同是,他能实时计算的,且计算量较小,占用的内存也小了。算法简单,速度快,但有时会将曲线的弯曲极值去掉而失真
数据规范化
数据匹配
几何数据的光滑(不考)
插值和拟合
基本矢量 图形生成
基本图形的生成
几何图形:G=「Pi|Pi最接近图形的像素」
基本图形的生成算法任务之一:找出所有的Pi
点表示像素➡️显存地址单元
一维图形:一个像素宽的直或曲线
二维图形:确定区域的像素集
直线生成算法
找出逼近直线的一组像素,按扫描线顺序,对这些像素进行写操作
直线方程法
(1)求出直线方程 (2)求出 k 及和 b (3) If∣k∣≤1,代入整数x得到y (4) If∣k∣ >1,代入整数y得到x
数值微分法 (DDA)
基本原理
利用计算△x和△y的一种线段扫描转换算法,在一个坐标轴上以单位间隔对线段采样,决定另一个坐标轴上最靠近线段路径的对应整数值
对于直线y=kx+b(|k|<1),x每增加1,y增加k
算法实现
(1)计算直线斜率k(|k|<1) →以x轴为步长前进方向
若|k|>1,则换成关于y的直线方程:x=ky+b
(2)从起点(x,y)开始朝终点方向:在x轴方向走一个单位,则y轴方向上增加k,此时y方向坐标为y'=y+k
(3)对y'四舍五入,获得要保留的坐标点(x,round(y'))
(4)直到下一个点为终点
缺点
浮点计算、取整➡️费时,不利于硬件计算
中点画线算法
基本原理
当前像素P有两个选择(Pu和Pd),Pu和Pd的中点M,Q为理想直线与Pu、Pd所在直线的交点
下一像素的选择
M在Q下方→Pu
M在Q上方→Pd
算法实现
(1)将M带入代入理想直线方程:
可得
(2)由di的正负判断下一像素点(y值)的选择
当di=0时:M在直线上,选Pd或Pu均可
当di>0时:M在Q上方,应取Pd
当di<0时:M在Q下方,应取Pu
优化
d的计算 (d是x,y的线性函数 →采用增量运算)
初始值:do = A + 0.5B
推导
摆脱浮点运算 (用2d代替d来摆脱浮点运算)
初始值:do = 2A + B
练习:a=4; b=7; do= 1;
Bresenham算法 (最终使用的)
基本原理
假设直线斜率:0<k<1,起点坐标(x,y)
d=d+k(d>1时,d=d-1)
d≤0.5→取(x+1,y)
d>0.5→取(x+1,y+1)
令e=d-0.5(显然初始值为-0.5) →可以用p的符号来判断
算法实现 (从线段的起始端点开始,反复计算每个点的决策参数并绘制像素)
老师上课讲的方法:
优化(除去浮点运算):
练习:
书上公式推导:P96
圆的生成算法 (老师上课没有讲这块)
直角坐标法
原理
缺点
生成的圆周上的点不均匀,|x-xc|越大对应生成圆周点之间的圆周距离越长
圆弧扫描法
原理
缺点
运算速度慢,显示质量不好
角度DDA法
原理
已知x,y的初值及dΘ→增量方式获取圆周坐标→取整得到像素坐标
缺点
·采用浮点运算、乘法运算 ·dӨ的取值不容易确定,与半径大小有关
圆的中点画线法
四条特殊对称轴:x=0,y=0,x=y,x=-y→8分圆的扫描转换
基本原理
当前像素P有两个选择(P1和P2),P1和P2的中点M,Q为理想圆与P1、P2所在直线的交点
下一像素的选择
M在Q下方→P1
M在Q上方→P2
算法实现
(1)将M带入代入理想圆方程:
可得判别式:
(2)由di的正负判断下一像素点(y值)的选择
当di=0时:M在圆周上,选P1或P1均可
当di<0时:M在Q下方(圆内),应取P1
当di>0时:M在Q上方(圆外),应取P2
(3)下一判别式
初始值:do = 1.25 - R
优化
浮点→整数 乘法→加法 (e=do-0.25)
初始值:e=1-R
由于e 的初值为整数,且在运算过程中的增量也是整数,故 e 始终是整数,所以 e< 0.25 等价于 e<0
Bresenham算法
基本原理
从A点开始向右下取点
下一像素的选择
算法实现
(1)判别式:
(2)初始值:xo=0,yo=R,do=3-2R
椭圆的生成(没讲)
其他曲线的生成算法
字符生成技术
字符
ASCII:美国标准信息交换码
C82312-80(汉字字符)
计算机中字符由一个数字编码唯一标识。 ·最高位是0:ASCII码 ·最高位1:汉字编码
字库
点阵字符
点阵字符库中,每个字符有一个位图表示
“1”表示对应像素置为字符颜色
“0”表示对应像素置为背景颜色
矢量字符
记录字符的笔画信息而不是整个位图
一个字符由若干笔画构成,每一笔画由两端点确定,对于每一个端点,只需保存坐标值及与前一点的连接关系
线宽生成技术
线刷子方法
线的始末端总是水平或垂直的; 当线宽较大时,看起来很不自然; 当比较接近水平的线与比较接近垂直的线汇合时,汇合处外角将有缺口;
水平线或垂直线最粗,45°斜线最细
方形刷子法
实现方法:把方形中心对准单象素宽的线条上各个象素并把方形内的象素全部置成线条颜色
始末端也是水平或垂直的且线宽与线条方向有关
水平线与垂直线线宽最小 斜率为 ±1的线条线宽最大为垂直/水平的根号2倍
缺点:重复地写象素
反走样
概念
离散量表示连续量引起图像失真现象(走样),用以减少或消除失真现象的技术
主要方法 (提高生成质量)
提高分辨率
区域采样
加权区域采样
区域的生成算法
区域的概念
区域的表示
顶点表示
通过扫描转换实现。用于图形显示、矢量数据栅格化
点阵表示
通过边界提取实现(模式识别),用于图形表示、建模,栅格数据矢量化
区域的生成
区域连通性
四连通
从区域内一点出发,通过上、下、左、右四个方向的移动,在不越出区域的前下,能到达区域内的任意像素
八连通
从区域内一点出发,通过上、下、左、右、左上、右上、左下、右下8个方向的移动,在不越出区域的前提下,能到达区域内的任意像素
区域内外点测试
射线法
被测点P向y=-∞方向作射线,奇数交点为内部,否则为外部
特殊情况
若边在射线左侧,计数
若边在射线右侧,交点无效,不计数
弧长法 (没讲)
假设有向多边形的右侧为多边形的内部。以被测点为圆心做单位圆,将全部有向边向单位圆作径向投影,并计算其在单元圆上弧长的代数和
0:点在多边形外部;2π:点在多边形内部;π:点在多边形边上
多边形扫描转换算法
扫描线算法
适用条件
对多边形的形状没有限制,但多边形的边界不自交
总体思路
求交点(扫描线与多边形各边的交点) ↓ 排序(交点按x 坐标值排序) ↓ 交点配对(每对表示一个区间) ↓ 设置颜色 (区间内的象素置成前景颜色,区间外的象素置成背景色)
特殊问题
顶点交点的取舍→交点正确配对
具体实现时,则检查顶点与相连两条边的另外两个端点的Y值的关系来判断
边界像素的取舍→避免填充的扩大化
右、上边界的像素不予填充 左、下边界的像素予以填充
顶点交点:下闭上开 边界像素:左闭右开
算法实现
(1)当沿扫描线号从小到大的顺序依次处理时,为每一条扫描线建立一个活性边表
(2)如果扫描线的y值正好与某边的较低端点的ymin值相等,则开始从新边表将该边调入活性边表,然后随着扫描线的变化不断更新活性边
(3)更新:加上dx(求交),或插入新边,或剔除不再相交边(扫描线号=ymax)
(4)排序、交点配对、填充
活性边与活性边表
活性边:与当前扫描线相交的边 活性边表:以交点x坐标递增的顺序存放按活性边的链表
x:边的最低端x值 dx:1/k ymax:边最高扫描线号 link:指针
新边表
存放该扫描线第一次出现的边→某边的较低端点为ymin,则该边就放在扫描线ymin的新边表
边填充算法
简单的边填充算法
对于每条扫描线和每条多边形边的交点,将该扫描线上交点右方的所有象素取补
优点: ·与边的顺序无关; ·方法简单。
缺点:每一个像素被访问多次,输入-输出工作量大
栅栏填充算法
栅栏:与扫描线垂直的直线,通常过多边形顶点,且将多边形分成两半
方法:将每条边界与栅栏间的像素取“补”
优点: ·方法简单 ·减少了被重复访问的像素
缺点:每一个像素被访问多次,输入-输出工作量大
边界标志算法
多边形区域填充算法
通常假定区域边界内部至少有 一个像素是已知的,称为种子点
简单种子填充算法
基本原理
若种子点不是边界也未填充,则填充并产生新的种子点
若种子点均已被填充,则函数结束
调用了递归函数,系统开销大,许多象素被重复访问,效率不高
顺序执行算法
设置一个足够大的堆栈空间(Stack)来存放未填充的种子点
算法实现
1. 初始化:种子像素入栈,当栈非空时,重复2~4的步骤
2. 栈顶像素出栈
3. 将出栈像素置为多边形颜色
4. 按右、上、左、下顺序依次检查与出栈像素相邻的四个像素,若其中某个像素不在边界上且未置成多边形色,则该像素入栈
5. 当堆栈为空时,算法终止
扫描线种子填充算法
以种子所在扫描线进行从左到右填充直至边界为止, 然后不断产生新的种子压入栈
算法实现
1.初始化
堆栈置空,种子点(x,y)入栈
2.出栈
栈空则结束。否则取栈顶元素(x,y),以y作当前扫描线
3.填充并确定种子点所在区段
沿当前扫描线对种子像素的左右像素进行填充,直至遇到边界像素为止,从而填满包含种子像素的区间
4.确定新的种子点
在x≤x≤xr中,检查与当前扫描线相邻的上、下两条扫描线是否全为边界像素或者前面已经填充过的像素
是→步骤2
否→在xl≤x≤xr中把每一个区间的最右像素作为种子像素压入堆栈,再转到步骤2继续执行
扫描转换与区域填充的比较
联系
给定多边形的顶点,可用扫描转换算法生成得到多边形的区域
先用直线生成算法生成多边形的边,则该问题转换为区域填充问题
区别
基本思想不同
扫描:将顶点表示转换为点阵表示
填充:只改变了区域的填充颜色,未改变区域的表示方法
对边界要求不同
扫描:扫描线与多边形交点个数为偶数,可以不封闭
填充:要求四连通或八连通封闭区域
基于的条件不同
扫描:从多边形的顶点出发,利用多边形的连贯性进行填充
填充:要求给定种子点,根据连通性进行填充
基本图形变换
图形裁剪
核心问题:速度问题
根本途径:尽量避免或者减少求交运算
矩形窗口裁剪算法
点的裁剪
充分条件:
直线段裁剪
基本思想
(1)判断直线与窗口的关系,若完全不在窗口内,则结束
(2)若全在窗口内,则转向(4),否则继续执行(3)
(3)计算直线段与窗口边的交点(分成两部分),丢弃不可见的部分,对剩下的部分转(2)
(4)保留并显示该线段
直接求交算法
快速求出交点➡️直线与窗口都写成参数形式来求参数
Cohen - Sutherland直线裁剪算法
将窗口边线两边延长得到九个区域,每个区域用一个四位二进制数标识
特点:可快速判断线段的完全可见和显然不可见 优点:本算法的优点在于简单,易于实现 局限:本算法对于其它形状的窗口未必同样有效且在这个算法中求交点计算量较大
中点分割裁剪算法
与CS算法基本一致,在第三种情况时,采用中点分割的方法
中点算法的执行时间决定于图中所含直线的数量、长度和点阵图形的分辨率 对分辩率为2N*2N的显示器,上述二分过程至多进行N次 可以用左右移位来代替乘除法,适合硬件实现,大大加快了速度
多边形的裁剪
多边形的剪裁不是直线段裁剪的组合
多边形的剪裁要保持窗口内多边形的边界部分,使剪裁后的多边形仍然保持封闭状态
方法
多边形逐边裁剪法
Sutherland-Hodgman算法
多边形窗口的双边裁剪法
Weiler-Athenton算法
图形变换
几何变换 (P167-P174)
将一个几何图形的点都变为另一个几何图形的确定的点,这种变换过程称为几何变换
二维图形变换
齐次坐标法:用n+1维向量表示n维向量
二维坐标表示为
几何变换矩阵
恒等变换
基本几何变换 (关于原点)
平移
对称
对x轴对称 (x'=x;y'=-y)
对y轴对称 (x'=-x;y'=y)
中心对称 (x'=-x;y'=-y)
直线x=y (x'=y;y'=x)
直线x=-y (x'=-y;y'=-x)
旋转(β为旋转角逆正顺负)
比例
全比例缩放
错切
d=0,沿x轴错切
b=0,沿y轴错切
组合变换
绕任意点旋转(或比)变换
1)将旋转中心平移到原点
2)将图形绕坐标系原点旋转角β /作关于原点的比例变换
3)将旋转中心平移回到原来位置
点对任意直线对称变换 【设任意直线的方程为:Ax+By+C=0】
设任意直线的方程为:Ax+By+C=0,直线在X轴和Y轴上的截矩分别–C/A和–C/B,直线与X轴的夹角为,α=arctg(–A/B)
1)平移直线,使其通过原点 (可以沿X向和Y向平移,这里沿X向将直线平移到原点)
2)绕原点旋转,使直线与某坐标轴重合 (这里以与X轴重合为例)
3)对坐标轴对称变换(这里是对X轴)
4)绕原点旋转,使直线回到原来与X轴成角的位置
5)平移直线,使其回到原来的位置
三维图形变换
三维坐标表示
几何变换矩阵
恒等变换
单一变换
平移
比例
错切
对称
旋转
指空间立体绕坐标轴旋转θ角,正负按右手定则确定,即右手姆指指向转轴正向,其余4个手指指向便是θ角正角
绕X轴
绕Y轴
绕Z轴
空间主体绕X某一轴旋转,立体上各顶点在该轴的坐标不变,另外两轴坐标的变化相当于二维平面内绕原点旋转
复合变换
绕任意点旋转(或比)变换
绕任意轴旋转变换
AB直线上一点A(xa,ya,za) 及方向数(a,b,c)
(1)将任意轴(AB)移至过原点的位置
(2)绕x轴旋转,使直线与xz平面重合
(3)绕y轴旋转,使直线与z轴重合
(4)绕z轴旋转θ角
(5)步骤(3)的逆变换
(6)步骤(2)的逆变换
(7)步骤(1)的逆变换
变换矩阵
满秩
几何变换
可逆的➡️通过一系列变换恢复原型
不满秩
投影变换
不可逆的➡️图形不可以恢复原型
坐标系统
几种常见坐标系
世界坐标系
也称全局坐标系、用户坐标系。现实世界的坐标系,是一个公共坐标系,为物体或场景的统一参照系
建模坐标系
也称局部坐标系,为场景中单个对象定义的坐标系
设备坐标系
也称屏幕坐标系,计算机图形显示设备(如光栅显示器)的显示坐标系
规范化设备坐标系
独立于设备的中间坐标系,范围从0到1 ,为移植方便
坐标变换过程
窗口区与视图区
窗口区:用户域中的某一区域,定义在世界坐标系中
视图区(视口区):任何小于或等于屏幕域的区域,定义在设备坐标系中
窗口与视口变换
是比例变换和平移变换的组合变换
地图坐标变换方式
相似变换
仿射变换
地图投影变换方法
反解变换
综合变换
数值变换
数值-解析变换
投影变换
分类
平行投影
投影线之间相互平行
正平行投影
正投影
正轴侧投影
正等侧
正二侧
正三侧
斜平行投影
斜等侧
斜二侧
透视投影
投影线汇聚于一点
一点透视
二点透视
三点透视
正平行投影
三视图
投影矩阵
任意平面的正平行投影
透视投影
变换矩阵
一点透视
正平行投影
灭点
任何一束不平行于投影平面的平行线的透视投影汇聚成一点
空间任何一点经过透视后就会失去z向坐标信息
z:点到透视点的距离
z大投影小,z小投影大
透视因子:r(中心到面的距离的倒数)
r越大透视效果越明显
透视缩小效应:物体透视投影的大小与物体到投影面的距离成反比→透视投影图的深度感更强
地形表达与制图
地形的表达模型
数字地面模型 【DTM】
利用坐标场中大量已知的X、Y、Z的坐标点对连续地面的统计表示
数字高程模型 【DEM】
DTM的一个子集,即用自然地表高程作为地形特征的特殊取值
数字表面模型 【DSM】
用地表的高程值作为地形特征的特殊取值,包括建筑物及植被
DTM/DEM的两种结构
规则格网模型
将区域划分成相同大小的矩形单元,以每个矩形单元顶点(或对角线交点)作为DTM/DEM数据结构的基础
特点
优点
形状规则、结构简单、操作方便,适合于大规模使用与管理,容易用计算机进行处理 容易进行某些地学分析与计算 易于与遥感影像复合,实现地形可视化、辅助遥感处理等功能
缺点
不能精确表示地形的结构和细部; 数据量过大,需要压缩; 在地形平坦的地方,存在大量的数据冗余; 在不改变格网大小的情况下,难以表达复杂地形的突变现象
世界范围内表示地形的基础
国家级/省级
不规则格网模型
以原始数据的坐标作为格网的结点,组成不规则形状的格网,构网时根据(X,Y)坐标点进行,高程值不起作用,仅是作为结点的属性
特点
优点
既可用于规则分布数据,也可用于不规则分布数据; 能以不同层次的分辨率来描述地形; 更少的空间更精确地表示更加复杂的表面; 与规则格网比较,不规则三角网具有最小的中误差,更适合于地形显示
缺点
数据存储与操作复杂; 采样数据少时,不规则三角网的质量明显好于规则格网,当采样密度增加时,二者差别则越来越小
TIN
生成三角网(只用x,y),再加三维信息
生成算法
基本要求
空间中三点➡️可以保证点共面的最小单元
①最佳三角形形状,尽量接近正三角形 ②三角形边长之和最小,保证最近的点形成三角形 ③三角形网格唯一
三角网的建立原则
三角网的建立原则
在TIN中,过每个三角形的外接圆均不包含点集的其余任何点
最大最小角准则
在TIN中的两相邻三角形形成的凸四边形中,这两三角形中的最小内角一定大于交换凸四边形对角线后所形成的两三角形的最小内角
最短距离和准则
指一点到基边的两端的距离和为最小
张角最大准则
一点到基边的张角为最大
面积比准则
三角形内切圆面积与三角形面积或三角形面积与周长平方之比最小
对角线准则
两三角形组成的凸四边形的两条对角线之比 这一准则的比值限定值须给定,即当计算值超过限定值才进行优化
最接近最优三角网:Delaunay三角网
由相互邻接互不重叠的三角形组成,其中每个三角形都遵循空圆法则,也就是每个三角形的外接圆中不包含其他数据点
Voronoi多边形
Delaunay三角网格对偶
各个三角形边的垂直平分线的连接
交点为三角形的外接圆圆心
边扩展法 (三角形生长算法)
①选取一点,查找距离此点最近的点,连成初始基线(第一条边一定要正确) ②沿基线的固定一侧搜寻第三点,生成第一个Delaunay三角形 (采用张角最大准则、空外接圆原则、最大最小角准则) ③以三角形的两条新边作为新的基线 ④依次重复②、③直至所有基线处理完毕
张角最大:基线所对角的cos值最小
约束条件
三点能够通视,即在能够通视的顶点集合,找复符合空圆法则的第三点➡️生成一个带约束条件的Delaunary三角形
规定某些边是必须有的
通视
数据点动态插入算法
①定义一个超三角形,使该三角形能包含所有数据点,并把该三角形作为初始Delaunay三角形 ②从数据中取一点P加人到三角网中 ③搜寻包含点P的三角形,将P与此三角形三个顶点相连,形成三个三角形 ④应用Lawson LOP从里到外更新所有生成的三角形 ⑤重复①、②、③直至所有点处理完毕; ⑥删除所有包含一个或多个超三角形顶点的三角形
(局部优化方法)Lawson LOP(最大化最小角原则):由两相邻三角形构成的凸四边形中,交换此四边形的两条对角线,这两个三角形六个内角中最小角不再增大(选择所分得的三角形的最小角是最大的)
空圆法则:所加的点是否落在原来三角形的外接圆内(在➡️交换对角线)
约束条件
在满足通视条件才能交换对角线
等高线追踪
任意平面与TIN切割:三角形与平面交线(三角形任意两边与平面交点)➡️三角形边与平面的交点
规则格网的生成与转换 (离散点→规则格网)
一般采用逐点内插方法
以待插点为中心,定义一个局部函数来拟合周围的数据点(参考点),数据点的范围随待插点的位置变化而变化
曲面拟合法
对每个待插点选取其邻近的n 个参考点来拟合一多项式曲面
X 、Y 为各参考点坐标值,H 为其相应的属性值,A 、B 、C 、D 、E 、F 为待定参数,它们的确定可以通过n个参考点进行最小二乘法求解
反距离加权法(IDW)
与内插点距离最近的若干个采样点对内插点值的贡献最大,且贡献与距离成反比
以已知离散点到内插点的距离给予适当的权重(w):
p 是距离的幂,幂越高,内插结果越平滑
TIN转GRID (插值方法)
线性插值
最邻近插值……
TIN的生成与转换
直接方式
VIP方式(重要)
尽量减少TIN的顶点数目,同时尽可能多地保留地形信息,如山峰、山脊、谷底和坡度突变处
基本思想
根据八邻点的高程值决定模板中心是否为重要点 格网点与8邻点的差分超过某个阈值的格网点保留下来
地图符号的绘制
数字地图符号的要求
使用惯用符号,保证地图符号的统一性和标准化
比例尺和幅面的大小
地图符号
地图符号系统构成
图解语言(地图符号)
写出语言(色彩和地貌立体表示)
自然语言(名称注记)
数学语言(地图投影、比例尺、方向)
地图符号分类
几何特征
点、线、面
与比例尺的关系
不依、半依、依比例尺
符号表示的地地理特征度量
定性、定量、等级
符号的形状特征
几何、艺术、文字
符号的表示方式
矢量、栅格
地图符号库与地图符号化
地图符号库的概念
多种地图符号的有序集合
包括点符号库、线符号库、面符号库、TrueType字体符号库和位图符号库
地图符号图元
符号图元指地图符号中最小的具有独立逻辑意义的图形单位 一个地图符号由一个或多个图元集合组合而成
符号设计系统通常根据点、线、面符号的不同特定,分别为三类符号提供组成符号的基本单元
点状符号的图元
点元数据结构
{图元标识、删除标志、点坐标、点半径、点颜色}
折线图元数据结构
{图元标识、删除标志、折线类型标识、线型参数、点数、结点坐标、结点类型}
多边形图元数据结构
{图元标识、删除标志、多边形类型标识、线型参数、填充参数、点数、结点坐标、结点类型}
线状符号的图元
实线图元数据结构
{图元标识、删除标志、起点偏移量、线型参数};
虚线图元数据结构
{图元标识、删除标志、起点偏移量、实部长度、虚部长度};
双虚线图元数据结构
{图元标识、删除标志、起点偏移量、实部长度、虚部长度、虚线中心之间的间隔}
面状符号的图元
晕影线填充图元数据结构
{图元标识、删除标志、晕影线线倾角、起始位置(x, y)、偏移量(dx、dy)、实部长、虚部长、线型参数}
点符号填充图元数据结构
{图元标识、删除标志、点符号长度、点符号宽度、行偏移量、列偏移量、行间距、列间距、(纵、横向)缩放系数、旋转角、旋转角形式(固定、随机)、布点形式(品字形、井字形) 、点符号数据块}
图像位图填充数据结构
{图元标识、删除标志、位图长度、位图宽度、行间距、列间距、(纵、横向)缩放系数、旋转角、填充形式(品字形、井字形)、位图数据块}
地图实体符号化
概念
数字化
将地图要素或相应图形符号抽象为地图数据库的定性、定位及属性数据
符号化
将地图数据库内的定性、定位及属性数据变换为图形数据,是数字化的逆过程
符号化过程
根据范围从地图数据库中获取地图实体信息(几何坐标、属性信息)
根据地物编码(也称用户标识,UID)到地物类型参数表文件找到对应的符号代码和符号显示颜色等信息
根据符号代码到符号库中获取符号描述信息
由地图实体符号化模块根据实体对象的几何位置信息和符号描述信息对地图实体进行符号化输出
矢量符号绘制的方法
实质
将符号坐标系统中图形元素特征点的坐标(x,y)变换到地图坐标系的坐标(X,Y)并按给定顺序连线的过程
方法分类
信息块法
又称符号库法,绘图时通过程序处理已存在符号库中的信息块实现符号的绘制。信息块为描述符号的参数集,信息文件即符号库。通常一个符号对应一个信息块。
直接信息块法
直接表示符号图形的各个细节,在信息块中直接存储符号图形的矢量数据(图形特征点坐标)或栅格数据(点阵数据)
优点
算法统一,与图形结构无关
缺点
符号信息获取较困难,占用空间大,放大易变形
间接信息块法
不直接存储符号图形数据,而是存储符号图形的几何参数(如长、宽、夹角、半径等),绘图时符号图形数据由计算机实时解算
优点
占用空间小,绘图精度高,放大不变形,图形参数可方便地交互获得
缺点
程序量大,编程工作复杂
程序块法(编程法)
由绘图子程序按符号图形参数计算绘图矢量并操作绘图仪绘制地图符号。一类地图符号对应一个绘图子程序,子程序组成了符号库。调用子程序完成地图符号的绘制。
优点
符号数据量一般比信息块法小,能自动符号化,无需太多人工干预
缺点
不利于符号的更新,用户自主权不大
两种方法
信息块法
直接信息法
(矢量)存储符号图形的特征点坐标
(栅格)具有足够分辨率的点阵
直接表示图形的每个细部点
间接信息法
目前制图软件采用
存放图形的几何参数
几何参数转换成绝对坐标值的过程
编程法
函数➡️接受符号参数➡️操作绘图仪绘制
一种/一类的地图符号对应一种绘图子程序
局限性
适合能用数学表达式描述的地图符号
增减删除符号不便
矢量符号
点
参数
定位点、缩放系数、旋转角
信息块有独立的坐标系
线
重复配置点符号图元法
线符号分解成基本点符号图元,然后沿线符号定位线连续配置点符号
组合绘制
制图软件采用的
任何线符号由具有单一特征的线符号组合而成
面
在面区域内配置规则点符号
在x,y轴方向上的间距配置
绘制不同倾角的晕线构成图案
用颜色填充面区域
图案、图块、纹理填充