用在图形光栅扫描中的凸多边形插值方法和系统的制作方法

文档序号:2585407阅读:188来源:国知局
专利名称:用在图形光栅扫描中的凸多边形插值方法和系统的制作方法
技术领域
本发明涉及图像处理领域,更具体地涉及一种用在图形光栅扫描中的凸多边形遍历方法和系统、以及插值方法和系统。
背景技术
图形光栅扫描过程是将几何图形(例如,线、三角形、多边形等)映射成显示器上的像素的过程。凸多边形是图形学中重要的几何图形。“凸多边形遍历”过程是用来找到所有位于凸多边形内部的像素的过程。“凸多边形插值”过程是计算凸多边形内部的像素的参数值(例如,R、G、B等)的过程。边方程技术是凸多边形光栅扫描的基础。“边方程”指的是凸多边形各条边的直线方程。位于凸多边形内部的像素的各条边方程的值同时为正或同时为负。基于这个性质,可以使用边方程来判断一个像素是否位于凸多边形的内部。传统的凸多边形光栅扫描方法是将凸多边形划分成一系列三角形然后利用三角形的光栅扫描方法来实现整个凸多边形的光栅扫描过程的方法。由于划分成三角形后引入了大量的多余边,使得传统的凸多边形光栅扫描方法需要的运算量很大,所以凸多边形光栅扫描过程耗时较长,占用的计算设备的计算资源较多。

发明内容
鉴于以上所述的一个或多个问题,本发明提供了一种用在图形光栅扫描中的凸多边形遍历方法和系统、以及插值方法和系统。根据本发明实施例的用在图形光栅扫描中的凸多边形遍历方法,包括以下步骤 S302,根据凸η边形的η个顶点的坐标值,构造用在对凸η边形进行光栅扫描的过程中的两个边界框,其中,η为大于2的整数;S304,为该两个边界框中的每一个设置遍历起始位置; 以及S306,分别从该两个边界框中的每一个的遍历起始位置开始,对位于该两个边界框中的每一个中的凸η边形部分进行遍历。根据本发明实施例的用在图形光栅扫描中的凸多边形遍历系统,包括边界框构造单元,用于根据凸η边形的η个顶点的坐标值,构造用在对凸η边形进行光栅扫描的过程中的两个边界框,其中,η为大于2的整数;起始位置设置单元,用于为该两个边界框中的每一个设置遍历起始位置;以及图形遍历单元,用于从该两个边界框中的每一个的遍历起始位置开始,对位于该两个边界框中的每一个中的凸η边形部分进行遍历。根据本发明实施例的用在图形光栅扫描中的凸多边形插值方法,包括以下步骤 S702,将凸多边形从绝对坐标系转换到以凸多边形的任意一边为坐标轴的相对坐标系; S704,根据位于凸多边形内的待插值像素在该相对坐标系中的Y轴坐标值和凸多边形的每条边的顶点在该相对坐标系中的Y轴坐标值,为待插值像素选择相交边;以及S706,利用该相交边的顶点的参数值,插值得到待插值像素的参数值。根据本发明实施例的用在图形光栅扫描中的凸多边形插值系统,包括坐标系转换单元,用于将凸多边形从绝对坐标系转换到以凸多边形的任意一边为坐标轴的相对坐标系;相交边选择单元,用于根据位于凸多边形内的待插值像素在该相对坐标系中的Y轴坐标值和凸多边形的每条边的顶点在该相对坐标系中的Y轴坐标值,为待插值像素选择相交边;以及参数值计算单元,用于利用该相交边的顶点的参数值,插值得到待插值像素的参数值。本发明避免了将凸多边形划分成三角形后引入的大量多余边,从而使得凸多边形光栅扫描方法/系统需要的运算量变小,所以凸多边形光栅扫描过程耗时变短,占用的计算设备的计算资源变少。


图1示出了凸多边形光栅扫描系统的示意框图;图2示出了根据本发明实施例的用在图1所示系统中的设置模块和遍历模块的示意框图;图3示出了根据本发明实施例的用在图2所示模块中的凸多边形遍历方法的流程图;图4示出了根据本发明实施例的构造两个边界框的各种情况的示意图;图5示出了根据本发明实施例的两个边界框的遍历起始位置的示意图;图6示出了计算每个边界框中的每一个扫描行的起始扫描点的过程的示意图;图7示出了根据本发明实施例的用在图2所示模块中的凸多边形插值方法的流程图;以及图8示出了根据本发明实施例的相对坐标系以及该坐标系中的待插值像素点及其相交边和相交点的示意图。
具体实施例方式图1示出了凸多边形光栅扫描系统的示意图。如图1所示,该凸多边形光栅扫描系统包括顶点存储器102、变换和投影模块104、设置和遍历模块106、帧缓存模块108、以及显示模块110。在对凸多边形进行光栅扫描的过程中,首先将顶点信息(原始坐标)从顶点存储器中读出。然后,将顶点的原始坐标通过变换和投影模块的运算转换成光栅扫描系统的设备坐标。接着,设置和遍历模块106使用顶点的设备坐标来计算哪些像素位于凸多边形内部,并且计算这些位于凸多边形内部的像素的参数值(颜色/纹理)。最后,将这些像素的参数值写入帧缓存模块,并通过显示模块显示出来。图2示出了根据本发明实施例的用在图1所示系统中的设置模块和遍历模块的示意框图。如图2所示,设置和遍历模块具体分为设置模块和遍历模块。其中,设置模块利用凸多边形的顶点坐标来计算凸多边形的各条边的边方程并构造扫描边界框。遍历模块利用凸多边形各条边的边方程和边界框信息判断边界框中的哪些像素位于凸多边形内部并计算这些内部像素的参数值。图3示出了根据本发明实施例的用在图2所示模块中的凸多边形遍历方法的流程图。如图3所示,该凸多边形遍历方法包括以下三个步骤S302,根据凸η边形的η个顶点的坐标值,构造用在对凸η边形进行光栅扫描的过程中的两个边界框,其中,η为大于2的整数;S304,为该两个边界框中的每一个设置遍历起始位置;以及S306,分别从该两个边界框中的每一个的遍历起始位置开始,对位于该两个边界框中的每一个中的凸η边形部分进行遍历。下面详细描述图3所示方法中的步骤S302。假设,凸多边形的顶点为VtlJ1J2、…、 \。其中,每个顶点的坐标为(&,1),1 = 0、1、2、…、η。这里的&和Yi均为浮点值。用在对凸η边形进行光栅扫描的过程中的两个边界框通过以下过程得到首先,获取凸多边形的顶点的X轴坐标值中的最小值和最大值、以及Y轴坐标值中的最小值和最大值fxmin = min(X0, X1, X2"'Xn) ;fxmax = max (X0, X1, X2"'Xn);fymin = min(Y0, Y1, t Yn) ;fymax = max (Y0, Y1, t Yn)。其中,min()、max ()函数返回η个变量的最大值和最小值。fxmin、fxmax、fymin、 fymax均为浮点值。然后,根据以上获取的凸多边形的顶点的X轴坐标值中的最小值和最大值,找出凸多边形的最左边的顶点Vlrft (其中,最左边的顶点的X轴坐标值)(lrft = fxmin) 0接着,根据凸多边形的最左边的顶点的Y轴坐标值(Ylrft)与以上获取的凸多边形的顶点的Y轴坐标值的最小值和最大值的关系,构造用在对凸多边形进行光栅扫描的过程中的边界框(图4示出了构造两个边界框的以下三种情况)情形1,Yleft = fymin。在这种情形下,上边界框为空,下边界框定义如下fxmin—bot = fxmin ;fxmax—bot = fxmax ;fymin—bot = fymin ;fymax—bot = fymax ;xmin—bot = ceil (fxmin—bot = fxmin);xmax—bot = floor (fxmax—bot = fxmax);ymin—bot = ceil (fymin—bot = fymin);ymax—bot = floor (fymax—bot = fymax)。其中,fxmin—bot、fxmax—bot、fymin—bot、fymax—bot 表示下边界框在 X 方向的最大最小值(浮点)以及在Y方向的最大最小值(浮点)。min_bot、xmax_bot. ymin_bot. ymax—bot表示下边界框在χ方向的最大/最小值(整点)以及在y方向的最大最小值(整点)。ceil (float—a)函数返回不小于a的最小整数,例如,ceil (1. 5) =2。Floor (float— a)函数返回不大于a的最大整数,例如,floord. 5) = 1。其中,当凸多边形的顶点位于显示平面之外时,假设显示平面的显示范围为 [clip—xmin,clip—xmax],[clip—ymin,clip—ymax],需要进行如下裁剪操作if (xmin—bot < clip_xmin) xmin—bot = clip_xmin ;if (ymin—bot < clip_ymin) ymin—bot = clip_ymin ;if (xmax—bot > clip_xmax) xmax—bot = clip_xmax ;
if (ymax_bot > clip_ymax) ymax_bot = clip_ymax.经过以上过程,可以得到下边界框的四个顶点的坐标(xmin—bot,ymin_bot), (xmin_bot,ymax一bot),(xmax_bot,ymin_bot),(xmax—bot,ymax_bot)。情形2,Yleft = f ymax ο在这种情形下,下边界框为空,上边界框定义如下fxmin—top = fxmin ;fxmax_top = fxmax ;fymin—top = fymin ;fymax—top = fymax ;xmin_top = ceil (fxmin—top) ;xmax_top = floor (fxmax_top);ymin—top = ceil (fymin_top) ;ymax—top = floor (fymax_top) 0同样,如上所述,当凸多边形的顶点位于显示平面之外时,假设显示平面的显示范围为[clip_xmin,clip—xmax],[clip—ymin,clip—ymax],需要进行如下裁剪操作if (xmin_top < clip—xmin)xmin—top = clip—xmin ;if (ymin—top < clip—ymin) ymin—top = clip—ymin ;if (xmax—top > clip—xmax) xmax—top = clip_xmax ;if (ymax—top > clip—ymax) ymax—top = clip—ymax。经过以上过程,可以得到上边界框的四个顶点的坐标Oonir^top,ymin—top), (xmin—top,ymax一top),(xmax—top,ymin—top),(xmax—top,ymax—top)。情形 3,fymin < Yleft < fymax □在这种情形下,上边界框定义如下fxmin—top = fxmin ;fxmax—top = fxmax ;fymin—top = fymin ;fymax_top = Yleft ;xmin—top = ceil (fxmin—top);xmax—top = floor (fxmax—top);ymin—top = ceil (fymin—top);ymax—top = floor (fymax—top)。下边界框定义如下fxmin—bot = fxmin ;fxmax—bot = fxmax ;fymin—bot = Yleftfymax—bot = fymax ;xmin—bot = ceil (fxmin—bot);xmax—bot = floor (fxmax—bot);ymin—bot = ceil (fymin—bot);ymax—bot = floor (fymax—bot)。同样,如上所述,当凸多边形的顶点位于显示平面之外时,假设显示平面的显示范围为[clip—xmin,clip—xmax],[clip—ymin,clip—ymax],需要进行如下裁剪操作


if (xmin—top if (ymin—top if (xmax—top if (ymax—top if (xmin—bot if (ymin—bot if (xmax—bot if (ymax—bot
<clip—xmin)xmin—top
<clip—ymin)ymin—top
>clip_xmax)xmax_top
>clip_ymax)ymax_top
<clip_xmin)xmin—bot
<clip_ymin)ymin—bot
>clip_xmax)xmax—bot
>clip_ymax)ymax—bot
=clip_xmin =clip_ymin =clip_xmax =clip_ymax =clip_xmin =clip_ymin =clip_xmax =clip_ymax,过以上过程,可以得到上边界框的四个顶点的坐标为Oonin—top,ymin—top), (xmin—top,ymax—top),(xmax—top,ymin—top),(xmax—top,ymax—top),下边界框的四个丁页点的坐标为(xmin—bot,ymin—bot),(xmin—bot,ymax—bot),(xmax—bot,ymin—bot),(xmax— bot, ymax—bot)。图5示出了根据本发明实施例的两个边界框的遍历起始位置的示意图。如图5所示,上边界框的遍历起始位置为上边界框的左下角,下边界框的遍历起始位置为下边界框的左上角。并且,在上边界框中,按照从左到右、从下到上的方向对位于上边界框中的凸多边形部分进行遍历,在下边界框中,按照从左到右、从上到下的方向对位于下边界框中的凸多边形部分进行遍历。图6示出了计算每个边界框中的每一个扫描行的起始扫描点的过程的示意图。这个过程通过自适应地调整各扫描行的起始扫描点来遍历边界框。扫描过程包括三个阶段1.从每一行的起始扫描点开始,沿着水平方向找到位于凸多边形内的像素点。其中,像素点位于凸多边形内等价于e0(x,y) > OMe1 (χ, y) > 0&&…&&en(x,y) > 0。
其中,ei(x,y) (i = 0,1,2
e0(x,y) = a0氺x+b0氺y+c0 β! (χ, y) = a^x+b^y+Ci e2 (χ, y) = a2氺x+b2氺y+c2
O是凸多边形各条边的边方程…en(x, y) = an*x+bn*y+cn。2.当像素p(x,y)满足以下条件时,结束当前行的扫描过程JnRightPolygon(X, y)为真;或者P(x,y)位于边界框外。其中,InRightPolygon(x, y)函数是用来判断像素 P(x,y)是否位于凸多边形的右边的函数。当p(x,y)相对于凸多边形的某一条边的边方程值小于0并且这条边的法线的水平分量不大于0时,判定ρ (x,y)位于凸多边形的右边。具体地,该函数定义如下InRightPolygon(x, y) {
if ((e0 (x,y) <0 && ao <= 0) |丨(d (x,y) <0 && ai <= 0)丨| …|| (en (x,y) <0 && an <= 0))
return true; else
return false;
}3.计算下一个扫描行的起始扫描点。下一个扫描行的起始扫描点通过计算之前两行中第一个凸多边形内部点之间的距离来得到。如图6所出,当前扫描行的第一个凸多边形内部点的坐标为(xc,yc),之前扫描行的第一个凸多边形内部点的坐标为(xp,yp),下一个扫描行的起始扫描位置(xn,yn)计算方法如下delta_x = xc = = xp ? 0 :xc_xp_l ;delta_y = top_box == True ? —1:1;xn = xc+delta_x ;yn = yc+delta_y。其中,delta_x是xc和xp之间的距离。如果xc = xp,delta_x为0,否则delta_ χ等于xc-xp-1。delta_y取决于当前遍历的是上边界框还是下边界框,如果遍历的是上边界框,则delta_y为-1,否则为1。可以通过用在图形光栅扫描中的凸多边形遍历系统来实现上述方法。该凸多边形遍历系统包括边界框构造单元,用于根据凸η边形的η个顶点的坐标值,构造用在对凸η 边形进行光栅扫描的过程中的两个边界框,其中,η为大于2的整数;起始位置设置单元,用于为该两个边界框中的每一个设置遍历起始位置;以及图形遍历单元,用于从该两个边界框中的每一个的遍历起始位置开始,对位于该两个边界框中的每一个中的凸η边形部分进行遍历。其中,所述两个边界框包括上边界框和下边界框,上边界框的遍历起始位置为上边界框的左下角,下边界框的遍历起始位置为所述下边界框的左上角。其中,边界框构造单元包括最值获取模块,用于获取凸η边形的η个顶点的X轴坐标值中的最大值和最小值、以及Y轴坐标值中的最大值和最小值;框构造模块,用于根据凸η边形的η个顶点的X轴坐标值中的最大值和最小值、以及Y轴坐标值中的最大值和最小值,构造所述两个边界框。在凸η边形的最左边的顶点的Y轴坐标值是凸η边形的η个顶点的Y轴坐标值中的最小值或最大值的情况下,边界框构造单元将所述两个边界框中的其中一个边界框构造为空,并将所述两个边界框中的另一个边界框构造为该另一个边界框的左边两个顶点的 X轴坐标值为不小于凸η边形的η个顶点的X轴坐标值中的最小值的最小整数、右边两个顶点的X轴坐标值为不大于凸η边形的η个顶点的X轴坐标值中的最大值的最大整数、上边两个顶点的Y轴坐标值为不小于凸η边形的η个顶点的Y轴坐标值中的最小值的最小整数、并且下边两个顶点的Y轴坐标值为不大于凸η边形的η个顶点的Y轴坐标值中的最大值的最大整数。
在凸η边形的最左边的顶点的Y轴坐标值在凸η边形的η个顶点的Y轴坐标值中的最大值和最小值之间的情况下,边界框构造单元将凸η边形的上边界框构造为上边界框的左边两个顶点的X轴坐标值为不小于凸η边形的X轴坐标值中的最小值的最小整数, 右边两个顶点的X轴坐标值为不大于凸η边形的X轴坐标值中的最大值的最大整数,上边两个顶点的Y轴坐标值为不小于凸η边形的Y轴坐标值中的最小值的最小整数,下边两个顶点的Y轴坐标值为不大于凸η边形的最左边的顶点的Y轴坐标值的最大整数,并将凸η 边形的下边界框构造为下边界框的左边两个顶点的X轴坐标值为不小于凸η边形的X轴坐标值中的最小值的最小整数,右边两个顶点的X轴坐标值为不大于凸η边形的X轴坐标值中的最大值的最大整数,上边两个顶点的Y轴坐标值为不小于凸η边形的最左边的顶点的Y轴坐标值中的最小整数,下边两个顶点的Y轴坐标值为不大于凸η边形的Y轴坐标值中的最大值的最大整数。其中,在上边界框和/或下边界框的一个或多个顶点位于显示平面之外的情况下,边界框构造单元根据显示平面的显示范围对上边界框和/或下边界框进行裁剪。图形遍历单元通过自适应地调整各扫描行的起始扫描点来对位于所述两个边界框中的每一个中的凸η边形部分进行遍历,通过计算当前扫描行的前两个扫描行中的第一个处于凸η边形内部的点之间的距离来获取当前扫描行的起始扫描点。图7示出了根据本发明实施例的用在图2所示模块中的凸多边形插值方法的流程图。如图7所示,该凸多边形插值方法包括以下三个步骤S702,将凸多边形从绝对坐标系转换到以凸多边形的任意一边为坐标轴的相对坐标系;S704,根据位于凸多边形内的待插值像素在该相对坐标系中的Y轴坐标值和凸多边形的每条边的顶点在该相对坐标系中的Y 轴坐标值,为待插值像素选择相交边;以及S706,利用该相交边的顶点的参数值,插值得到待插值像素的参数值。具体地,首先要将多边形从原来的绝对坐标系转换到相对的位于多边形上的坐标系。这样做是为了避免多边形在旋转过程中会造成插值的不一致。多边形上的坐标系以多边形的任意一条边(ViVw)作为X轴,以边(ViVw)的法线作为Y轴,以Vi作为原点。多边形上的坐标系中的Y坐标通过边(ViVw)的边方程计算得到,X坐标通过边(ViVw)的法线的边方程计算得到。其中,坐标变换过程如下边(ViVitl)的边方程定义为ei(x, y) = a^x+b^y+Ci ;边(ViVitl)的法线的边方程定义为Hi (x, y) = d^x+e^y+fi ;假设一个点在原先的坐标系中的坐标为P (x, y),经过坐标变换后的坐标为P (χ’, y'),其中,χ,= Iii (X,y) = di 氺 x+ei 氺 y+fi,y' = ei (χ, y) = ai 氺 x+bi 氺 y+ci。坐标变换完成后,将待插值像素的Y坐标与多边形每条边的两个顶点的Y坐标进行比较,以选择待插值像素的相交边。假设多边形的每条边的两个顶点为Va(xa,ya)和Yb ( ,yb)。如果该条边为相交边,则其顶点的Y坐标应该满足以下条件ya < = y < = yb I I yb < = y < = ya。在利用相交边进行插值运算的步骤中,通过相交边的两个顶点上的参数值插值得到相交点上的参数值,再利用两个相交点上的参数值插值得到待插值像素的参数值。图8示出了根据本发明实施例的相对坐标系以及该坐标系中的待插值像素点及其相交边和相交点的示意图。如图8所示,假设待插值像素的两条相交边为eab和e。d。eab 的两个顶点为va0ca,ya)和VbOcb,yb)。ecd的两个顶点为VcOcc, yc)和Vd(xd, yd)。待插值像素为V(x,y)。eab的相交点为Vab(xab,yab)。e。d的相交点为V。dU。d,ycd)。以上坐标均位于多边形上的坐标系中。Vab的坐标计算如下Xab = (xa* (yb-y) +Xb* (y-ya)) / (yb-ya);yab = y ;Vcd的坐标计算如下Xcd = (Xc* (yd-y) +xd* (y-yc)) / (yd-yc);ycd = y ;Va, Vb, Vc, Vd 的参数值为 Pa, Pb, Pc, PdoVab的参数值为Pab,计算如下Pab = (Pa* (Xb-Xab) +Pb* (Xab-Xa)) / (Xb-Xa);Vcd的参数值为P。d,计算如下Pcd = (Pc* (xd-xcd) +Pd* (xcd-xc)) / (xd-xc);待插值像素V (X,y)的参数值为P,计算如下P= (Pab* (Xcd-X) +Pcd* (X-Xab)) / (Xcd-Xab)。可以通过用在图形光栅扫描中的凸多边形插值系统来实现上述方法。该凸多边形插值系统包括坐标系转换单元,用于将凸多边形从绝对坐标系转换到以凸多边形的任意一边为坐标轴的相对坐标系;相交边选择单元,用于根据位于凸多边形内的待插值像素在所述相对坐标系中的Y轴坐标值和凸多边形的每条边的顶点在相对坐标系中的Y轴坐标值,为待插值像素选择相交边;以及参数值计算单元,用于利用相交边的顶点的参数值,插值得到待插值像素的参数值。其中,该相对坐标系是以凸多边形的任意一条边的一个顶点作为原点、以所述原点所在的边作为X轴、并以所述原点所在的边的法线作为Y轴的坐标系。待插值像素的Y轴坐标值和凸多边形的每条边的顶点的Y轴坐标值是通过该相对坐标系的X轴的边方程计算得到的。待插值像素的X坐标值和凸多边形的每条边的顶点的X轴坐标值是通过该相对坐标系的Y轴的边方程计算得到的。相交边选择单元通过比较待插值像素在所述相对坐标系中的Y轴坐标值和凸多边形的每条边的顶点在所述相对坐标系中的Y轴坐标值,为待插值像素选择相交边。参数值计算单元包括第一计算单元,用于利用相交边的顶点的参数值,插值得到待插值像素所在扫描行与相交边的相交点的参数值;第二计算单元,利用待插值像素所在扫描行与相交边的相交点的参数值,插值得到待插值像素的参数值。本领域技术人员将理解,还存在可用于实现本发明实施例的更多可选实施方式和改进方式,并且上述实施方式和示例仅是一个或多个实施例的说明。因此,本发明的范围仅由所附权利要求书限制。
权利要求
1.一种用在图形光栅扫描中的凸多边形插值方法,其特征在于,包括以下步骤S702,将凸多边形从绝对坐标系转换到以所述凸多边形的任意一边为坐标轴的相对坐标系;S704,根据位于所述凸多边形内的待插值像素在所述相对坐标系中的Y轴坐标值和所述凸多边形的每条边的顶点在所述相对坐标系中的Y轴坐标值,为所述待插值像素选择相交边;以及S706,利用所述相交边的顶点的参数值,插值得到所述待插值像素的参数值。
2.根据权利要求1所述的凸多边形插值方法,其特征在于,所述相对坐标系是以所述凸多边形的任意一条边的一个顶点作为原点、以所述原点所在的边作为X轴、并以所述原点所在的边的法线作为Y轴的坐标系。
3.根据权利要求2所述的凸多边形插值方法,其特征在于,所述待插值像素的Y轴坐标值和所述凸多边形的每条边的顶点的Y轴坐标值是通过所述相对坐标系的X轴的边方程计算得到的。
4.根据权利要求3所述的凸多边形插值方法,其特征在于,所述待插值像素的X坐标值和所述凸多边形的每条边的顶点的X轴坐标值是通过所述相对坐标系的Y轴的边方程计算得到的。
5.根据权利要求1所述的凸多边形插值方法,其特征在于,通过比较所述待插值像素在所述相对坐标系中的Y轴坐标值和所述凸多边形的每条边的顶点在所述相对坐标系中的Y轴坐标值,为所述待插值像素选择相交边。
6.根据权利要求1所述的凸多边形插值方法,其特征在于,所述步骤S706包括以下子步骤利用所述相交边的顶点的参数值,插值得到所述待插值像素所在扫描行与所述相交边的相交点的参数值;利用所述待插值像素所在扫描行与所述相交边的相交点的参数值,插值得到所述待插值像素的参数值。
7.—种用在图形光栅扫描中的凸多边形插值系统,其特征在于,包括坐标系转换单元,用于将凸多边形从绝对坐标系转换到以所述凸多边形的任意一边为坐标轴的相对坐标系;相交边选择单元,用于根据位于所述凸多边形内的待插值像素在所述相对坐标系中的 Y轴坐标值和所述凸多边形的每条边的顶点在所述相对坐标系中的Y轴坐标值,为所述待插值像素选择相交边;以及参数值计算单元,用于利用所述相交边的顶点的参数值,插值得到所述待插值像素的参数值。
8.根据权利要求7所述的凸多边形插值系统,其特征在于,所述相对坐标系是以所述凸多边形的任意一条边的一个顶点作为原点、以所述原点所在的边作为X轴、并以所述原点所在的边的法线作为Y轴的坐标系。
9.根据权利要求7所述的凸多边形插值系统,其特征在于,所述待插值像素的Y轴坐标值和所述凸多边形的每条边的顶点的Y轴坐标值是通过所述相对坐标系的X轴的边方程计算得到的。
10.根据权利要求9所述的凸多边形插值系统,其特征在于,所述待插值像素的X坐标值和所述凸多边形的每条边的顶点的X轴坐标值是通过所述相对坐标系的Y轴的边方程计算得到的。
11.根据权利要求7所述的凸多边形插值系统,其特征在于,所述相交边选择单元通过比较所述待插值像素在所述相对坐标系中的Y轴坐标值和所述凸多边形的每条边的顶点在所述相对坐标系中的Y轴坐标值,为所述待插值像素选择相交边。
12.根据权利要求7所述的凸多边形插值系统,其特征在于,所述参数值计算单元包括第一计算单元,用于利用所述相交边的顶点的参数值,插值得到所述待插值像素所在扫描行与所述相交边的相交点的参数值;第二计算单元,利用所述待插值像素所在扫描行与所述相交边的相交点的参数值,插值得到所述待插值像素的参数值。
全文摘要
本发明公开了一种用在图形光栅扫描中的凸多边形插值方法和系统。其中,该遍历方法包括以下步骤根据凸n边形的n个顶点的坐标值,构造用在对凸n边形进行光栅扫描的过程中的两个边界框,其中,n为大于2的整数;为该两个边界框中的每一个设置遍历起始位置;以及分别从该两个边界框中的每一个的遍历起始位置开始,对位于该两个边界框中的每一个中的凸n边形部分进行遍历。通过本发明,可以减少在对图形光栅扫描的过程中的计算量,从而可以增快图形光栅扫描设备的处理速度,节省处理时间。
文档编号G09G5/36GK102543040SQ20111027769
公开日2012年7月4日 申请日期2008年12月15日 优先权日2008年12月15日
发明者洲镰康, 白向晖, 谭志明 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1