一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

电子地图面状地理要素的渲染方法、电子设备及程序产品与流程

2022-06-22 15:57:03 来源:中国专利 TAG:


1.本技术实施例涉及渲染技术领域,尤其涉及一种电子地图面状地理要素的渲染方法、电子设备及程序产品。


背景技术:

2.随着基于位置的服务越来越广泛,电子地图的应用场景也越来越丰富。通常情况下,基于位置的服务需要可视化的电子地图,可视化的电子地图是由地图渲染引擎基于地图数据动态渲染得到。现有的地图数据包括点状地理要素,例如商铺、车站等,还包括面状地理要素,例如绿地、水域等。面状地理要素通常会被渲染为规则或者不规则的多边形,为了使电子地图中的面状地图要素具有一定美感,现有地图渲染引擎会基于相应的渲染配置,将面状地理要素渲染为设定的颜色,例如,将绿地绘制为绿色,将水域绘制为蓝色等。但是本技术发明人发现,现有渲染技术渲染的面状地理要素的视觉效果不佳,需要进一步优化。


技术实现要素:

3.有鉴于此,本技术实施例提供一种电子地图面状地理要素的渲染方案,以至少部分解决上述问题。
4.根据本技术实施例的第一方面,提供了一种电子地图面状地理要素的渲染方法,包括:获取待渲染电子地图中的面状地理要素的属性数据;基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点;膨胀所述面状地理要素的原始轮廓线,得到宽度为待展宽宽度的条形展宽图形;确定所述条形展宽图形对应的展宽轮廓顶点;根据所述原始轮廓的顶点的第一颜色和所述展宽轮廓顶点的第二颜色,生成从所述第一颜色过渡至所述第二颜色的多个过渡色片元;根据所述多个过渡色片元渲染所述原始轮廓线至所述展宽图形的展宽轮廓线之间的条形区域。
5.根据本技术实施例的第二方面,提供了一种电子设备,包括:通信连接的cpu和gpu;所述cpu用于执行获取待渲染电子地图中的面状地理要素的属性数据的指令、基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点的指令,将所述面状地理要素的原始轮廓线膨胀,得到宽度为待展宽宽度的条形展宽图形的指令,以及确定所述条形展宽图形对应的展宽轮廓顶点的指令;所述gpu用于执行根据所述原始轮廓的顶点的第一颜色和所述展宽轮廓顶点的第二颜色,生成从所述第一颜色过渡至所述第二颜色的多个过渡色片元的指令,以及根据所述多个过渡色片元渲染所述原始轮廓至所述展宽图形的展宽轮廓线之间的条形区域。
6.根据本技术实施例的三方面,提供了一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如第一方面所述的电子地图面状地理要素的渲染方法。
7.根据本技术实施例提供的渲染方案,通过获取待渲染电子地图中的面状地理要素的属性数据,并基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点;膨胀所述面
状地理要素的原始轮廓线,得到宽度为待展宽宽度的条形展宽图形;确定所述条形展宽图形对应的展宽轮廓顶点;根据所述原始轮廓的顶点的第一颜色和所述展宽轮廓顶点的第二颜色,生成从所述第一颜色过渡至所述第二颜色的多个过渡色片元;根据所述多个过渡色片元渲染所述原始轮廓线至所述展宽图形的展宽轮廓线之间的条形区域,可以使得渲染出的多变性区域中具有镶边,且镶边的颜色可以从第一颜色过渡到第二颜色,从而可以增加面状地理要素的质感,并提升电子地图的视觉品质。
附图说明
8.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
9.图1a为根据本技术实施例一的一种渲染方法的步骤流程图;
10.图1b为图1a所示实施例中的一种场景示例的示意图;
11.图1c为图1a所示实施例中的一种渲染效果的示意图;
12.图2a为根据本技术实施例二的一种渲染方法的步骤流程图;
13.图2b为图2a所示实施例中的一种切除矩形的切割区域的示意图;
14.图2c为图2a所示实施例中的一种填充矩形间缝隙的示意图;
15.图2d为图2a所示实施例中的一种计算得到扩展轮廓顶点的原理示意图;
16.图2e为图2a所示实施例中的另一种计算得到扩展轮廓顶点的原理示意图;
17.图2f为图2a所示实施例中的一种光栅化的示意图;
18.图3为根据本技术实施例三的一种渲染装置的结构框图;
19.图4为根据本技术实施例四的一种电子设备的结构示意图。
具体实施方式
20.为了使本领域的人员更好地理解本技术实施例中的技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术实施例一部分实施例,而不是全部的实施例。基于本技术实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本技术实施例保护的范围。
21.下面结合本技术实施例附图进一步说明本技术实施例具体实现。
22.实施例一
23.参见图1a,示出了本技术实施例提供的一种渲染方法的流程示意图,如图所示,其包括:
24.s101、获取待渲染电子地图中的面状地理要素的属性数据。
25.电子地图一般用于通过向量的方式存储地理信息,在进行绘制时,可以根据屏幕的大小、比例尺等因素,将地图绘制在屏幕上,通过屏幕显示的电子地图可以进行放大、缩小、旋转等操作,且对电子地图的显示效果影响较小。
26.电子地图中会存在部分面状地理要素,例如绿地、水域等。电子地图中可以存储有面状地图要素的属性信息,具体可以包括面状地理要素的标识、名称、类型、层级、经纬度
等。
27.电子地图中的面状地理要素可以存在重叠或者不存在重叠,例如水域可以被绿地包围,则水域对应的面状地理要素完全与绿地对应的面状地理要素重叠;或者,水域可以位于沙滩旁边,则水域对应的面状地理要素和沙滩对应的面状地理要素相接;在绘制面状地理要素时,可以将面状地理要素渲染成一个具有预设颜色的色块,例如草地渲染为绿色的面状地理要素,水域渲染成蓝色的面状地理要素,沙滩渲染成黄色的面状地理要素。
28.面状地理要素可以为三角形、四边形或者任意多边形等,本实施例对此不进行限定。需要说明的是,本实施例中,可以将圆形区域视为具有多条边的正多变形区域,正多边形的内角越大,其与圆形越接近,本领域的技术人员可以根据需要确定用于替代圆形的正多边形,本实施例对此不进行限定。
29.s102、基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点。
30.面状地理要素为在同一平面且不在同一直线上的三条或三条以上的线段首尾顺次连结且不相交所组成的封闭区域,该区域的边可以称为面状地理要素的原始轮廓线,原始轮廓线包括的线段可以称为面状地理要素的原始轮廓线段,线段的交点可以称为面状地理要素的原始轮廓的顶点。
31.电子地图中可以记录有面状地理要素的属性信息,属性信息中可以记录有面状地理要素的各个原始轮廓的顶点的位置信息,则本实施例中,可以直接通过属性信息获得面状地理要素的原始轮廓的顶点的位置信息。若属性信息中记录有各原始轮廓线段的起始点、长度、方向等信息,则可以根据属性信息计算得到面状地理要素的原始轮廓的顶点。
32.s103、膨胀所述面状地理要素的原始轮廓线,得到宽度为待展宽宽度的条形展宽图形。
33.本实施例中,膨胀可以理解为扩展原始轮廓线的宽度,以图形为例进行说明,膨胀面状地理要素的原始轮廓线可以理解为以轮廓线为基础,在垂直于轮廓线的方向上扩展待展宽宽度得到的条形展宽图形。
34.本实施例中,通过膨胀面状地理要素的原始轮廓线,可以将不具有宽度的原始轮廓线扩展为具有待展宽宽度的条形展宽图形,并确定条形展宽图形对应的展宽轮廓顶点,从而在后续步骤中可以基于原始轮廓的顶点和确定的展宽轮廓顶点,渲染原始轮廓线至所述展宽图形的展宽轮廓线之间的条形区域,来增加渲染得到的面状地理要素的质感,提升电子地图的视觉品质。
35.本实施例中,待展宽宽度可以由本领域的技术人员根据需要设置,也可以根据面状地理要素的面积大小、面状地理要素占整个屏幕的比例等确定,本实施例对此不进行限定。
36.通过膨胀原始轮廓线,可以得到条形展宽图形。条形展宽图形的宽度为待展宽宽度,待展宽宽度的走向与原始轮廓线的走向相同,由于原始轮廓线为闭合线段,因此,膨胀得到的条形展宽图形可以为环形。原始轮廓线可以为条形展宽图形的边,或者原始轮廓线可以位于条形展宽图形内,本技术实施例对此不进行限定。
37.s104、确定所述条形展宽图形对应的展宽轮廓顶点。
38.为了便于理解,先以图形为例进行说明。条形展宽图形为环形,包括内侧和外侧两条轮廓,两条轮廓有多个线段组成,线段的交点即为条形展宽图形对应的展宽轮廓顶点。
39.在具体实现时,可以根据原始轮廓顶点和膨胀原始轮廓线的膨胀方案,计算得到展宽轮廓顶点的位置信息。
40.本实施例中,若原始轮廓线可以为条形展宽图形的边,则展宽轮廓顶点可以为条形展宽图形中除原始轮廓的顶点之外的顶点;或者,若原始轮廓线可以位于条形展宽图形内,则展宽轮廓顶点可以为调整展宽图形的所有顶点。
41.s105、根据所述原始轮廓的顶点的第一颜色和所述展宽轮廓顶点的第二颜色,生成从所述第一颜色过渡至所述第二颜色的多个过渡色片元。
42.本实施例中,原始轮廓的顶点可以对应有第一颜色、展宽轮廓顶点可以对应有第二颜色。第一颜色和第二颜色可以相同也可以不同。本实施例中,片元可以包括点的位置、颜色、深度和纹理数据等。
43.本实施例中,多个过渡色片元位于原始轮廓线和展宽轮廓线之间,越靠近原始轮廓线的过渡色片元的颜色越接近第一颜色,越靠近展宽轮廓线的过渡色片元的颜色越接近第二颜色。
44.s106、根据所述多个过渡色片元渲染所述原始轮廓线至所述展宽图形的展宽轮廓线之间的条形区域。
45.本实施例中,生成多个过渡色片元后,可以根据多个过渡色片元生成原始轮廓线至展宽轮廓线之间各个像素,从而完成原始轮廓线至所述展宽图形的展宽轮廓线之间条形区域的渲染。具体地,可以根据片元修改或生成帧缓冲区中与点对应的像素,根据修改后的像素可以渲染出片元对应的图形用户界面。具体根据片元进行渲染的方法可参考相关技术,在此不再赘述。
46.本实施例中,可以通渲染原始轮廓线至展宽图形的展宽轮廓线之间的条形区域,使得渲染后的面状地理要素具有镶边,从而增加面状地理要素的质感,提升软件的视觉品质。
47.下面通过一种具体的使用场景,对上述方案进行示例性说明。
48.参见图1b,左侧的图形示出了一种待渲染的不规则十二边形区域,十二边形区域的顶点为原始轮廓的顶点。
49.膨胀十二边形区域的原始轮廓线可以得到条形展宽图形,条形展宽图形可以如图1b中间的图形中的填充区域所示。条形展宽图形外周的边为原始轮廓线、外周的顶点为原始轮廓的顶点;展宽图形内周的边为展宽轮廓线、内周的顶点为展宽轮廓顶点。
50.本实施例中,原始轮廓的顶点的第一颜色可以为黑色,展宽轮廓顶点对应的第二颜色可以为灰色,则可以生成从黑色过渡至灰色的多个过渡色片元。
51.根据多个过渡色片元渲染后的十二边形区域可以如图1b的右侧图形所示,原始轮廓线至展宽轮廓线之间的条形区域从黑色过渡到灰色。
52.当然,上述仅通过黑色和灰色进行示例性说明,在其他实现方式中,第一颜色和第二颜色的值本领域的技术人员可以根据需求设置,第一颜色和第二颜色可以相同也可以不同,本实施例对此不进行限定。
53.参见图1c,左侧的图形为不构造展宽图形,而是直接根据原始轮廓的顶点进行渲染的面状地理要素;右侧的图形为通过上述方案渲染获得的面状地理要素。通过比较可知,通过本技术上述实施例提供的方案进行渲染,使得渲染后的面状地理要素具有镶边,可以
增加面状地理要素的质感,从而提升电子地图的视觉品质。
54.本实施例提供的方案,通过获取待渲染电子地图中的面状地理要素的属性数据,并基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点;膨胀所述面状地理要素的原始轮廓线,得到宽度为待展宽宽度的条形展宽图形;确定所述条形展宽图形对应的展宽轮廓顶点;根据所述原始轮廓的顶点的第一颜色和所述展宽轮廓顶点的第二颜色,生成从所述第一颜色过渡至所述第二颜色的多个过渡色片元;根据所述多个过渡色片元渲染所述原始轮廓线至所述展宽图形的展宽轮廓线之间的条形区域,可以使得渲染出的多变性区域中具有镶边,且镶边的颜色可以从第一颜色过渡到第二颜色,从而可以增加面状地理要素的质感,并提升电子地图的视觉品质。
55.本实施例的渲染方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、pad等)和pc机等。
56.实施例二
57.参见图2a,示出了本技术实施例提供的一种渲染方法的流程示意图,如图所示,其包括:
58.s201、获取待渲染电子地图中的面状地理要素的属性数据。
59.s202、基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点。
60.步骤s201、s202的具体实现方式可参考上述实施例,在此不再赘述。
61.s203、以所述原始轮廓的顶点为起点,以垂直于所述原始轮廓线段并向所述面状地理要素内侧或外侧的方向为展宽方向,得到宽度为待展宽宽度的条形展宽图形。
62.以所述原始轮廓的顶点为起点,以垂直于所述原始轮廓线段并向所述面状地理要素内侧或外侧的方向为展宽方向进行膨胀,可以保证得到的条形展宽图形轮廓与原始轮廓平行。
63.s204、根据所述待展宽宽度计算得到所述展宽轮廓顶点的位置信息。
64.其中,所述展宽轮廓顶点与所述原始轮廓线段之间的距离与所述待展宽距离对应,或者,所述展宽轮廓顶点与所述原始轮廓的顶点之间的距离与所述待展宽距离对应。
65.为了便于理解,下面以图形为示例,对本实施例的方案进行原理说明:
66.本实施例中,可以将面状地理要素的各个原始轮廓线作为矩形的长边,将待展宽宽度作为矩形的宽,分别构造各个原始轮廓线对应的矩形。本实施例中,可以向面状地理要素的轮廓线内侧和\或外侧构造矩形。由于矩形的内角为90度,然而面状地理要素的内角不可能为180度,这导致构造的多个矩形之间会存在重叠区域或者存在缝隙。
67.例如,以向面状地理要素的轮廓线内侧构造矩形为例,如果面状地理要素的某一内角小于180度,则基于该内角对应的两个相邻的原始轮廓线向内侧构造的矩形之间会存在重叠区域;如果面状地理要素的某一内角大于180度,则基于该内角对应的两个相邻的原始轮廓线向内侧构造的矩形之间会存在缝隙。
68.又例如,以向面状地理要素的轮廓线外侧构造矩形为例,如果面状地理要素的某一内角小于180度,则基于该内角对应的两个相邻的原始轮廓线向外侧构造的矩形之间会存在缝隙;如果面状地理要素的某一内角大于180度,则基于该内角对应的两个相邻的原始轮廓线向外侧构造的矩形之间会存在重叠区域。
69.针对上述重叠区域,若所述面状地理要素的相邻的两条原始轮廓线对应的矩形存
在重叠区域,则以所述相邻的两条原始轮廓线的交点为起点构造分割线;根据所述分割线确定并切除所述重叠区域中的切割区域。具体地,如图2b所示,图2b左侧为切除切割区域前的矩形,图2b右侧为切除切割区域后的矩形。根据图2b所示,切除切割区域后,矩形之间不存在重叠区域。
70.针对上述中矩形之间存在的缝隙,若所述面状地理要素的相邻的两条原始轮廓线对应的矩形之间存在缝隙,则以所述相邻的两条原始轮廓线的交点为顶点,根据所述待展宽宽度构造等腰三角形,以填充所述缝隙生成所述展宽图形,使得渲染后的面状地理要素更加美观。具体地,如图2c所示,图2c左侧为构造三角形前的矩形,图2c右侧为通过三角形填充缝隙后的展宽图形。根据图2c所示,通过三角形填充缝隙后,矩形之间不存在缝隙,由此,可以避免矩形之间存在缝隙导致的颜色不均或颜色缺失。
71.需要说明的是,通过程序对原始轮廓线进行膨胀时,会直接计算得到条形展宽图形的各个展宽轮廓顶点的位置信息,而不会实际对面域进行操作。下面对本实施例的方案的具体实现方式进行说明:
72.在本技术的一种具体实现方式中具,步骤s204可以包括:若相接的两条所述原始轮廓线段在所述展宽方向侧的夹角α小于180
°
(对应上述重叠区域),则通过以下公式计算得到展宽轮廓顶点的位置信息:w=sin(β1)*|ab|=sin(β2)*|ab|,其中,a为相接的两条原始轮廓线段共有的原始轮廓顶点,b为待计算的展宽轮廓顶点,|ab|为a和b之间的直线距离,β1和β2分别为线段ab与两条原始轮廓线段之间的夹角,β1=β2=α/2。
73.由此,对应到上述原理说明的部分,按照角平分线分割矩形区域时分割线的一个顶点为相接的两条原始轮廓线段共有的原始轮廓顶点a,可以直接计算得到按照角平分线分割矩形区域时,分割线的另一个顶点b的位置信息,即展宽轮廓顶点的位置信息。
74.参见图2d,示出了上述计算公式的原理图。图中的w为待展宽宽度,21为部分原始轮廓线,22为部分扩展轮廓线。
75.在本技术的另一种具体实现方式中具,步骤s204可以包括:若相接的两条所述原始轮廓线段在所述展宽方向侧的夹角α大于180
°
(对应上述矩形之间存在的缝隙的情况),则根据两条所述原始轮廓线段分别计算得到第一展宽轮廓顶点d和第二展宽轮廓顶点e的位置信息,其中,相接的两条所述原始轮廓线段的共有原始轮廓顶点c分别与第一展宽轮廓顶点d和第二展宽轮廓顶点e的连线cd和ce的长度为待展宽距离w且垂直于各自对应的原始轮廓线段;在所述第一展宽轮廓顶点d和所述第二展宽轮廓顶点e之间增加至少一个第三展宽轮廓顶点f,其中,相接的两条所述原始轮廓线段的共有原始轮廓顶点c与第三展宽轮廓顶点f的连线cf的长度为待展宽距离w。
76.由此,对应到上述原理说明的部分,第一展宽轮廓顶点d和第二展宽轮廓顶点e可以理解为存在缝隙的两个矩形的顶点,至少一个第三展宽轮廓顶点f可以为构造等腰三角形时增加的顶点。
77.参见图e,示出了上述确定展宽轮廓顶点的原理图。图中的w为待展宽宽度,21为部分原始轮廓线,22为部分扩展轮廓线。
78.另外,本实施例中,预先设置有顶角阈值alph,顶角阈值alph可以由本领域的技术人员设置,本实施例对此不进行限定。为了保证面状地理要素的视觉效果较好,可以将顶角阈值alph设置为30
°
。第一展宽轮廓顶点d与相接的两条所述原始轮廓线段的共有原始轮廓
顶点c之间的连线为cd,与d相邻的第三展宽轮廓顶点f与相接的两条所述原始轮廓线段的共有原始轮廓顶点c之间的连线为cf,顶角可以为cd和cf之间的夹角。
79.示例地,在计算至少一个第三展宽轮廓顶点f的坐标时,可以增加顶角小于等于顶角阈值的限制。例如,若相接的两条所述原始轮廓线段在所述展宽方向侧的夹角α为260
°
,而预先设置的顶角阈值alph为30
°
,则可以在“顶角小于等于顶角阈值”的限制条件下,计算得到两个第三展宽轮廓顶点,对应到图形,即可以为构造三个等腰三角形。
80.另外,本技术中采用gpu进行渲染,而gpu一般根据三角形数据进行渲染,因此可以将原始轮廓的顶点和展宽轮廓顶点划分为多组,每组中包括三个顶点,一组顶点对应一个三角形。
81.s205、通过gpu的顶点处理单元,对所述原始轮廓的顶点进行着色处理,输出所述第一颜色,以及对所述展宽轮廓顶点进行着色处理,输出所述第二颜色。
82.本实施例中,通过上述步骤生成的展宽图形由多个三角形构成,则可以将三角形作为图元输入至gpu中,上述的原始轮廓的顶点和展宽轮廓顶点即为三角形的顶点。
83.gpu中包括顶点处理单元(vertex shaders),又称顶点着色器,顶点处理单元可以将顶点从模型空间坐标转换为屏幕空间坐标,确定光线对材质的影响,并输出各个顶点的像素颜色值,针对原始轮廓的顶点,顶点处理单元可以输出第一颜色对应的像素颜色值,针对展宽轮廓顶点,顶点处理单元可以输出第二颜色对应的像素颜色值。
84.输出的像素颜色值可以作为后续步骤s206中进行的插值处理的输入。
85.顶点处理单元的具体实现可参考相关技术,在此不再赘述。
86.s207、通过所述gpu的片元处理单元生成从所述第一颜色过渡至所述第二颜色的所述多个过渡色片元。
87.本实施例中,gpu中包括片元处理单元(fragment shader),又称片段着色器或者片元着色器,片元处理单元可以根据从原始轮廓线到展宽轮廓线之间每个像素的颜色值,生成过从所述第一颜色过渡至所述第二颜色的所述多个过渡色片元。
88.片元处理单元的具体实现可参考相关技术,在此不再赘述。
89.可选地,步骤s207之前还可以包括:
90.s206、对所述顶点处理单元输出的所述第一颜色和所述第二颜色进行插值处理,获得从所述第一颜色过渡至所述第二颜色的多个过渡色。对应的,步骤s207包括:通过所述片元处理单元,根据所述多个过渡色生成多个过渡色片元。图2a中的虚线表示步骤s206为可选步骤。
91.本实施例中,在顶点处理单元输出各个顶点的颜色后,会进入光栅化阶段。在光栅化阶段,gpu可以对像素的颜色值进行线性插值处理。
92.示例的,如图2f所示,顶点处理单元输出了一个三角形图元的三个顶点分别对应的颜色值,如图2f所示,图中被框出的三个顶点的颜色值可以分别为红、绿、蓝。
93.在光栅化阶段,如图2f所示,三角形中可以包括多个点,图2f中的每个小方框可以为一个点。在进行线性插值时,可以根据某个点与三个顶点之间的距离,确定三个顶点对该点的贡献系数,然后可以根据三个顶点的贡献系数以及三个顶点的颜色值,计算得到该点的颜色值。
94.本实施例中,可以直接将第一颜色和第二颜色设置为不同的颜色,则通过上述步
骤s207,对所述顶点处理单元输出的所述第一颜色和所述第二颜色进行插值处理,可以使得生成的多个过渡色片段的颜色呈渐变扩散的效果。在后续步骤中,根据多个过渡色片段进行渲染后,可以使得原始轮廓线至展宽图形轮廓线之间呈现渐变色。
95.s208、根据所述多个过渡色片元渲染所述原始轮廓线至所述展宽图形的展宽轮廓线之间的条形区域。
96.本实施例提供的方案,通过gpu在光栅化过程进行插值处理,使得渲染出的原始轮廓线至所述展宽图形的展宽轮廓线之间的条形区域具有渐变效果,且无需占用额外的gpu资源。
97.实施例三
98.参见图3,示出了本技术实施例提供的一种渲染装置的结构框图,如图所示,其包括:
99.获取模块301,用于获取待渲染电子地图中的面状地理要素的属性数据;
100.第一顶点获取模块302,用于基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点;
101.图形确定模块303,用于膨胀所述面状地理要素的原始轮廓线,得到宽度为待展宽宽度的条形展宽图形;
102.第二顶点获取模块304,用于确定所述条形展宽图形对应的展宽轮廓顶点;
103.过渡色片元生成模块305,用于根据所述原始轮廓的顶点的第一颜色和所述展宽轮廓顶点的第二颜色,生成从所述第一颜色过渡至所述第二颜色的多个过渡色片元;
104.渲染模块306,用于根据所述多个过渡色片元渲染所述原始轮廓线至所述展宽图形的展宽轮廓之间的条形区域。
105.可选地,所述图形确定模块303,具体用于:以所述原始轮廓的顶点为起点,以垂直于所述原始轮廓线段并向所述面状地理要素内侧或外侧的方向为展宽方向,得到宽度为待展宽宽度的条形展宽图形。
106.可选地,所述第二顶点获取模块304,用于根据所述待展宽宽度计算得到所述展宽轮廓顶点的位置信息,其中,所述展宽轮廓顶点与所述原始轮廓线段之间的距离与所述待展宽距离对应,或者,所述展宽轮廓顶点与所述原始轮廓的顶点之间的距离与所述待展宽距离对应。
107.可选地,所述第二顶点获取模块304,具体用于若相接的两条所述原始轮廓线段在所述展宽方向侧的夹角α小于180
°
,则通过以下公式计算得到展宽轮廓顶点的位置信息:w=sin(β1)*|ab|=sin(β2)*|ab|,其中,w为待展宽宽度,a为相接的两条原始轮廓线段共有的原始轮廓顶点,b为待计算的展宽轮廓顶点,|ab|为a和b之间的直线距离,β1和β2分别为线段ab与两条原始轮廓线段之间的夹角,β1=β2=α/2。
108.可选地,所述第二顶点获取模块304,具体用于若相接的两条所述原始轮廓线段在所述展宽方向侧的夹角α大于180
°
,则根据两条所述原始轮廓线段分别计算得到第一展宽轮廓顶点d和第二展宽轮廓顶点e的位置信息,其中,相接的两条所述原始轮廓线段的共有原始轮廓顶点c分别与第一展宽轮廓顶点d和第二展宽轮廓顶点e的连线cd和ce的长度为待展宽距离w且垂直于各自对应的原始轮廓线段;
109.在所述第一展宽轮廓顶点d和所述第二展宽轮廓顶点e之间增加至少一个第三展
宽轮廓顶点f,其中,相接的两条所述原始轮廓线段的共有原始轮廓顶点c与第三展宽轮廓顶点f的连线cf的长度为待展宽距离w。
110.可选地,过渡色片元生成模块305用于通过gpu的顶点处理单元,对所述原始轮廓的顶点进行着色处理,输出所述第一颜色,以及对所述展宽轮廓顶点进行着色处理,输出所述第二颜色;以及通过所述gpu的片元处理单元生成从所述第一颜色过渡至所述第二颜色的所述多个过渡色片元。
111.本实施例的渲染装置用于实现前述多个方法实施例中相应的渲染方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的渲染装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
112.实施例四
113.参照图4,示出了根据本技术实施例五的一种电子设备的结构示意图,本技术具体实施例并不对电子设备的具体实现做限定。
114.如图4所示,该电子设备可以包括处理器(processor)402,处理器可以包括通信连接的cpu和gpu。
115.此外,电子设备还可以包括通信接口(communications interface)404、存储器(memory)406、以及通信总线408。
116.其中:
117.处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
118.通信接口404,用于与其它电子设备或服务器进行通信。
119.处理器402,用于执行程序410,程序中可以包括多个指令,具体地,本实施例中,处理器402包括cpu和gpu,所述cpu用于执行获取待渲染电子地图中的面状地理要素的属性数据的指令、基于所述属性数据,确定所述面状地理要素的原始轮廓的顶点的指令,将所述面状地理要素的原始轮廓线膨胀,得到宽度为待展宽宽度的条形展宽图形的指令,以及确定所述条形展宽图形对应的展宽轮廓顶点的指令;
120.所述gpu用于执行根据所述原始轮廓的顶点的第一颜色和所述展宽轮廓顶点的第二颜色,生成从所述第一颜色过渡至所述第二颜色的多个过渡色片元的指令,以及根据所述多个过渡色片元渲染所述原始轮廓至所述展宽图形的展宽轮廓线之间的条形区域。
121.上述各指令的具体实现可以参见上述渲染方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
122.存储器406,用于存放程序410。存储器406可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
123.可选地,本技术任意实施例中,所述以所述面状地理要素的原始轮廓线为基准,根据所述面状地理要素的待展宽宽度构造展宽图形,根据构造的所述展宽图形确定所述面状地理要素的展宽轮廓顶点的指令,包括:以所述面状地理要素的各个原始轮廓线为基准,分别根据所述待展宽宽度构造各个原始轮廓线对应的矩形的指令;根据构造的各个矩形生成所述展宽图形的指令;确定所述展宽图形中,除所述原始轮廓的顶点之外的顶点为所述展宽轮廓顶点的指令。
124.可选地,本技术任意实施例中,所述根据构造的多个矩形生成所述展宽图形的指令,包括:若所述面状地理要素的相邻的两条原始轮廓线对应的矩形存在重叠区域,则以所述相邻的两条原始轮廓线的交点为起点构造分割线的指令;根据所述分割线确定并切除所述重叠区域中的切割区域,以根据切除切割区域后的矩形生成所述展宽图形的指令。
125.可选地,本技术任意实施例中,所述分割线为所述相邻的两条原始轮廓线的角平分线。
126.可选地,本技术任意实施例中,所述根据构造的多个矩形生成所述展宽图形的指令,包括:若所述面状地理要素的相邻的两条原始轮廓线对应的矩形之间存在缝隙,则以所述相邻的两条原始轮廓线的交点为顶点,根据所述待展宽宽度构造等腰三角形,以填充所述缝隙生成所述展宽图形的指令。
127.可选地,本技术任意实施例中,所述gpu包括顶点处理单元、片元处理单元;所述顶点处理单元,用于对所述原始轮廓的顶点进行着色处理,输出所述第一颜色,以及对所述展宽轮廓顶点进行着色处理,输出所述第二颜色;所述片元处理单元,用于生成从所述第一颜色过渡至所述第二颜色的所述多个过渡色片元。
128.另外需要说明的是,如果gpu中包括几何着色器,则可以由几何着色器代理cpu执行以所述面状地理要素的原始轮廓线为基准,根据所述面状地理要素的待展宽宽度构造展宽图形,根据构造的所述展宽图形确定所述面状地理要素的展宽轮廓顶点的指令,这也在本技术的保护范围内。
129.本技术另一实施例还提供一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如上述实施例一或二所述的渲染方法对应的操作。
130.需要指出,根据实施的需要,可将本技术实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本技术实施例的目的。
131.上述根据本技术实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如cd rom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,ram、rom、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的渲染方法。此外,当通用计算机访问用于实现在此示出的渲染方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的渲染方法的专用计算机。
132.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术实施例的范围。
133.以上实施方式仅用于说明本技术实施例,而并非对本技术实施例的限制,有关技术领域的普通技术人员,在不脱离本技术实施例的精神和范围的情况下,还可以做出各种
变化和变型,因此所有等同的技术方案也属于本技术实施例的范畴,本技术实施例的专利保护范围应由权利要求限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献