[发明专利]基于GPU的地图矢量线要素拐角合理性绘制方法有效
申请号: | 201610016109.3 | 申请日: | 2016-01-11 |
公开(公告)号: | CN105701759B | 公开(公告)日: | 2018-08-10 |
发明(设计)人: | 温永宁;乐松山;陈旻;闾国年 | 申请(专利权)人: | 南京师范大学 |
主分类号: | G06T1/20 | 分类号: | G06T1/20;G06T11/20;G06T11/40 |
代理公司: | 南京知识律师事务所 32207 | 代理人: | 李媛媛 |
地址: | 210097 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 gpu 地图 矢量 要素 拐角 合理性 绘制 方法 | ||
1.基于GPU的地图矢量线要素拐角合理性绘制方法,其特征是,该方法包括下列步骤:
步骤1确定需要沿线重复填充的符号单元的颜色结构表:将需要填充的符号单元按照纵向-横向的结构进行分解,用列优先的二维数组和相应的符号单元属性来结构化映射一个符号单元,对颜色结构表中的每一列指定其是否为背景列;
步骤2初始化需要绘制的线要素的点集序列,根据线宽生成需要绘制的三角形几何三角网:确定需要绘制线要素的线宽参数,遍历线要素中的每一个顶点,按照半个最大线宽向两边扩展,同时生成相应的三角形集合,并为每个三角形的每个顶点赋予沿线走向的长度值U值和垂直于线走向的长度值V值,即U-V值,将拐角处顶点的U值转换到符号结构中,判断其是否为背景列,如果是背景列,则调整U值到最接近的非背景列;
步骤3在着色器中根据颜色渐变函数对线要素进行逐像素绘制:在着色器中基于传递到着色器里面的顶点U-V值,动态确定每个像素的U-V值,即像素在水平方向上到线起点的距离u'值和像素在垂直方向上到线的上边界的距离v'值,由此确定每一个像素在符号颜色结构表中属于哪一个颜色单元,利用颜色单元的颜色来填充当前像素。
2.根据权利要求1所述的基于GPU的地图矢量线要素拐角合理性绘制方法,其特征是,所述步骤1中:
A.符号单元的颜色结构表:将符号单元按照其结构分解为几个列,每一列都包含其相应的行,每一行都包含其相应的四个角的颜色值,由此形成一系列的颜色单元来映射特定的符号;
B.颜色结构表的单元属性:对于一个符号单元的颜色结构表,其每一列都包含相应的宽度属性和所包含的行数属性,每一行都包含相应的高度属性,每一列都包含一个布尔值来指明该列是否为背景列,整个颜色结构表包含总列数、总宽度和总高度属性。
3.根据权利要求1所述的基于GPU的地图矢量线要素拐角合理性绘制方法,其特征是,所述步骤2中拐角处U-V值的调整:在线串的拐角处,拐角内外存在沿线走向上的长度不一致,分别用拐角外的长度对拐角外顶点的U赋值,将拐角外顶点的U值赋给内拐角对应的顶点;对拐角顶点的U值,利用公式U(p)=u'–SL*[u'/SL]计算其在符号颜色结构表中的U(p)值,其中u'为原始计算得到的U值,SL表达整个符号的宽度,[u'/SL]表示对u'/SL的结果进行取整得到小于u'值的SL的整数倍;根据U(p)值遍历符号颜色结构表中的各列,判断其处于具体哪一列,得到所在列的索引值,利用这个列的索引值获取该列是否为背景列;如果该列是背景列,则判断U(p)值占据这一列的左半部分还是右半部分,如果是左半部分,则调整u'值到该列索引值-1这一列,即到最接近的非背景列;反之在右半部分,调整u'值到该列索引值+1这一列,即到最接近的非背景列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京师范大学,未经南京师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610016109.3/1.html,转载请声明来源钻瓜专利网。