System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及信号处理,特别是涉及一种基于图谱数据顶点的波纹动画渲染方法与装置。
技术介绍
1、在知识图谱的展示中,高亮显示顶点是常见的需求。传统方法如改变顶点颜色,此种方式存在如下缺陷:当顶点颜色与高亮颜色相同时,高亮效果不明显,难以吸引注意。进一步的,在现有的图像渲染方法中,大多采用的是通过单线程的主画布来进行渲染数据的计算以及实际渲染,在这种方法中,当需要进行处理的数据量较大时,必然会出现性能瓶颈,导致实际处理效率较低。
2、鉴于此,克服该现有技术所存在的缺陷是本
亟待解决的问题。
技术实现思路
1、本专利技术要解决的技术问题是如何以较高的渲染效率对波纹光圈进行渲染。
2、本专利技术采用如下技术方案:
3、第一方面,提供一种基于图谱数据顶点的波纹动画渲染方法,包括:
4、创建辅助线程,在所述辅助线程中创建离屏画布;
5、根据目标图谱对所述离屏画布进行预处理,将所述离屏画布同所述目标图谱相对应;其中,所述目标图谱具有至少一个待渲染的顶点;
6、在所述离屏画布上确定与各个所述待渲染的顶点对应的预设区域,在各个所述预设区域的周圈进行多帧的光圈渲染合成计算,得到对应帧数的波纹光圈渲染数据;
7、每当离屏画布完成预设帧数的光圈渲染合成计算时,将预设帧数的波纹光圈渲染数据发送给主画布,以对所述待渲染的顶点进行光圈渲染。
8、优选的,所述在所述辅助线程中创建离屏画布,具体包括:
10、优选的,所述根据目标图谱对所述离屏画布进行预处理,将所述离屏画布同所述目标图谱相对应,具体包括:
11、设定第一合成模式和第二合成模式,调整所述离屏画布的不透明度;
12、将所述离屏画布的视图矩阵调整为同所述目标图谱的视图矩阵一致。
13、优选的,所述将所述离屏画布的视图矩阵调整为同所述目标图谱的视图矩阵一致,具体包括:
14、根据目标图谱的视图矩阵数据分别调整所述离屏画布的缩放比例、x轴偏移量和y轴偏移量,计算公式如下:
15、x=-this.camera.x * this.camera.zoom * this.pixelratio;
16、y=-this.camera.y * this.camera.zoom * this.pixelratio;
17、scale=this.camera.zoom * this.pixelratio;
18、其中,x为离屏画布的x轴偏移量,this.camera.x为目标图谱的x轴偏移量,this.camera.zoom为目标图谱的缩放比例,this.pixelratio为设备像素比,y为离屏画布的y轴偏移量,this.camera.y为目标图谱的y轴偏移量,scale为离屏画布的缩放比例。
19、优选的,所述在各个所述预设区域的周圈进行多帧的光圈渲染合成计算,得到对应帧数的波纹光圈渲染数据,具体包括:
20、设定最小光圈半径、最大光圈半径和预设差值;
21、从所述最小光圈半径开始,每一帧中均以离屏画布上的预设区域为圆心进行相应光圈半径的光圈渲染,在每一帧光圈渲染中:将合成模式切换为第一合成模式,按照所述第一合成模式将相应光圈半径的光圈图像在前一帧光圈图像的上层进行叠加合成;将合成模式切换为第二合成模式,按照所述第二合成模式在叠加合成后的图像上叠加一层预设透明度的蒙层;
22、从所述最小光圈半径开始每一帧光圈渲染对应的光圈半径比前一帧光圈渲染对应的光圈半径大预设差值,直至光圈渲染对应的光圈半径大于等于最大光圈半径。
23、优选的,所述按照所述第一合成模式将相应光圈半径的光圈图像在前一帧光圈图像的上层进行叠加合成,具体包括:
24、将当前帧的光圈图像叠加在前一帧的光圈图像的上层,得到叠加合成后的图像;
25、其中,当前帧的光圈图像的圆心和前一帧的光圈图像的圆心均为所述预设区域的圆心,并且当前帧的光圈图像的光圈半径比前一帧的光圈半径大预设差值。
26、优选的,所述按照所述第二合成模式在叠加合成后的图像上叠加一层预设透明度的蒙层,具体包括:
27、将预设透明度的蒙层叠加在所述叠加合成后的图像上;
28、将所述叠加合成后的图像上的所有光圈图像同所述蒙层相重叠的部分保留,将所述叠加合成后的图像上的所有光圈图像同所述蒙层未重叠的部分去除。
29、优选的,所述在各个所述预设区域的周圈进行多帧的光圈渲染合成计算,得到对应帧数的波纹光圈渲染数据,还包括:
30、当光圈渲染对应的光圈半径大于等于最大光圈半径时,将当前帧的光圈渲染对应的光圈半径调整为所述最小光圈半径,并从所述最小光圈半径开始重新按照预设差值依次进行后一帧的光圈渲染。
31、第二方面,提供一种基于图谱数据顶点的波纹动画渲染装置,包括至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,用于执行所述的基于图谱数据顶点的波纹动画渲染方法。
32、第三方面,本专利技术还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,用于完成第一方面所述的方法。
33、第四方面,提供了一种芯片,包括:处理器和接口,用于从存储器中调用并运行存储器中存储的计算机程序,执行如第一方面的方法。
34、第五方面,提供了一种包含指令的计算机程序产品,当该指令在计算机或处理器上运行时,使得计算机或处理器执行如第一方面的方法。
35、第六方面,提供了一种基于图谱数据顶点的波纹动画渲染系统,包括如第二方面的基于图谱数据顶点的波纹动画渲染装置,并使用如第一方面的基于图谱数据顶点的波纹动画渲染方法。
36、本专利技术提供一种基于图谱数据顶点的波纹动画渲染方法与装置,创建辅助线程,在所述辅助线程中创建离屏画布;根据目标图谱对所述离屏画布进行预处理,将所述离屏画布同所述目标图谱相对应;在所述离屏画布上的预设区域进行多帧的光圈渲染合成计算,得到对应帧数的波纹光圈渲染数据;每当离屏画布完成预设帧数的光圈渲染合成计算时,将预设帧数的波纹光圈渲染数据发送给主画布进行对应的光圈渲染,实现对于目标图谱上的预设区域的波纹光圈渲染。通过单独创建辅助线程,使得渲染计算和实际渲染不再都通过同一个线程执行,从而提升整体的渲染性能,使其能够应对数据量相对更大的场景。
本文档来自技高网...【技术保护点】
1.一种基于图谱数据顶点的波纹动画渲染方法,其特征在于,包括:
2.根据权利要求1所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述在所述辅助线程中创建离屏画布,具体包括:
3.根据权利要求1所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述根据目标图谱对所述离屏画布进行预处理,将所述离屏画布同所述目标图谱相对应,具体包括:
4.根据权利要求3所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述将所述离屏画布的视图矩阵调整为同所述目标图谱的视图矩阵一致,具体包括:
5.根据权利要求3所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述在各个所述预设区域的周圈进行多帧的光圈渲染合成计算,得到对应帧数的波纹光圈渲染数据,具体包括:
6.根据权利要求5所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述按照所述第一合成模式将相应光圈半径的光圈图像在前一帧光圈图像的上层进行叠加合成,具体包括:
7.根据权利要求5所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述按照所述第二合
8.根据权利要求5所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述在各个所述预设区域的周圈进行多帧的光圈渲染合成计算,得到对应帧数的波纹光圈渲染数据,还包括:
9.一种基于图谱数据顶点的波纹动画渲染装置,其特征在于,包括至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,用于执行权利要求1-8中任一项所述的基于图谱数据顶点的波纹动画渲染方法。
10.一种非易失性计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序指令,该计算机程序指令被一个或多个处理器执行时实现如权利要求1-8任一项所述的基于图谱数据顶点的波纹动画渲染方法。
...【技术特征摘要】
1.一种基于图谱数据顶点的波纹动画渲染方法,其特征在于,包括:
2.根据权利要求1所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述在所述辅助线程中创建离屏画布,具体包括:
3.根据权利要求1所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述根据目标图谱对所述离屏画布进行预处理,将所述离屏画布同所述目标图谱相对应,具体包括:
4.根据权利要求3所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述将所述离屏画布的视图矩阵调整为同所述目标图谱的视图矩阵一致,具体包括:
5.根据权利要求3所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述在各个所述预设区域的周圈进行多帧的光圈渲染合成计算,得到对应帧数的波纹光圈渲染数据,具体包括:
6.根据权利要求5所述的基于图谱数据顶点的波纹动画渲染方法,其特征在于,所述按照所述第一合成模式将相应光圈半径的光圈图像在前一帧光圈图像的上层进...
【专利技术属性】
技术研发人员:罗涛,董学斌,董国强,丁先胜,张睿,王振宇,
申请(专利权)人:四川蜀天梦图数据科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。