细分曲线数据处理实现方法、系统、介质及矢量图形处理装置制造方法及图纸

技术编号:31982299 阅读:27 留言:0更新日期:2022-01-20 01:49
本发明专利技术提供一种细分曲线数据处理实现方法、系统、介质及矢量图形处理装置,包括以下步骤:针对细分曲线的矢量线与X/Y行相交得到的交叉点的指定坐标设置一级至多级缓存表;将信息表在所述存储器中的地址存储在所述内容表,将所述内容表在所述存储器中的地址存储在所述一级缓存表,将所述一级缓存表在存储器中的地址存储在更上一级缓存表;所述信息表中存储所述指定坐标对应的节点信息。本发明专利技术的细分曲线数据处理方法、系统、介质及矢量图形处理装置通过多级查找表的方式基于交叉点的X/Y坐标排序进行有效数据的存储,从而有效地减少了对存储器资源的需求,支持多路细分曲线处理,提升了矢量图形渲染的性能。升了矢量图形渲染的性能。升了矢量图形渲染的性能。

【技术实现步骤摘要】
细分曲线数据处理实现方法、系统、介质及矢量图形处理装置


[0001]本专利技术涉及数据结构的处理方法,特别是涉及一种细分曲线(Tessellation)的数据结构处理实现方法、系统、介质及矢量图形处理装置。

技术介绍

[0002]Tessellation技术,也被称为细分曲线技术。在矢量图形(Vector Graphic)的应用中,tessellation产生的线与某个Y行生成交叉(intersection)点,这些交叉点需要存放于存储器(memory)。Tessellation处理完成当前矢量图形后,再将存储器中存放的交叉点数据读回;并根据交叉点的填充和位置信息计算矢量图形中每一个像素(pixel)的覆盖率值,按照填充规则绘制出整个矢量图形。
[0003]现有技术中,Tessellation的数据结构(Data structure)中存储器中存放信息为整个矢量图形所有像素的填充和统计信息,这种实现方式导致Tessellation对于存储器资源的需求很大。另外,大的存储器需求使得硬件很难实现多路细分曲线的并行工作,限制了系统硬件的性能。
[0004]在Tessellation处理完整个矢量图形后,使用现有技术中的数据结构需要根据矢量图形位置从上到下、从左到右的顺序将存储器中的数据全部读回,寻找到交叉点,进行渲染。上述存储器数据读回方式具有以下缺陷:
[0005](1)导致系统的带宽很大;
[0006](2)寻找交叉点花费的时间很长,相当于对于矢量图形填充增加了很大的气泡时间,严重影响了渲染的性能。
[0007]另外,为了减少与存储器的交互,硬件中通常会添加缓存存储器(cache)来缓存一部分数据。而现有技术中的cache命中率较低,导致系统的带宽变大,性能降低,功耗增加。

技术实现思路

[0008]鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种细分曲线数据处理实现方法、系统、介质及矢量图形处理装置,通过多级查找表的方式基于交叉点的坐标进行有效数据的存储,从而有效地减少了对存储器资源的需求,支持多路细分曲线处理,提升了矢量图形渲染的性能。
[0009]为实现上述目的及其他相关目的,本专利技术提供一种矢量图形处理装置中细分曲线数据处理实现方法,包括以下步骤:针对细分曲线的矢量线与X/Y行相交得到的交叉点的指定坐标设置一级至多级缓存表;所述指定坐标为X坐标或Y坐标;将信息表在所述存储器中的地址存储在所述内容表,将所述内容表在所述存储器中的地址存储在所述一级缓存表,将所述一级缓存表在存储器中的地址存储在更上一级缓存表;所述信息表中存储所述指定坐标对应的节点信息;当所述指定坐标为X坐标时,对应的节点信息为Y节点信息;当所述指定坐标为Y坐标时,对应的节点信息为X节点信息。
[0010]于本专利技术一实施例中,多个指定坐标对应的所有节点信息共同保存在多个信息表
中,单个信息表保存有多个指定坐标的部分节点信息。
[0011]于本专利技术一实施例中,所述信息表中保存的指定坐标的个数按照需求设置一个或多个;所述部分节点的个数由所述指定坐标的个数和所述信息表的宽度决定。
[0012]于本专利技术一实施例中,所述X节点信息包括交叉点的X坐标、填充信息、子位置和子位置个数;所述Y节点信息包括交叉点的Y坐标、填充信息、子位置和子位置个数;所述子位置包括X子位置和Y子位置。
[0013]于本专利技术一实施例中,细分曲线单次处理节点的最大数量能够自定义,若待处理的节点个数大于所述最大数量,首先针对前最大数量个节点进行矢量图形的渲染,再针对剩余的节点进行矢量图形的渲染;当不设置所述最大数量时,单次对所有节点进行矢量图形的渲染。
[0014]于本专利技术一实施例中,所述信息表中各个节点根据对应的坐标依次从小到大排序;在所述内容表中设置节点的坐标最大值或坐标最小值;当节点的存储个数为所述最大数量时,若新产生的交叉点的坐标大于所述坐标最大值时,直接丢弃所述交叉点,并在下一轮时将所述坐标最小值设置为上一轮的坐标最大值,只处理坐标大于所述坐标最小值的新产生的交叉点。
[0015]于本专利技术一实施例中,所述信息表中各个节点根据对应的坐标依次从大到小排序;在所述内容表中设置节点的坐标最大值或坐标最小值;当节点的存储个数为所述最大数量时,若新产生的交叉点的坐标小于所述坐标最小值时,直接丢弃所述交叉点,并在下一轮时将所述坐标最大值设置为上一轮的坐标最小值,只处理坐标小于所述坐标最大值的新产生的交叉点。
[0016]于本专利技术一实施例中,根据新的交叉点的指定坐标在最高级缓存表中查找对应的下一级缓存表的地址,直至得到一级缓存表地址;
[0017]若所述某一级缓存表不在缓存存储器中,从所述存储器中读取所述此级缓存表,再在所述此级缓存表中获取对应的下一级缓存表地址;否则直接在所述此级缓存表中获取对应的下一级地址;
[0018]若所述一级缓存表不在缓存存储器中,从所述存储器中读取所述一级缓存表,再在所述一级缓存表中获取对应的内容表地址;否则直接在所述一级缓存表中获取对应的内容表地址;
[0019]若所述内容表不在所述缓存存储器中,从所述存储器中读取所述内容表,再根据内容表判断是否丢掉所述新的交叉点;否则直接根据内容表判断是否丢掉所述新的交叉点;
[0020]若丢掉所述新的交叉点,更新所述内容表;若不丢掉所述新的交叉点,获取对应的信息表地址;若信息表不在所述缓存存储器中,从所述存储器中读取所述信息表,将所述新的交叉点的信息更新或增加至所述信息表中的节点信息,并更新所述内容表;否则直接将所述新的交叉点的信息更新或增加至所述信息表中的节点信息,并更新所述内容表。
[0021]对应地,本专利技术提供一种矢量图形处理装置中细分曲线数据处理实现系统,包括设置模块和存储模块;
[0022]所述设置模块用于针对细分曲线产生的交叉点的指定坐标设置一级至多级缓存表;所述指定坐标为X坐标或Y坐标;
[0023]所述存储模块用于将信息表在所述存储器中的地址存储在所述内容表,将所述内容表在所述存储器中的地址存储在所述一级缓存表,将所述一级缓存表在存储器中的地址存储在更上一级缓存表;所述信息表中存储所述指定坐标对应的节点信息;当所述指定坐标为X坐标时,对应的节点信息为Y节点信息;当所述指定坐标为Y坐标时,对应的节点信息为X节点信息。
[0024]本专利技术提供一种存储介质,其上存储有计算机程序,该所述计算机程序被处理器执行时实现上述的矢量图形处理装置中细分曲线数据处理实现方法。
[0025]最后,本专利技术提供一种矢量图形处理装置,包括:处理器及存储器;
[0026]所述存储器用于存储计算机程序;
[0027]所述处理器用于执行所述存储器存储的计算机程序,以使所述矢量图形处理装置执行上述的矢量图形处理装置中细分曲线数据处理实现方法。
[0028]如上所述,本专利技术的细分曲线数据处理实现方法、系统、介质及矢量图形处理装置,具有以下有益效果:
[002本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种矢量图形处理装置中细分曲线数据处理实现方法,其特征在于:包括以下步骤:针对细分曲线的矢量线与X/Y行相交得到的交叉点的指定坐标设置一级至多级缓存表;所述指定坐标为X坐标或Y坐标;将信息表在所述存储器中的地址存储在所述内容表,将所述内容表在所述存储器中的地址存储在所述一级缓存表,将所述一级缓存表在存储器中的地址存储在更上一级缓存表;所述信息表中存储所述指定坐标对应的节点信息;当所述指定坐标为X坐标时,对应的节点信息为Y节点信息;当所述指定坐标为Y坐标时,对应的节点信息为X节点信息。2.根据权利要求1所述的矢量图形处理装置中细分曲线数据处理实现方法,其特征在于:多个指定坐标对应的所有节点信息共同保存在多个信息表中,单个信息表保存有多个指定坐标的部分节点信息。3.根据权利要求2所述的矢量图形处理装置中细分曲线数据处理实现方法,其特征在于:所述信息表中保存的指定坐标的个数按照需求设置一个或多个;所述部分节点的个数由所述指定坐标的个数和所述信息表的宽度决定。4.根据权利要求1所述的矢量图形处理装置中细分曲线数据处理实现方法,其特征在于:所述X节点信息包括交叉点的X坐标、填充信息、子位置和子位置个数;所述Y节点信息包括交叉点的Y坐标、填充信息、子位置和子位置个数;所述子位置包括X子位置和Y子位置。5.根据权利要求1所述的矢量图形处理装置中细分曲线数据处理实现方法,其特征在于:细分曲线单次处理节点的最大数量能够自定义,若待处理的节点个数大于所述最大数量,首先针对前最大数量个节点进行矢量图形的渲染,再针对剩余的节点进行矢量图形的渲染;当不设置所述最大数量时,单次对所有节点进行矢量图形的渲染。6.根据权利要求5所述的矢量图形处理装置中细分曲线数据处理实现方法,其特征在于:所述信息表中各个节点根据对应的坐标依次从小到大排序;在所述内容表中设置节点的坐标最大值或坐标最小值;当节点的存储个数为所述最大数量时,若新产生的交叉点的坐标大于所述坐标最大值时,直接丢弃所述交叉点,并在下一轮时将所述坐标最小值设置为上一轮的坐标最大值,只处理坐标大于所述坐标最小值的新产生的交叉点。7.根据权利要求5所述的矢量图形处理装置中细分曲线数据处理实现方法,其特征在于:所述信息表中各个节点根据对应的坐标依次从大到小排序;在所述内容表中设置节点的坐标最大值或坐标最小值;当节点的存储个数为所述最大数量时,若新产生的交叉点的坐标小于所述坐标最小...

【专利技术属性】
技术研发人员:迟丞李江波迈克
申请(专利权)人:芯原控股有限公司芯原微电子南京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1