CN101968888A - 一种适用于移动终端的矢量图形填充方法 - Google Patents

一种适用于移动终端的矢量图形填充方法 Download PDF

Info

Publication number
CN101968888A
CN101968888A CN 201010276398 CN201010276398A CN101968888A CN 101968888 A CN101968888 A CN 101968888A CN 201010276398 CN201010276398 CN 201010276398 CN 201010276398 A CN201010276398 A CN 201010276398A CN 101968888 A CN101968888 A CN 101968888A
Authority
CN
China
Prior art keywords
intersection point
pixel
current
gridrow
chained list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN 201010276398
Other languages
English (en)
Inventor
丘志杰
罗建超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Electronic and Information Engineering of Dongguan UESTC
Original Assignee
Institute of Electronic and Information Engineering of Dongguan UESTC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Electronic and Information Engineering of Dongguan UESTC filed Critical Institute of Electronic and Information Engineering of Dongguan UESTC
Priority to CN 201010276398 priority Critical patent/CN101968888A/zh
Publication of CN101968888A publication Critical patent/CN101968888A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

本发明公开了一种适用于移动终端的矢量图形填充方法,通过获取矢量图形多边形的边与各像素点相交的交点信息Grid(Xi),并在Y轴上的坐标Yi的依次存入链表GridRow(Yi)中。然后进行填充,在填充时,按照Y坐标递增序,依次对多边形涉及到得各GridRow进行处理,这个步骤包含两个部分,一是对边与扫描线的交点像素,进行反走样计算并填充合适的值,二是对此扫描线上的多边形内部区域进行填充,填充可以为实填充,也可以线性渐变填充与放射渐变填充。本发明的填充方法比起活性边填充方法和扫描线种子填充更适合于移动终端屏幕显示,耗时少,效率高,而且支持复杂自交多边形填充。

Description

一种适用于移动终端的矢量图形填充方法
技术领域
本发明属于计算机图形处理技术领域,更为具体地讲,涉及一种适用于移动终端的矢量图形填充方法。
背景技术
富媒体有别于传统媒体,它将文本,矢量图形,图片,动画,音视频等多种媒体对象在时间/空间上进行有机结合,提供丰富的表现形式和交互能力。其主要特征是可基于时间或用户交互的基础上产生动态行为。最近的研究报告表明,越来越多的富媒体应用被装载到移动终端上,例如,交互式电视、游戏、动态UI等。这些应用要求更低的内存消耗和更高的播放速度。目前移动领域的富媒体应用倾向于使用专门的富媒体引擎,通过定义基于XML规范的轻量级标记语言,脚本及其它技术等展现各种的富媒体应用。例如W3C的SVG Tiny 1.2标准,以及基于SVG Tiny 1.2标准上的扩展技术,如MPEG组织的LASeR标准、3GPP组织的DIMS标准,私有技术如NOKIA倡导的MORE方案和Adobe公司的Flashlite等。
富媒体内容播放的速度很大程度上取决于富媒体引擎所采用的渲染技术,移动设备上的渲染技术可以分为软件、硬件和软硬件结合三种。但是目前移动设备大多尚未配备硬件加速技术,且图形加速接口也不统一,所以移动设备的渲染技术还是主要采用纯软件实现方案。在具体实现过程中,在保证图形质量的情况下,除了需要充分考虑到降低计算量、减少内存需求,实现快速绘制外,还需要考虑到CPU处理能力、电池供电能力和内存带宽等因素。
针对软件实现的富媒体场景渲染,其主要的优化策略体现在多边形填充方面,可细分为复杂自交多边形处理,反走样处理、图形光栅化填充等方面。经过国内外专家学者的研究,这些方面都取得了长足的进步。多边形填充方面,虽然有很多成熟的算法,如活性边表和扫描线种子填充算法,但是支持反走样和复杂自交多边形的算法则很少,针对移动设备的优化则更少。如Kiia K基于经典的edge-flag填充算法提出的一种简单并高效的填充方式,但是其采用的n-rooks过采样策略不太适用于移动终端,而且文中并没有给出如何实现不同填充规则的算法;Khanh D的算法解决复杂自交多边形的问题,支持even-odd、nonzero、winding-counting三种填充方式,但是其算法难度高,且其采用的反走样策略并不适用与移动终端。
通常情况下富媒体场景处理流程一般分为3个步骤,分别是:
Step1.读取:这个步骤主要负责读入场景文档并解析创建场景树;
Step2.合成:这个步骤主要负责根据时间触发动画或者用户交互事件去改变当前场景树的状态;
Step3.渲染:主要负责根据Step2产生的场景树进行渲染。
经过对比发现,读取步骤虽然耗时很多,但是在场景处理流程中发生的次数并不多,一般发生在场景切换,或者LASeR等技术中接收到场景单元的时刻,剩下的两个部分将在场景处理中频繁发生,与合成相比,渲染占用了大量的时间,成为场景生命周期中最耗时间的一个环节,占用了大概80%的CPU时间。表1是现有技术在不同用例下采用渲染整个视口(viewport)的方式处理场景,三个步骤分别运行一次占用的时间对比。时间单位是毫秒,测试用例来源于08年9月份发布的W3C SVGTiny1.2TestSuite Beta3版本。
Figure BSA00000262490100021
表1
表1是富媒体场景处理流程中的3个步骤的时间开销对照表。从表1我们可以看出,渲染步骤是场景处理流程中最耗时的步骤,而造成这一结果的原因之一是一些没有发生变化或没有被变化影响到的元素也被渲染了,造成了资源无谓的浪费;另一方面在矢量图形光栅化填充过程中由于嵌入式设备的数据总线速度较低,对内存的大量读写也会耗费大量的时间。
发明内容
本发明的目的在于提供一种耗时少的适用于移动终端的矢量图形填充方法。
为实现上述发明目的,本发明适用于移动终端的矢量图形填充方法,其特征在于,包括以下步骤:
(1)、获取矢量图形的多边形顶点坐标及其顺序,选择第一个顶点作为当前顶点;
(2)、从当前顶点开始到下一个顶点按照线段绘制方式得到一条多边形的边,然后获取该条边与各像素点相交的交点信息Grid(Xj):包括像素点的X轴坐标Xj、该条边与像素点相交的两个交点在Y轴上的距离截距K以及参考面积A;
其中,j为像素点在X轴上的编号,j∈N,N是屏幕在X轴方向上的像素点总数;截距K带有方向性,如果该条边按Y轴方向递增,为正,否则为负;
参考面积A按照以下公式进行计算:
A = ( L 1 + L 2 ) × K 2 ;
式中,L1,L2是该条边与像素点相交的两个交点到像素点左边框的距离;
将获得的交点信息Grid(Xj)按交点像素在Y轴上的坐标Yi的依次存入链表GridRow(Yi)中,其中,i为像素点在Y轴上的编号,i∈M,M是屏幕在在Y轴方向上的像素点总数;
(3)、将下一个顶点作为当前顶点,重复步骤(2),直至矢量图形的多边形闭合;
(4)、填充
a1、获取链表GridRow(Y1),并将其设置为当前处理的链表GridRowcurrent
a2、按照交点坐标Xj递增序对当前链表GridRow所含交点信息Grid(Xj)进行桶排序,交点坐标Xj相同的交点信息Grid(Xj)进行合并,合并的规则是将截距K相加,参考面积A相加;
a3、排序后,按照交点坐标Xj递增方向,获得当前链表GridRow中第一个交点信息Grid(Xmin)作为当前交点信息Grid(Xcurrent),将其截距K记录为截距和K′,及其参考面积A,
a4、根据当前交点信息Grid(Xcurrent)的参考面积A、截距和K′以及选定的填充规则,计算出矢量图形的多边形内部区域占该交点像素的面积比例P;
按照反走样的区域采样策略,根据面积比例P,得到该交点像素的透明度信息,提取当前矢量图形的颜色及背景颜色,计算出该交点像素在屏幕上需要显示的颜色进行填充;
a5、判断当前交点信息Grid(Xcurrent)是否是当前链表GridRow中的最后一个;
如果不是,进一步判断,当前链表GridRow中下一个交点信息Grid(Xnext)中的X轴坐标是否与当前链表GridRowcurrent中的X轴坐标相邻,如果是相邻,则转到步骤a52,如果不相邻,则进行步骤a51;
a51、截距和K′是否为0,如果为0,则当前交点像素至下个交点像素之间的区域为矢量图形多边形的外部区域,不需要进行填充;截距和K′不为0,则根据选定的填充规则,计算出矢量图形的多边形内部区域占该交点像素的面积S″,若此时面积S″为0,则此区域为多边形外部区域,不需要进行填充,反之为内部区域,根据当前矢量图形的颜色进行填充;
a52、将当前链表GridRow中下一个交点信息Grid(Xnext)的截距K与截距和K′相加,返回步骤a4;
如果是,则进一步判断当前链表GridRow是否是最后一个链表GridRow(YM),如果不是最后一个链表GridRow(YM),则将按照Y坐标顺序递增的下一个链表GridRow(Ynext)设置为当前链表GridRowcurrent,返回步骤a2;如果是最后一个链表GridRow(YM),则矢量图形填充完毕。
矢量图形的多边形填充会涉及到排序和内存读写,本发明的方法的设计指导思想是在内存空间允许的条件下,尽量快速的排序以及尽量少的内存读写操作。在填充时,按照Y坐标递增序,依次对多边形涉及到得各GridRow进行处理,这个步骤包含两个部分,一个是对边与扫描线的交点像素,进行反走样计算并填充合适的值,二是对此扫描线上的多边形内部区域进行填充,填充可以为实填充,也可以线性渐变填充与放射渐变填充。
本发明的方法比起活性边填充方法和扫描线种子填充方法(又称扫描线边界填充方法)更适合于移动终端屏幕显示,耗时少,效率高,而且支持复杂自交多边形填充。在活性边填充算法中,活性边动态排序、选择或删除边时需要频繁的对内存空间进行申请和释放,算法的时间复杂度较高,这对处理速度慢的移动终端来说是难以接受的。在扫描线种子填充算法中,需要事先知道各边的边界与扫描线的交点与颜色,然后对当前扫描线的上下进行探测,确定种子,然后针对每一个种子进行填充,在这种方法中,存在不确定的栈空间分配,而且存在过多的像素点读写操作,在内存读写慢的移动设备上这种算法的填充效率并不高。
同时,本发明的方法充分考虑了移动设备的特点,支持复杂自交多边形填充以及even_odd和nonzero两种填充规则。扫描线上的多边形内部区域的填充可以为实填充、线性渐变填充和放射渐变填充。SVG元素的Stroke和Fill操作都可以使用这种算法。
附图说明
图1是本发明中一个交点信息Grid(Xj)的示意图;
图2是本发明中链表的GridRow(Yi)的存储示意图;
图3是本发明中链表获取的一具体实例示意图;
图4是一个自交多边形在某扫描线Yi上的局部效果图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
图1是本发明中一个交点信息Grid(Xj)的示意图。
在本发明中,定义了一个交点信息Grid(Xj),如图1所示,位于坐标(Xj,Yi)的像素点与矢量图形多边形的一条边E相交,这样,交点信息Grid(Xj)就定义为包括像素点的X轴坐标Xj、该条边E与像素点相交的两个交点在Y轴上的距离截距K以及参考面积A;其中j为像素点在X轴上的编号,j∈N,N是屏幕在X轴方向上的像素点总数;截距K带有方向性,如果该条边按Y轴方向递增,为正,否则为负;参考面积A按照以下公式进行计算:
A = ( L 1 + L 2 ) × K 2 ;
式中,L1,L2是该条边与像素点相交的两个交点到像素点左边框的距离。
交点信息Grid(Xj)中的截距K及参考面积A会被用于判断多边形内、外部区域以及反走样计算。
如图1所示,图中像素为某扫描线Yi中第j个像素点,此像素点与多边形的一条边E存在两个交点,两个交点距像素点左边框的距离分别是L1和L2,图1中,L2为一个像素宽度,边E与此像素点形成了长度为K的截距,K带有方向性,图1中,边E按Y方向递增为正,因此为正。边E与像素点相交形成了参考面积A,因为K带有方向性,所以A也有正负之分。在计算时可将一个像素的宽度记做Wp,则一个像素点面积定义为Wp 2个单位。按照所需精度,可以使用2n(n=2,4,6,8...)来表示Wp,距离L1和L2根据精度的不同也需要进行下取整计算。
参考面积A按照以下公式进行计算:
A = ( L 1 + L 2 ) × K 2 ;
图2是本发明中链表的GridRow(Yi)的存储示意图。
如图2所示,将获得的交点信息Grid(Xj)按交点像素在Y轴上的坐标Yi的依次存入链表GridRow(Yi)中,其中,,i为像素点在Y轴上的编号,i∈M,M是屏幕在在Y轴方向上的像素点总数。
这样,屏幕每一条扫描线对应于一个链表GridRow(Yi),链表GridRow(Yi)包含矢量图形的多边形与此扫描线相交的一个或多个Grid信息。
如图2所示,矢量图形的多边形的两条边E1,E2与坐标值Yi扫描线上的像素点相交,生成了3个交点信息Grid(Xj-(l+1))、Grid(Xj),Grid(Xj+1),并记录在对应的链表GridRow(Yi)中,其中,l是两个交点像素的间隔距离。
在本实施例中,步骤(2)中从当前顶点开始到下一个顶点按照线段绘制方式得到一条多边形的边,然后获取该条边与各像素点相交的交点信息Grid(Xj),将获得的交点信息Grid(Xj)按交点像素在Y轴上的坐标Yi的依次存入链表GridRow(Yi)中为:
2.1)、找到当前顶点的Y坐标Yi所对应的链表GridRow(Yi),计算该条边与当前扫描线的交点,得到交点信息,放入对应的链表GridRow(Yi)中;
2.2)、将Y坐标向该条边终点方向增加1个像素点,计算该条边与新的扫描线的交点,得到新的交点信息,放入对应的链表GridRow(Yi+1)或GridRow(Yi-1)中,重复此步骤,直至达到该条边的终点。
图3是本发明中链表获取的一具体实例示意图。
在本实施中,如图3所示,矢量图形的多边形顶点V1,V2,V3,V4以及对应的各边E1,E2,E3,E4,以及按照E1,E2,E3,E4的方式顺序处理各条边,得到的交点信息。其中按照Y轴正方向增长的边的参考面积是浅色,反之是深色。值得注意的是,例如,V1顶点涉及到两条边E1和E4,这两条边生成了各自的交点信息Grid(X1),这两个交点信息具有相同的横坐标值X1,但是参考面积不同,这两个交点信息Grid(X1)都会被记录在链表GridRow(Y5)中,类似,在V2,V3,V4上也是同样的情况。所以在链表GridRow(Y5)中,有3个交点信息,即Grid(X1)、Grid(X2)、Grid(X1)。类似,在链表GridRow(Y3)中有5个交点信息,即Grid(X5)、Grid(X5)、Grid(X4)、Grid(X1)、Grid(X1),在链表GridRow(Y1)中有4个交点信息,即Grid(X4)、Grid(X3)、Grid(X3)、Grid(X2)。处理完成时,每个GridRow(Y1~5)中的交点信息是按照多边形边的处理顺序排列的,例如GridRow(Y2)中的交点信息的顺序是Grid(X4)、Grid(X2)、Grid(X1)。尽管上述表述中,交点信息表述的符号有重叠,但是由于它们被放在不同的链表中以及不同的链表位置,因此,在移动终端中进行处理时,是可以区分的。
在本实施例中,a4步骤选定的填充规则为奇偶填充规则,即even_odd填充规则,矢量图形的多边形内部区域占该交点像素的面积比例P根据以下公式计算得出:
P = S ′ ′ W p 2 ;
上式中,WP为像素宽度,矢量图形的多边形内部区域占该交点像素的面积S″:
S &prime; &prime; = S &prime; , S &prime; < W p 2 2 W p 2 - S &prime; , S &prime; &GreaterEqual; W p 2
S′=|S|mod(2Wp 2);
S=K′×Wp-A;
上式面积S″也用于判断多边形内部区域,其数学特征保证了扫描线填充时经过奇数条边后进行填充,而经过偶数条边后不进行填充,符合even_odd规则。
在本实施例中,a4步骤选定的填充规则也可以为非零填充规则,即nonzero填充规则,矢量图形的多边形内部区域占该交点像素的面积比例P根据以下公式计算得出:
P = S &prime; &prime; W p 2 ;
上式中,WP为像素宽度,矢量图形的多边形内部区域占该交点像素的面积S″:
S &prime; &prime; = | S | , | S | < W p 2 W p 2 , | S | &GreaterEqual; W p 2
S=K′×Wp-A;
上式面积S″也用于判断多边形内部区域,其数学特征保证了当穿过Y轴正负方向的边相同时不进行填充,不同时进行填充,符合nonzero规则。
图4是一个自交多边形在某扫描线Yi上的局部效果图。
假设扫描线Yi上的交点像素Xj-(l+1)左边的区域是多边形外部,其中,l是两个交点像素的间隔距离,则无论使用even_odd填充规则还是nonzero填充规则填充,[Xj-(l+1),Xj]都属于多边形内部区域,但是在计算像素点Xj的面积比例P时,如果按照even_odd填充规则填充,则面积比例P小于1,如果按照nonzero填充规则填充,面积比例P等于1。当计算像素点Xj+1到下一个交点像素之间的区域是否是多边形内部区域时,不同的填充规则导致了不同的结果。在图4中,此时
Figure BSA00000262490100083
如果按照even_odd填充规则填充,则S″等于0,从而这段区域不需要填充,若按照nonzero填充规则填充,则S″等于Wp 2,则区域需要填充。even_odd填充规则与nonzero填充规则在本发明的填充中存在一定的区别。
表2是本发明的填充方法与其他俩种种填充算法在复杂度方面的比较,其中m为多边形涉及到的扫描线数,n为多边形在某扫描线上最多交点的数量,v为多边形边数量。
Figure BSA00000262490100091
表1
本发明的填充方法也属于扫描线填充算法的一种,其具有O(m×n)的时间复杂度和O(m×n)的空间复杂度,且扫描线数m<Min(PolygonHeight,ScreenHeight),最多交点的数量n<Min(PolygonWidth,ScreenWidth)。如表1所示,在移动终端上,活性边表填充算法的空间复杂度小于本发明的填充方法,但时间复杂度大于本发明的填充方法,在多边形很复杂时,由于涉及到活性边的动态排序,将耗费大量时间,移动终端上屏幕分辨率较小,本发明的填充方法中O(m×n)的空间复杂度能够承受。虽然本发明的方法与传统的扫描线种子填充算法相比具有相同的时间和空间复杂度,但是在具体实现时,后者需要额外的栈空间存储种子,而且需要大量的对内存的读写操作,而本发明的填充方法大部分只涉及到写操作。因为移动设备上数据总线相对较慢,采用本发明的填充方法时可以节省大量的IO操作时间。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

Claims (4)

1.一种适用于移动终端的矢量图形填充方法,其特征在于,包括以下步骤:
(1)、获取矢量图形的多边形顶点坐标及其顺序,选择第一个顶点作为当前顶点;
(2)、从当前顶点开始到下一个顶点按照线段绘制方式得到一条多边形的边,然后获取该条边与各像素点相交的交点信息Grid(Xj):包括像素点的X轴坐标Xj、该条边与像素点相交的两个交点在Y轴上的距离截距K以及参考面积A;
其中,j为像素点在X轴上的编号,j∈N,N是屏幕在X轴方向上的像素点总数;截距K带有方向性,如果该条边按Y轴方向递增,为正,否则为负;
参考面积A按照以下公式进行计算:
Figure FSA00000262480000011
式中,L1,L2是该条边与像素点相交的两个交点到像素点左边框的距离;
将获得的交点信息Grid(Xj)按交点像素在Y轴上的坐标Yi的依次存入链表GridRow(Yi)中,其中,i为像素点在Y轴上的编号,i∈M,M是屏幕在在Y轴上的像素点总数;
(3)、将下一个顶点作为当前顶点,重复步骤(2),直至矢量图形的多边形闭合;
(4)、填充
a1、获取链表GridRow(Y1),并将其设置为当前处理的链表GridRowcurrent
a2、按照交点坐标Xj递增序对当前链表GridRow所含交点信息Grid(Xj)进行桶排序,交点坐标Xj相同的交点信息Grid(Xj)进行合并,合并的规则是将截距K相加,参考面积A相加;
a3、排序后,按照交点坐标Xj递增方向,获得当前链表GridRow中第一个交点信息Grid(Xmin)作为当前交点信息Grid(Xcurrent),将其截距K记录为截距和K′,及其参考面积A,
a4、根据当前交点信息Grid(Xcurrent)的参考面积A、截距和K′以及选定的填充规则,计算出矢量图形的多边形内部区域占该交点像素的面积比例P;
按照反走样的区域采样策略,根据面积比例P,得到该交点像素的透明度信 息,提取当前矢量图形的颜色及背景颜色,计算出该交点像素在屏幕上需要显示的颜色进行填充;
a5、判断当前交点信息Grid(Xcurrent)是否是当前链表GridRow中的最后一个;
如果不是,进一步判断,当前链表GridRow中下一个交点信息Grid(Xnext)中的X轴坐标是否与当前链表GridRowcurrent中的X轴坐标相邻,如果是相邻,则转到步骤a52,如果不相邻,则进行步骤a51;
a51、截距和K′是否为0,如果为0,则当前交点像素至下个交点像素之间的区域为矢量图形多边形的外部区域,不需要进行填充;截距和K′不为0,则根据选定的填充规则,计算出矢量图形的多边形内部区域占该交点像素的面积S″,若此时面积S″为0,则此区域为多边形外部区域,不需要进行填充,反之为内部区域,根据当前矢量图形的颜色进行填充;
a52、将当前链表GridRow中下一个交点信息Grid(Xnext)的截距K与截距和K′相加,返回步骤a4;
如果是,则进一步判断当前链表GridRow是否是最后一个链表GridRow(YM),如果不是最后一个链表GridRow(YM),则将按照Y坐标顺序递增的下一个链表GridRow(Ynext)设置为当前链表GridRowcurrent,返回步骤a2;如果是最后一个链表GridRow(YM),则矢量图形填充完毕。
2.根据权利要求1所述的适用于移动终端的矢量图形填充方法,其特征在于,步骤(2)中从当前顶点开始到下一个顶点按照线段绘制方式得到一条多边形的边,然后获取该条边与各像素点相交的交点信息Grid(Xj),将获得的交点信息Grid(Xj)按交点像素在Y轴上的坐标Yi的依次存入链表GridRow(Yi)中为:
2.1)、找到当前顶点的Y坐标Yi所对应的链表GridRow(Yi),计算该条边与当前扫描线的交点,得到交点信息,放入对应的链表GridRow(Yi)中;
2.2)、将Y坐标向该条边终点方向增加1个像素点,计算该条边与新的扫描线的交点,得到新的交点信息,放入对应的链表GridRow(Yi+1)或GridRow(Yi-1)中,重复此步骤,直至达到该条边的终点。
3.根据权利要求1所述的适用于移动终端的矢量图形填充方法,其特征在于,a4步骤选定的填充规则为奇偶填充规则,即even odd填充规则,矢量图形的多边形内部区域占该交点像素的面积比例P根据以下公式计算得出: 
Figure FSA00000262480000031
上式中,WP为像素宽度,矢量图形的多边形内部区域占该交点像素的面积S″:
Figure FSA00000262480000032
S′=|S|mod(2Wp 2);
S=K′×Wp-A。
4.根据权利要求1所述的适用于移动终端的矢量图形填充方法,其特征在于,a4步骤选定的填充规则为非零填充规则,即nonzero填充规则,矢量图形的多边形内部区域占该交点像素的面积比例P根据以下公式计算得出:
Figure FSA00000262480000033
上式中,WP为像素宽度,矢量图形的多边形内部区域占该交点像素的面积S″:
Figure FSA00000262480000034
S=K′×Wp-A。 
CN 201010276398 2010-09-08 2010-09-08 一种适用于移动终端的矢量图形填充方法 Pending CN101968888A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010276398 CN101968888A (zh) 2010-09-08 2010-09-08 一种适用于移动终端的矢量图形填充方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010276398 CN101968888A (zh) 2010-09-08 2010-09-08 一种适用于移动终端的矢量图形填充方法

Publications (1)

Publication Number Publication Date
CN101968888A true CN101968888A (zh) 2011-02-09

Family

ID=43548038

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010276398 Pending CN101968888A (zh) 2010-09-08 2010-09-08 一种适用于移动终端的矢量图形填充方法

Country Status (1)

Country Link
CN (1) CN101968888A (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102184515A (zh) * 2011-04-13 2011-09-14 合肥芯硕半导体有限公司 一种在fpga中实现梯形图填充的方法
CN102682419A (zh) * 2011-03-14 2012-09-19 扬智科技股份有限公司 用于向量图形的动态线段对照表产生方法及装置
CN102945557A (zh) * 2012-10-12 2013-02-27 北京海鑫科金高科技股份有限公司 基于移动终端的矢量现场图绘制方法
CN103136169A (zh) * 2011-11-29 2013-06-05 中兴通讯股份有限公司 一种显示文字的方法及装置
CN105046729A (zh) * 2015-08-07 2015-11-11 浙江大学 一种高效并行矢量数据可视化方法
CN106411702A (zh) * 2016-09-13 2017-02-15 深圳市华傲数据技术有限公司 基于图计算引擎的异步消息发送方法及系统
CN106530208A (zh) * 2016-11-22 2017-03-22 中国人民解放军理工大学 一种基于gpu的任意多边形相交面积计算方法
CN106709857A (zh) * 2016-11-22 2017-05-24 中国人民解放军理工大学 一种基于概率统计的任意多边形相交面积计算方法
CN106934842A (zh) * 2017-03-10 2017-07-07 广州视源电子科技股份有限公司 闭合区域的识别方法和装置
CN107146268A (zh) * 2016-03-01 2017-09-08 北大方正集团有限公司 矢量图形的填充方法和矢量图形的填充装置
CN109801242A (zh) * 2019-01-23 2019-05-24 西南交通大学 一种基于改进漫水填充算法的栅格图像矢量化方法
CN109934886A (zh) * 2019-03-07 2019-06-25 广州视源电子科技股份有限公司 图形的填充方法、装置及交互智能设备
CN110070591A (zh) * 2019-04-25 2019-07-30 湖南科技大学 一种计算机绘图用的多边形填充方法
CN110533739A (zh) * 2019-08-15 2019-12-03 深圳供电局有限公司 一种地图网格的成图方法
CN110674890A (zh) * 2019-10-15 2020-01-10 广东三维家信息科技有限公司 填充模型的建立方法、图形填充方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099750A (ja) * 1998-09-25 2000-04-07 Fuji Xerox Co Ltd 画像処理装置及び画像処理方法
US20040155881A1 (en) * 1999-05-25 2004-08-12 Naoya Kotani Image filling method, apparatus and computer readable medium for reducing filling process in processing animation
CN101414382A (zh) * 2007-10-16 2009-04-22 联发科技股份有限公司 粗线绘制方法及其装置
CN101470893A (zh) * 2007-12-26 2009-07-01 中国科学院声学研究所 一种基于位图缓存的矢量图形显示的加速方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099750A (ja) * 1998-09-25 2000-04-07 Fuji Xerox Co Ltd 画像処理装置及び画像処理方法
US20040155881A1 (en) * 1999-05-25 2004-08-12 Naoya Kotani Image filling method, apparatus and computer readable medium for reducing filling process in processing animation
CN101414382A (zh) * 2007-10-16 2009-04-22 联发科技股份有限公司 粗线绘制方法及其装置
CN101470893A (zh) * 2007-12-26 2009-07-01 中国科学院声学研究所 一种基于位图缓存的矢量图形显示的加速方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《计算机辅助设计与图形学学报》 20100831 张骥先 等 移动设备上富媒体场景渲染优化策略 第22卷, 第8期 2 *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102682419A (zh) * 2011-03-14 2012-09-19 扬智科技股份有限公司 用于向量图形的动态线段对照表产生方法及装置
CN102682419B (zh) * 2011-03-14 2015-04-22 扬智科技股份有限公司 用于向量图形的动态线段对照表产生方法及装置
CN102184515B (zh) * 2011-04-13 2013-02-06 合肥芯硕半导体有限公司 一种在fpga中实现梯形图填充的方法
CN102184515A (zh) * 2011-04-13 2011-09-14 合肥芯硕半导体有限公司 一种在fpga中实现梯形图填充的方法
CN103136169A (zh) * 2011-11-29 2013-06-05 中兴通讯股份有限公司 一种显示文字的方法及装置
WO2013078788A1 (zh) * 2011-11-29 2013-06-06 中兴通讯股份有限公司 一种显示文字的方法及装置
CN102945557B (zh) * 2012-10-12 2016-03-16 北京海鑫科金高科技股份有限公司 基于移动终端的矢量现场图绘制方法
CN102945557A (zh) * 2012-10-12 2013-02-27 北京海鑫科金高科技股份有限公司 基于移动终端的矢量现场图绘制方法
CN105046729B (zh) * 2015-08-07 2017-09-26 浙江大学 一种高效并行矢量数据可视化方法
CN105046729A (zh) * 2015-08-07 2015-11-11 浙江大学 一种高效并行矢量数据可视化方法
CN107146268A (zh) * 2016-03-01 2017-09-08 北大方正集团有限公司 矢量图形的填充方法和矢量图形的填充装置
CN107146268B (zh) * 2016-03-01 2019-12-31 北大方正集团有限公司 矢量图形的填充方法和矢量图形的填充装置
CN106411702B (zh) * 2016-09-13 2019-08-20 深圳市华傲数据技术有限公司 基于图计算引擎的异步消息发送方法及系统
CN106411702A (zh) * 2016-09-13 2017-02-15 深圳市华傲数据技术有限公司 基于图计算引擎的异步消息发送方法及系统
CN106530208A (zh) * 2016-11-22 2017-03-22 中国人民解放军理工大学 一种基于gpu的任意多边形相交面积计算方法
CN106709857A (zh) * 2016-11-22 2017-05-24 中国人民解放军理工大学 一种基于概率统计的任意多边形相交面积计算方法
CN106530208B (zh) * 2016-11-22 2019-04-09 中国人民解放军理工大学 一种基于gpu的任意多边形相交面积计算方法
CN106709857B (zh) * 2016-11-22 2019-12-10 中国人民解放军理工大学 一种基于概率统计的任意多边形相交面积计算方法
CN106934842A (zh) * 2017-03-10 2017-07-07 广州视源电子科技股份有限公司 闭合区域的识别方法和装置
CN106934842B (zh) * 2017-03-10 2020-10-02 广州视源电子科技股份有限公司 闭合区域的识别方法和装置
CN109801242A (zh) * 2019-01-23 2019-05-24 西南交通大学 一种基于改进漫水填充算法的栅格图像矢量化方法
CN109801242B (zh) * 2019-01-23 2022-09-02 西南交通大学 一种基于改进漫水填充算法的栅格图像矢量化方法
CN109934886A (zh) * 2019-03-07 2019-06-25 广州视源电子科技股份有限公司 图形的填充方法、装置及交互智能设备
CN110070591A (zh) * 2019-04-25 2019-07-30 湖南科技大学 一种计算机绘图用的多边形填充方法
CN110070591B (zh) * 2019-04-25 2023-01-20 湖南科技大学 一种计算机绘图用的多边形填充方法
CN110533739A (zh) * 2019-08-15 2019-12-03 深圳供电局有限公司 一种地图网格的成图方法
CN110533739B (zh) * 2019-08-15 2024-02-23 深圳供电局有限公司 一种地图网格的成图方法
CN110674890A (zh) * 2019-10-15 2020-01-10 广东三维家信息科技有限公司 填充模型的建立方法、图形填充方法、装置及电子设备
CN110674890B (zh) * 2019-10-15 2022-02-01 广东三维家信息科技有限公司 填充模型的建立方法、图形填充方法、装置及电子设备

Similar Documents

Publication Publication Date Title
CN101968888A (zh) 一种适用于移动终端的矢量图形填充方法
CN100547616C (zh) 一种基于分级层次化深度网格的森林绘制方法
Lempitsky et al. Fusion moves for markov random field optimization
US8570322B2 (en) Method, system, and computer program product for efficient ray tracing of micropolygon geometry
CN102103512B (zh) 编译可编程剔除单元
CN101261743B (zh) 一种基于规则网格的大规模地形漫游模拟方法
CN101968887A (zh) 一种富媒体场景的局部渲染方法
CN103021023A (zh) 一种基于浏览器的三维场景构建方法
CN101739223A (zh) 一种通过虚拟打印实现文档格式转换的方法及系统
Garanzha et al. Grid-based SAH BVH construction on a GPU
CN102915563A (zh) 三维网格模型透明绘制的方法及其系统
CN102831275A (zh) 一种3d流体的仿真方法及系统
CN104537697A (zh) 一种渐进模糊动画的实现方法
CN101394489B (zh) 一种基于模板和参数步长的字幕渲染效率瓶颈自动定位的方法
CN103164864A (zh) 计算机图像处理中多边形的三角化方法及其系统
CN104750837A (zh) 增长型时间序列数据的可视化方法和系统
Wald et al. Fast, parallel, and asynchronous construction of BVHs for ray tracing animated scenes
CN103065349B (zh) 一种数据渲染方法及装置
CN102214356A (zh) 基于nvidia gpu平台的最佳邻域匹配并行图像恢复方法
CN102129664B (zh) 一种rgb空间图像区域像素信息压缩存储和还原方法
CN103247077A (zh) 一种基于多顶点对处理的三维模型边折叠简化的方法
CN105741335A (zh) 一种基于分块组织的多层次兵棋地图快速绘制方法
CN102280098B (zh) 点阵字缩放的方法及系统
CN109859094B (zh) 一种时序影像瓦片金字塔的快速构建方法
CN103810671A (zh) Rgb模式图像的色彩拉伸方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20110209