用于对三角形进行栅格化的方法和系统技术方案

技术编号:4260620 阅读:456 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种用于对三角形进行栅格化的方法及系统。其中,该方法包括:确定需要进行栅格化的三角形的最长边,并构造该三角形的最长边的八方向链码;沿特定方向、以特定步长移动该三角形的最长边,确定该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的起始端点和终止端点,并利用起始端点和终止端点、以及该三角形的最长边的八方向链码获取该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码;以及根据该三角形的最长边的八方向链码、和该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码,描画该三角形的像素。通过本发明专利技术,可以提高对三角形进行栅格化的效率。

【技术实现步骤摘要】

本专利技术涉及图像图形处理领域,更具体地涉及一种用于对三角形进行栅格化的方法和系统
技术介绍
栅格化是计算机图形学中将图元扫描变换成显示像素的一种技术,是将矢量图形 格式表示的图像变换成栅格图像以用于显示器或打印机等的输出的过程。对图元进行栅格 化的过程主要包括两个步骤首先,确定显示平面上哪些像素是由图元覆盖的;其次,将图 元的属性(颜色、深度、以及纹理等)赋给每个像素。 三角形具有一些好的属性,比如凸性质、几何变换之后保持在同一个平面中、容 易裁剪、容易转换为二维图像等,所以是三维图形中的一种重要图元。三角形栅格化方法是 图元栅格化领域中比较重要的分支。传统的三角形栅格化方法常常需要将三角形分割成上 下两个部分,当碰到裁剪时还需要将三角形分割成若干个子三角形。这些条件使得传统的 栅格化架构变得非常复杂,增加了实现难度,浪费了软件及硬件资源。
技术实现思路
鉴于以上所述的问题,本专利技术提出了一种新颖的用于对三角形进行栅格化的方法 和系统,以通过简单的栅格化架构来实现图像的栅格化。 根据本专利技术实施的用于对三角形进行栅格化的方法,包括以下步骤确定需要进行栅格化的三角形的最长边,并构造该三角形的最长边的八方向链码;沿特定方向、以特定步长移动该三角形的最长边,确定移动后三角形的最长边与该三角形的另外两边的交点之间的线段的起始端点和终止端点,并利用起始端点和终止端点、以及该三角形的最长边的八方向链码获取该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码;以及根据该三角形的最长边的八方向链码、和该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码,描画该三角形的像素。 根据本专利技术实施例的用于对三角形进行栅格化的系统,包括链码构造单元,用于确定需要进行栅格化的三角形的最长边,并构造该三角形的最长边的八方向链码;链码获取单元,用于沿特定方向、以特定步长移动该三角形的最长边,确定移动后三角形的最长边与该三角形的另外两边的交点之间的线段的起始端点和终止端点,并利用起始端点和终止端点、以及该三角形的最长边的八方向链码获取该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码;以及像素描画单元,用于根据该三角形的最长边的八方向链码、和/或该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码,描画该三角形的相应像素。 在本专利技术中,扫描可以沿着三角形的最长边进行,并且不需要进行三角形分割,所 以对三角形进行格栅化的效率很高。附图说明 图1示出了八方向链码的概念示意图; 图2示出了从起始端点(0, 1)到终止端点(10, 7)的三角形一条边的链码; 图3示出了根据本专利技术实施例的主方向的概念示意图; 图4示出了根据本专利技术实施例的用于对三角形进行栅格化的方法的概括流程 图5示出了根据本专利技术实施例的用于对三角形进行栅格化的方法的详细流程 图6示出了根据本专利技术实施例的最长边在主方向的三角形的示例; 图7示出了根据本专利技术实施例的最长边不在主方向的三角形的示例; 图8示出了根据本专利技术实施例的在Y轴的负方向移动三角形的最长边的示例; 图9示出了根据本专利技术实施例的在X轴的负方向移动三角形的最长边的示例; 图10示出了根据本专利技术实施例的裁剪出了具有七个顶点的七边形的三角形的示例; 图ll示出了根据本专利技术实施例的裁剪三角形得出具有五个顶点的五边形的示例; 图12示出了根据本专利技术实施例的移动裁剪得出的五边形的最长边的示例; 图13示出了对从三角形裁剪得出的多边形进行栅格化的过程的详细流程图;以及 图14示出了根据本专利技术实施例的用于对三角形进行栅格化的系统的框图。具体实施例方式链码是描述物体边界的一个好工具。给定一个起始像素,链码可以逐步找到物体边界的下一个像素。八方向链码有八个可能的方向,但是每一步只存在一个方向。如果扫描能沿着三角形的最长边进行,并且不需要进行三角形分割,那么三角形的栅格化效率将会很高。在本专利技术的实施例中,使用如下的坐标系统原点在左下方,X轴向右,Y轴向上。图1示出了八方向链码的概念。如图1所示,从起始像素102开始,存在八个可能的方向来寻找物体边界的终止像素104。这八个方向按逆时针方向从0到7进行标记。然而,如果以从左往右或者从下往上的顺序寻找终止像素,则只有链码元素7、0、1、2和3需要用到。图2示出了从起始端点(O,l)到终止端点(10,7)的三角形一条边的链码。在本专利技术的实施例中,定义主方向为与X轴的交角的绝对值不大于45度的线所在的方向,如图3所示。 图4示出了根据本专利技术实施例的用于对三角形进行栅格化的方法的概括流程图。如图4所示,用于对三角形进行栅格化的方法大体包括以下步骤S402,确定需要进行栅格化的三角形的最长边,并构造该三角形的最长边的八方向链码;S404,沿特定方向、以特定步长移动该三角形的最长边,确定该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的起始端点和终止端点,并利用起始端点和终止端点、以及该三角形的最长边的八方向链码获取该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码;以及S406,根据该三角形的最长边的八方向链码、和该移动后三角形的最长边与该三角形的另外两边的交点之间的线段的八方向链码,描画该三角形的像素。 当然,在构造出三角形的最长边的八方向链码之后,也可以先根据三角形的最长CN 最长边与三角形的另外两边的交点 之间的线段的八方向链码并描画该线段,接着获取进一步移动后的线段的八方向链码并描 画相应线段,直到三角形的最长边移出该三角形为止。 图5示出了根据本专利技术实施例的用于对三角形进行栅格化的方法的详细流程图。 如图5所示,用于对三角形进行栅格化的方法具体包括以下步骤 S502,通过计算三角形的输入顶点(xO, y0) 、 (xl, yl)和(x2, y2)之间的伪欧氏距 离,寻找三角形的最长边E。该过程可以通过以下程序段实现 101 = (xl-x0)2+(yl-y0)2, 102 = (x2-x0)2+(y2-y0)2, 112 = (x2-xl)2+(y2-y1)2. lmax = 101 ; if (102 > lmax) lmax = 102 ; if (103 > lmax) lmax = 103 ; S504,构造三角形的最长边E(Vs, Ve)的链码。其中,Vs(xs, ys)是三角形的最长边的起始顶点,Ve(xe,ye)是三角形的最长边的终止顶点。在三角形的最长边在主方向内的 情况下(见图6中的602),设xe大于xs;在三角形的最长边不在主方向内的情况下,(见 图7中的702),设ye大于ys。 为了在移动三角形的最长边时,三角形的最长边能够覆盖三角形内所有的像素 (见图6中的608,图7中的708),需要对三角形的最长边的链码进行延长(见图6中的 604,图7中的704)。当三角形的最长边在主方向内时,其链码在xmin到xmax(见图6中的 606)之间构造,否则其链码在ymin到ymax(见图7中的706)之间构造。xmin、xmax、ymin 和ymax的值可以通过在(xO, y0) 、 (xl, yl)以及(x2, y2)中寻找本文档来自技高网...

【技术保护点】
一种用于对三角形进行栅格化的方法,其特征在于,包括以下步骤:确定需要进行栅格化的三角形的最长边,并构造所述三角形的最长边的八方向链码;沿特定方向、以特定步长移动所述三角形的最长边,确定移动后三角形的最长边与所述三角形的另外两边的交点之间的线段的起始端点和终止端点,并利用所述起始端点和所述终止端点、以及所述三角形的最长边的八方向链码获取所述移动后三角形的最长边与所述三角形的另外两边的交点之间的线段的八方向链码;以及根据所述三角形的最长边的八方向链码、和所述移动后三角形的最长边与所述三角形的另外两边的交点之间的线段的八方向链码,描画所述三角形的像素。

【技术特征摘要】
一种用于对三角形进行栅格化的方法,其特征在于,包括以下步骤确定需要进行栅格化的三角形的最长边,并构造所述三角形的最长边的八方向链码;沿特定方向、以特定步长移动所述三角形的最长边,确定移动后三角形的最长边与所述三角形的另外两边的交点之间的线段的起始端点和终止端点,并利用所述起始端点和所述终止端点、以及所述三角形的最长边的八方向链码获取所述移动后三角形的最长边与所述三角形的另外两边的交点之间的线段的八方向链码;以及根据所述三角形的最长边的八方向链码、和所述移动后三角形的最长边与所述三角形的另外两边的交点之间的线段的八方向链码,描画所述三角形的像素。2. 根据权利要求l的用于对三角形进行栅格化的方法,其特征在于,当所述三角形的 最长边与X轴之间的夹角的绝对值不大于45。时,沿Y轴移动所述三角形的最长边。3. 根据权利要求l的用于对三角形进行栅格化的方法,其特征在于,当所述三角形的 最长边与X轴之间的夹角的绝对值大于45°时,沿X轴移动所述三角形的最长边。4. 根据权利要求2或3的用于对三角形进行栅格化的方法,其特征在于,利用所述三 角形的最长边的边方程e(x, y) = (ys-ye)*x+(xe-xs)*y+(xs*ye-xe*ys)来确定沿Y轴或 X轴移动所述三角形的最长边的方向,其中,xs和ys是所述三角形的最长边的起始顶点的 X轴和Y轴坐标值,xe和ye是所述三角形的最长边的终止顶点的X轴和Y轴坐标值。5. 根据权利要求4的用于对三角形进行栅格化的方法,其特征在于,当所述三角形的 最长边与X轴之间的夹角的绝对值不大于45°时,确定沿Y轴移动所述三角形的最长边的 方向的过程包括分别将由所述三角形的最长边的起始顶点的X轴和Y轴坐标值得出的X轴和Y轴坐标 值(xs, ys+l)、以及所述三角形的另外两边的交点所在顶点的X轴和Y轴坐标值(x2, y2) 代入所述三角形的最长边的边方程,得出第一代入结果和第二代入结果;将所述第一代入结果和所述第二代入结果相乘得出第一相乘结果,并在所述第一相乘 结果大于0的情况下,沿Y轴的正方向移动所述三角形的最长边,在所述第一相乘结果不大 于O的情况下,沿Y轴的负方向移动所述三角形的最长边。6. 根据权利要求4的用于对三角形进行栅格化的方法,其特征在于,当所述三角形的 最长边与X轴之间的夹角的绝对值大于45。时,确定沿X轴移动所述三角形的最长边的方 向的过程包括分别将由所述三角形的最长边的起始顶点的X轴和Y轴坐标值得出的X轴和Y轴坐标 值(xs+l, ys)、以及所述三角形的另外两边的交点所在顶点的X轴和Y轴坐标值(x2, y2) 代入所述三角形的最长边的边方程,得出第三代入结果和第四代入结果;将所述第三代入结果和所述第四代入结果相乘得出第二相乘结果,并在所述第二相乘 结果大于0的情况下,沿X轴的正方向移动所述三角形的最长边,在所述第二相乘结果不大 于0的情况下,沿X轴的负方向移动所述三角形的最长边。7. 根据权利要求5的用于对三角形进行栅格化的方法,其特征在于,在所述三角形的 三个顶点的三个X轴坐标值中的最大值和最小值之间构造所述三角形的最长边的八方向 链码。8. 根据权利要求6的用于对三角形进行栅格化的方法,其特征在于,在所述三角形的 三个顶点的三个Y轴坐标值中的最大值和最小值之间构造所述三角形的最长边的八方向链码。9. 根据权利要求7的用于对三角形进行栅格化的方法,其特征在于,在沿Y轴的正方向移动所述三角形的最长边的情况下,通过将所述移动后三角形的最 长边与所述三角形的最长边的起始顶点和所述三角形的另外两边的交点所在顶点之间的 一边的交点的Y轴坐标值与所述三角形的另外两边的交点所在顶点的Y轴坐标值进行比较 来判断所述三角形的最长边是否移出了所述三角形,在沿Y轴的负方向移动所述三角形的最长边的情况下,通过将所述移动后三角形的最 长边与所述三角形的最长边的终止顶点和所述三角形的另外两边的交点所在顶点之间的 一边的交点的Y轴坐标值与所述三角形的另外两边的交点所在顶点的Y轴坐标值进行比较 来判断所述三角形的最长边是否移出了所述三角形。10. 根据权利要求8的用于对三角形进行栅格化的方法,其特征在于,在沿X轴的正方向移动所述三角形的最长边的情况下,通过将所述移动后三角形的最 长边与所述三角形的最长边的起始顶点和所述三角形的另外两边的交点所在顶点之间的 一边的交点的X轴坐标值与所述三角形的另外两边的交点所在顶点的X轴坐标值进行比较 来判断所述三角形的最长边是否移出了所述三角形,在沿X轴的负方向移动所述三角形的最长边的情况下,通过将所述移动后三角形的最 长边与所述三角形的最长边的终止顶点和所述三角形的另外两边的交点所在顶点之间的 一边的交点的X轴坐标值与所述三角形的另外两边的交点所在顶点的X轴坐标值进行比较 来判断所述三角形的最长边是否移出了所述三角形。11. 根据权利要求9的用于对三角形进行栅格化的方法,其特征在于,通过计算所述三 角形的三个顶点之间的伪欧氏距离来确定所述三角形的最长边。12. 根据权利要求10的用于对三角形进行栅格化的方法,其特征在于,通过计算所述 三角形的三个顶点之间的伪欧氏距离来确定所述三角形的最长边。13. 根据权利要求ll的用于对三角形进行栅格化的方法,其特征在于,在所述三角形 需要裁剪的情况下,使用用于对所述三角形进行裁剪的边界框来对裁剪得到的多边形的多个顶点按照顺 时针或逆时针的顺序进行排序和编号,并且利用所述多边形的上顶点和下顶点来判断所述多边形的最长边是否移出了当前的相 交边。14. 根据权利要求12的用于对三角形进行栅格化的方法,其特征在于,在所述三角形 需要裁剪的情况下,使用用于对所述三角形进行裁剪的边界框来对裁剪得到的多边形的多个顶点按照顺 时针或逆时针的顺序进行排序和编号,并且利用所述多边形的上顶点和下顶点来判断所述 多边形的最长边是否移出了当前的相交边。15. —种用于对三角形进行栅格化的系统,其特征在于,包括链码构造单元,用于确定需要...

【专利技术属性】
技术研发人员:谭志明洲镰康白向晖
申请(专利权)人:富士通株式会社
类型:发明
国别省市:JP[日本]

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

1