[发明专利]一种顾及拓扑关系的大规模矢量地图快速综合的方法无效
申请号: | 201210079100.9 | 申请日: | 2012-03-23 |
公开(公告)号: | CN102663958A | 公开(公告)日: | 2012-09-12 |
发明(设计)人: | 张立强;陈栋;杨玲;邓浩 | 申请(专利权)人: | 北京师范大学 |
主分类号: | G09B29/00 | 分类号: | G09B29/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100875 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 顾及 拓扑 关系 大规模 矢量 地图 快速 综合 方法 | ||
1.一种顾及拓扑关系的大规模矢量地图快速综合的方法步骤包括:
步骤一:生成单调链
每个线要素拆分为若干个单调链,将一条线要素拆分为单调链的过程如下:对于一条线要素l=(v0,v1,...,vn),向量和夹角被定义为θi,显然θ0=0,l是单调的,当且仅当其所有边与夹角所成的序列{θ0,θ1,...,θn-1}满足(θmax-θmin)<180,此处θmax=max(θ0,θ1,...,θn-1),θmin=min(θ0,θ1,...,θn-1),因此,给定一个线要素,从θ0开始向后遍历,以更新θmax和θmin,当遍历到θi时,(θmax-θmin)≥180°,那么在顶点vi处打断此条线,从vi处重新开始计算,重复上面的过程,直到最后一个顶点。
步骤二:简化单调链
经过上述步骤,线要素被分割为单调链,接下来,对每条单调链进行简化,首先对于一副地图,生成整幅地图的ε-Voronoi图,对于每条线段,将其所有顶点两两相连形成线段,为了避免要素间的自相交,首先,清空所有帧缓存,在模板缓存里渲染每条单调链的ε-Voronoi区域,并使每个单调链的ε-Voronoi区域具有区别于其他单调链的唯一一个模板缓存值,然后,生成每个单调链的线段集,将其渲染到颜色缓存中,渲染时每条线段对应唯一一个颜色,并同时开启模板测试,对于li,设置当模板值不等于i时,模板测试才能通过,所有线段被渲染完成后,读取颜色缓存,如果一像素的颜色缓存值不为0,将该颜色所对应的线段从线段集中剔除,此步操作后,线段集中所保留的线段应全为合规线段,接下来,对于每个单调链,连接合规线段以得到简化结果,连接步骤如下:从第一个顶点v0出发,在所有连接v0的线段中,寻找另一顶点距v0最远的线段,然后连接v0到最远的另一个顶点,再从此顶点开始,重复上述步骤,直到连接到最后一个顶点,最后,连接简化后的单调链,以得到最后的简化后的线要素。
在渲染线段,读取颜色缓存,剔除违规线段后,清空颜色缓存,对于线段集当中剩下的线段进行再次渲染,然后读取颜色缓存,剔除出现在颜色缓存中的线段,重复此过程,直至没有新的线段被剔除为止。
步骤三:保持综合精度
为了保持本发明方法的有效性和精确性,同时减缓线段间的相互遮挡,要对地图进行分幅渲染,分幅的原则是,保证原地图上的一条线段,投影到屏幕上,至少要有两个像素的大小,根据这个原则,在水平方向上,一幅地图应该被分为nW块,d是线要素相邻两点间的平均距离,w是屏幕宽度,W是地图宽度,函数表示向上取整,同理得到,在竖直方向上的分幅数nh。
如果一块地图单调链的个数大于255,为了保证相邻ε-Voronoi区域的值不相同,渲染一个ε-Voronoi区域时,先读取其附近区域的模板缓存值,然后取一个与这些值都不同的值作为将该区域的模板值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京师范大学,未经北京师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210079100.9/1.html,转载请声明来源钻瓜专利网。