参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt

参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt

ID:49639530

大小:890.50 KB

页数:33页

时间:2020-02-26

参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt_第1页
参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt_第2页
参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt_第3页
参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt_第4页
参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt_第5页
资源描述:

《参考地理信息系统课件___07栅格矢量的相互转化__来自华北科技学院_魏志刚.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第三章空间数据模型与数据库13.4矢量结构与栅格结构的相互转换矢量数据结构向栅格数据结构的转换(栅格化)栅格数据结构向矢量数据结构的转换(矢量化)23.4.1矢量到栅格栅格化过程包括以下操作:1)确定栅格矩阵(行列数分辨率);2)点的变换3)线的变换4)多边形的变换(面的变换)31)确定栅格矩阵矢量数据转换成栅格数据后,图形的几何精度必然要降低,所以选择栅格尺寸的大小要尽量满足精度要求,使之不过多地损失地理信息。为了提高精度,栅格需要细化,但栅格细化,数据量将以平方指数递增,因此,精度和数据量是确定栅格大小的最重要的影响因素。4I=(Ymax-Ymin)/dyJ=(Xmax-Xmin)/

2、dxI,J为整数,尾数入上去dx=(Xmax-Xmin)/Jdy=(Ymax-Ymin)/I1)确定栅格矩阵在转换之前需要确定栅格单元的大小,栅格单元的大小又称为栅格图像的分辨率,直接决定了栅格数据的精度。YXOJIyx(0,0)XmaxYminXminYmax52)点的栅格化X,Y63)线的栅格化方法线是由多个直线段组成的,因此线的栅格化的核心就是直线段如何由矢量数据转换为栅格数据。栅格化的两种常用方法为:DDA法(DigitalDifferentialAnalyzer数字微分分析法)Bresenham法7DDA法(数字微分分析法)设(xA,yA),(xB,yB)与栅格网的交点为(xi,

3、yi),则:其中:这样从i=0计算到i=n-1,即可得直线与格网的n个交点坐标,对其取整就是该点的栅格数据了。该方法的基本依据是直线的微分方程,即dy/dx=常数。其本质是用数值方法解微分方程,通过同时对x和y各增加一个小增量来计算下一步的x,y值,即这是一种增量算法。在该算法中,必须以浮点数表示坐标,且每次都要舍入取整,因此,尽管算法正确,但速度不够快。8Bresenham算法该算法原来是为绘图机设计的,但同样适合于栅格化。该算法构思巧妙,只需根据由直线斜率构成的误差项的符号,就可确定下一列坐标的递增值。根据直线的斜率,把直线分为8个卦限。下面举斜率在第一卦限的情况为例,其余卦限的情况类

4、似。该算法的基本思路可描述为:若直线的斜率为1/2≤△y/△x≤1,则下一点取(1,1)点,若0≤△y/△x<1/2,则下一点取(1,0)点。9在算法实现时,令起始的误差项为e=-1/2,然后在推断出下一点后,令e=e+△y/△x,若e≥0时,e=e-1。这样只要根据e的符号就可确定下一点的增量,即:若e≥0,取(1,1)点若e<0,取(1,0)点例如,一直线的斜率为1/3,起始点:e0=-1/2,取点0第1点:e1=-1/2+1/3=-1/6取点①第2点:e2=-1/6+1/3=1/6且e2’=-5/6;取点②第3点:e3=-5/6+1/3=-1/2取点③第4点:e4=-1/2+1/3=

5、-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当△x≥0时与e同号当e’>0时,y方向获增量1,即令e’=e’-2*△x;一般情况下e’=e’+2△y起始点:e=-1/2,即e’=-3第2点:e=-1/2+1/3=-1/6,e’=-3+2△y=-1取点①第3点:e=-1/6+1/3=1/6,即e’=-1+2=1,取点②且e=-5/6,e’=-5;562340110

6、4)面域的栅格化边界线的转化与线的栅格化方法相同,接下来就是属性的填充。填充的方法很多,关键问题是正确判断哪些栅格单元位于多边形之内,哪些位于多边形之外。为此,多边性必须严格封闭,没有缝隙。方法有:内部点扩散法射线算法平行线扫描法与铅垂线跌落法边界代数充填算法边界点跟踪算法11(1)内部点扩散算法该算法由每个多边形一个内部点(种子点)开始,向其八个方向的邻点扩散,判断各个新加入点是否在多边形边界上,如果是边界上,则该新加入点不作为种子点,否则把非边界点的邻点作为新的种子点与原有种子点一起进行新的扩散运算,并将该种子点赋以该多边形的编号。重复上述过程直到所有种子点填满该多边形并遇到边界停止为

7、止。扩散算法程序设计比较复杂,并且在一定的栅格精度上,如果复杂图形的同一多边形的两条边界落在同一个或相邻的两个栅格内,会造成多边形不连通,这样一个种子点不能完成整个多边形的填充。12(2)射线算法射线算法可逐点判断数据栅格点在某多边形之外或在多边形内,由待判点向图外某点引射线,判断该射线与某多边形所有边界相交的总次数,如相交偶数次,则待判点在该多边形外部,如为奇数次,则待判点在该多边形内部。采用射线算法,要注意的是:射线

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。