参考地理信息系统课件---07栅格矢量的相互转化--来自华北科技学院-魏志刚.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《参考地理信息系统课件---07栅格矢量的相互转化--来自华北科技学院-魏志刚.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 参考 地理信息系统 课件 _07 栅格 矢量 相互 转化 _ 来自 华北 科技学院 魏志刚
- 资源描述:
-
1、1第三章第三章 空间数据模型与数据库空间数据模型与数据库23.4矢量结构与栅格结构的相互转换矢量数据结构向栅格数据结构的转换(栅格化)栅格数据结构向矢量数据结构的转换(矢量化)33.4.1矢量到栅格栅格化过程包括以下操作:1)确定栅格矩阵(行列数分辨率);2)点的变换3)线的变换4)多边形的变换(面的变换)41)确定栅格矩阵 矢量数据转换成栅格数据后,图形的几何精度必然要降低,所以选择栅格尺寸的大小要尽量满足精度要求,使之不过多地损失地理信息。为了提高精度,栅格需要细化,但栅格细化,数据量将以平方指数递增,因此,精度和数据量是确定栅格大小的最重要的影响因素。5I=(Ymax-Ymin)/dyJ
2、=(Xmax-Xmin)/dxI,J为整数,尾数入上去dx=(Xmax-Xmin)/Jdy=(Ymax-Ymin)/I1)确定栅格矩阵 在转换之前需要确定栅格单元的大小,栅格单元的大小又称为栅格图像的分辨率,直接决定了栅格数据的精度。YXOJIyx(0,0)XmaxYminXminYmax62)点的栅格化dxxxINTJdyyyIpp/1/INT1minmaxX,Y73)线的栅格化方法 线是由多个直线段组成的,因此线的栅格化的核心就是直线段如何由矢量数据转换为栅格数据。栅格化的两种常用方法为:DDA法(Digital Differential Analyzer数字微分分析法)Bresenham
3、法8DDA法(数字微分分析法)设(xA,yA),(xB,yB)与栅格网的交点为(xi,yi),则:其中:这样从i0计算到in1,即可得直线与格网的n个交点坐标,对其取整就是该点的栅格数据了。该方法的基本依据是直线的微分方程,即dy/dx常数。其本质是用数值方法解微分方程,通过同时对x和y各增加一个小增量来计算下一步的x,y值,即这是一种增量算法。在该算法中,必须以浮点数表示坐标,且每次都要舍入取整,因此,尽管算法正确,但速度不够快。BnBnAAABABABAByyxxyyxxnyyynxxxdyyxxn,/,max009Bresenham算法 该算法原来是为绘图机设计的,但同样适合于栅格化。该
4、算法构思巧妙,只需根据由直线斜率构成的误差项的符号,就可确定下一列坐标的递增值。根据直线的斜率,把直线分为8个卦限。下面举斜率在第一卦限的情况为例,其余卦限的情况类似。该算法的基本思路可描述为:若直线的斜率为1/2y/x1,则下一点取(1,1)点,若0y/x1/2,则下一点取(1,0)点。10在算法实现时,令起始的误差项为e-1/2,然后在推断出下一点后,令eey/x,若e0时,ee-1。这样只要根据e的符号就可确定下一点的增量,即:若e0,取(1,1)点 若e0,取(1,0)点例如,一直线的斜率为1/3,起始点:e0-1/2,取点0第1点:e1-1/2+1/3-1/6取点第2点:e2-1/6
5、+1/3=1/6且e2=-5/6;取点第3点:e3-5/6+1/3=-1/2取点第4点:e4-1/2+1/3=-1/6取点第5点:e5-1/6+1/3=1/6且e2=-5/6;取点第6点:e6-5/6+1/3=-1/2取点依次进行,直到到达直线的另一端点。这种算法不仅速度快、效果好,而且可以理论上证明它是目前同类各种算法中最优的。为避免浮点运算,可令初值e=e*2*x 当x0时与e同号 当e0时,y方向获增量1,即令ee-2*x;一般情况下ee+2y 起始点:e-1/2,即e-3 第2点:e-1/2+1/3-1/6,e-3+2y-1取点 第3点:e-1/6+1/3=1/6,即e-1+21,取点
6、且e=-5/6,e=-5;114)面域的栅格化 边界线的转化与线的栅格化方法相同,接下来就是属性的填充。填充的方法很多,关键问题是正确判断哪些栅格单元位于多边形之内,哪些位于多边形之外。为此,多边性必须严格封闭,没有缝隙。方法有:内部点扩散法 射线算法 平行线扫描法与铅垂线跌落法 边界代数充填算法 边界点跟踪算法12(1)内部点扩散算法 该算法由每个多边形一个内部点(种子点)开始,向其八个方向的邻点扩散,判断各个新加入点是否在多边形边界上,如果是边界上,则该新加入点不作为种子点,否则把非边界点的邻点作为新的种子点与原有种子点一起进行新的扩散运算,并将该种子点赋以该多边形的编号。重复上述过程直到
展开阅读全文