专利名称:一种参量表面的三角形镶装方法
技术领域:
本发明是有关于一种参量表面的三角形镶装方法,且特别有关于一种可以应用画线方法来进行三角形划分的参量表面的三角形镶装方法。
然而,在镶装三角形的过程中存在有诸多限制。举例来说,在镶装一表面的每一边有不同区段的参量表面时,划分成的三角形必须要很平顺地由一边延伸至另一边。同时,在参量表面的范畴中,也必须尝试来减少歪斜(Skew)三角形的数目,以维持较平衡的镶装结果。
一般的对于参量表面的三角形镶装方法,并无一制式且有效的方法。
图1是一参量表面经过三角形镶装的例子。如图1所示,参量表面100的每一边要求分为不同数目的区段,上边分为9区段;左边分为1区段;下边分为1区段;右边分为5区段。在参量表面100的镶装结果中存在许多的歪斜三角形,以至于造成整体镶装结果不平衡的情况。当参量表面有不适当取样(Sampling)时,绘图时极容易遗漏一些重要的属性,使得绘图结果失真。
一种参量表面的三角形镶装方法,该参量表面的第一缘以第一数目个区段等份划分且第二缘以第二数目个区段等份划分,其包括下列步骤于该第一缘上依序选取复数个第一缘点,使得该第一缘以第一数目个区段等份划分;于该第二缘上依序选取复数个第二缘点,使得该第二缘以第二数目个区段等份划分;依据该第一数目与该第二数目,计算该第一缘对应于该第二缘的区段斜率;以及对于每一该等第二缘点,依据直线公式与该区段斜率,于该等第一缘点中选择欲连结的第一缘点,并将该第二缘点与选取的第一缘点连接。
所述的参量表面的三角形镶装方法,包括以下步骤对于每一该等第二缘点,判断该第二缘点的相邻第二缘点是否连结至该第二缘点所连结的第一缘点,或该第二缘点所连结的该第一缘点的相邻第一缘点是否连结至该第二缘点;以及若该相邻第二缘点并未连结至该第一缘点且该相邻第一缘点并未连结至该第二缘点,则将该相邻第二缘点连结至该第一缘点或将该相邻第一缘点连接至该第二缘点。
所述的参量表面的三角形镶装方法,其中该区段斜率是该第一数目除以该第二数目,且该第一数目小于该第二数目。
所述的参量表面的三角形镶装方法,其中该参量表面的第一缘以第一数目个区段等份划分,且第二缘以第二数目个区段等份划分,包括下列步骤于该第一缘上依序选取复数个第一缘点,使得该第一缘以第一数目个区段等份划分;于该第二缘上依序选取复数个第二缘点,使得该第二缘以第二数目个区段等份划分;依据该第一数目与该第二数目,计算该第一缘对应于该第二缘的区段斜率;对于每一该等第二缘点,依据布理绅汉画线演算法与该区段斜率于该等第一缘点中选择欲连结的第一缘点,并将该第二缘点与选取的第一缘点连结;对于每一该等第二缘点,判断该第二缘点的相邻第二缘点是否连结至该第二缘点所连结的第一缘点,或该第二缘点所连结的该第一缘点的相邻第一缘点是否连结至该第二缘点;以及若该相邻第二缘点并未连结至该第一缘点,且该相邻第一缘点并未连结至该第二缘点,则将该相邻第二缘点连结至该第一缘点,或将该相邻第一缘点连结至该第二缘点。
所述的参量表面的三角形镶装方法,其中该区段斜率是该第一数目除以该第二数目,且该第一数目小于该第二数目。
通过将三角形镶装方法对映至画直线的方法,使得三角形镶装方法有准贝依循,且使得整体镶装结果不平衡的情况得以改善。
100、300 参量表面301 中间部分302 上部分303 下部分304 左部分305 右部分S200、S202、...、S212操作步骤首先,于第一缘上依序选取复数个第一缘点,使得第一缘以第一数目个区段等份划分,且于第二缘上依序选取复数个第二缘点,使得第二缘以第二数目个区段等份划分。接着,依据第一数目与第二数目,计算第一缘对应于第二缘的区段斜率。最后,对应每一第二缘点,依据直线公式与区段斜率于第一缘点中选择欲连结的第一缘点,并将第二缘点与选取的第一缘点连结。
此外,更对于每一第二缘点,判断此第二缘点的相邻第二缘点是否连结至第二缘点所连结的第一缘点,或此第二缘点所连结的第一缘点的相邻第一缘点是否连结至此第二缘点。若相邻第二缘点并未连结至第一缘点且相邻第一缘点并未连结至第二缘点,则将相邻第二缘点连结至第一缘点,或将相邻第一缘点连结至第二缘点。
图2是依据本发明具体实施方式
的参量表面的三角形镶装方法的流程图。
依据本发明实施例,参量表面的三角形镶装方法,其中参量表面的第一缘(Edge)以第一数目个区段等份划分且第二缘以第二数目个区段等份划分。
首先,如步骤S200,于第一缘上依序选取复数个第一缘点,使得第一缘以第一数目个区段等份划分,且如步骤S202,于第二缘上依序选取复数个第二缘点,使得第一缘以第二数目个区段等份划分。接着,如步骤S204,依据第一数目与第二数目,计算第一缘对应于第二缘的段斜率。在一例子中,第一缘可以是整个表面的内侧边,第二缘可以是整个表面的外侧边,且第一数日小于第二数目。其中,区段斜率=第一数目/第二数目。应注意的是,在参量表面的第一缘与第二缘的指定是依据其数目多寡所决定,而不是因为其所在参量表面的内侧或外侧所决定。
之后,如步骤S206,对于每一第二缘点,依据直线公式与区段斜率于第一缘点中选择欲连结的第一缘点,并将第二缘点与选取的第一缘点连结。其中,依据直线公式与区段斜率选择欲速结的第一缘点的方法说明于下。
在本发明具体实施方式
中,可以应用画直线的方法来辅助进行三角形镶制。直线公式如下y=mx+b,其中m为斜率,b为Y轴的位移常数。
此时,由于b为常数,因此可以删去b,由公式y=mx依据斜率来判断不同的x所相应的y。需要注意的是,画直线时由于x、y皆为整数点,因此,对于相应x的y值而言,则取其最接近的整数点。举例来说,若y=0.3则y取0;若y=0.7则y取1。
另外,图6a为一X-主整数布里绅汉画线演算法例子。布理绅汉画线演算法(Bresenham’s Algorithm)是传统电脑画线方法中常采用的方法。在布理绅汉演算法中,使用整数数学来进行画线,不进行除法运算且不使用小数,因此,布理绅汉演算法具有良好的正确性与精确性,可以数学地画出完美的线。以像素P1(1,1)画至P2(10,3)的直线为例,通过布理绅汉画线演算法所逐次画出的像素点显示于第6b图中(在画线的过程中,需要10个画点操作)。因此,本发明具体实施方式
亦可依据布理绅汉画线演算法与区段斜率选择欲连结的第一缘点。其原理与上述直线公式类似,故省略说明。需要注意的是,依据本发明的参量表面的三角形镶装方法可以通用至任何画直线的方法,而并不仅限于布理绅汉画线演算法。
之后,如步骤S208,对于每一第二缘点,判断此第二缘点与其相邻第二缘点(前一个或下一个第二缘点)是否连结至相同的任一个第一缘点,此判断主要是用以检查是否有漏画的三角形。
换言之,若某相邻两个第二缘点并未连结至任一相同的第一缘点,则可知有漏画情形发生,则如步骤S210,将此第二缘点连结至与其相邻第二缘点所连结的第一缘点,或是将此相邻第二缘点连结至此第二缘点所连结的第一缘点。
之后,如步骤S212,判断是否所有的点都已经判断完毕,若是则结束操作;若非则回到步骤S208继续进行判断。而若相邻第二缘点连结至第一缘点或相邻第一缘点连结至第二缘点,即代表没有漏画发生,便直接如步骤S212,判断是否所有的点都已经判断完毕,若是则结束操作;若非则回到步骤S208继续进行判断。
需要注意的是,若进一步考虑整体平衡问题,可以轮流选择将相邻第二缘点连结至第一缘点或将相邻第一缘点连结至第二缘点,举例来说,第一次发生时将相邻第二缘点连结至第一缘点,而第二次发生时将相邻第一缘点连结至第二缘点,以此类推。
此外,一个参量表面中亦可以包含多个子参量表面,而当参量表面中的所有子参量表面完成三角形镶装后便完成所有的镶装操作。
举一实例进行说明。图3是是一参量表面300例子,其中,参量表面300包括中间部份301、上部分302、下部分303、左部分304、与右部分305,且上侧边分为3区段;左侧边分为2区段;下侧边分为5区段;右侧边分为4区段。系统可以针对每一部份分别进行三角形镶装处理。
接下来,分别用上部分302与下部分303来举例说明。图4a是图3中参量表面的上部分302的三角形镶装示意图。在上部分302中,内缘点包括In0、In1、与In2,外缘点包括Out0、Out1、Out2、与Out3。因此,第一数目为3、第二数目为4,且区段斜率=第一数目/第二数目=3/4。
图4b是对应第4a图的画线示意图,假设外缘点为X轴,内缘点为Y轴。表格1显示依据本发明具体实施方式
中上部分302的画点(连接内缘点与外缘点)顺序。
表格1
一开始x的初始值为0,其相应的y=mx值为0,y选择0,将Out0与In0连结。之後,x=1,y=mx值为3/4,y选择最接近的整数1,将Out1与In1连结。之后,x=2,y=mx值为6/4,y选择最接近的整数1,将Out2与In1连结。之后,x=3,y=mx值为9/4,y选择最接近的整数2,将Out3与In2连结。
接着,对于每一外缘点,判断此外缘点的相邻外缘点(前一个或下一个外缘点)是否连结至此外缘点所连结的内缘点,或此外缘点所连结的内缘点的相邻内缘点(前一个或下一个内缘点)是否连结至此外缘点,即检查是否有漏画。发现(Out0,In0)与(Out1,In1)之间有漏画,故将Out1与In0连结。之后,发现(Out2,In1)与(Out3,In2)之间有漏画,故将Out2与In2连结。因此,可以得到三角形Out0,In0,Out1、三角形Out1,In0,In1、三角形Out1,In1,Out2、三角形Out2,In1,In2、与三角形Out2,In2,Out3。
图5a是图3中参量表面的下部分303的三角形镶装示意图。在下部分303中,内缘点包括In0、In1、与In2,外缘点包括Out0、Out1、Out2、Out3、Out4、与Out5。因此,第一数目为3、第二数目为6,且区段斜率=第一数目/第二数目=1/2。
图5b是对应图5a的画线示意图,假设外缘点为X轴,内缘点为Y轴。表格2显示依据本发明具体实施方式
中下部分303的画点(连接内缘点与外缘点)顺序。
表格2
一开始x的初始值为0,其相应的y=mx值为0,y选择0,将Out0与In0连结。之后,x=1,y=mx值为1/2,y选择最接近的整数0,将Out1与In0连结。之后,x=2,y=mx值为1,y选择最接近的整数1,将Out2与In1连结。之后,x=3,y=mx值为3/2,y选择最接近的整数1,将Out3与In1连结。之后,x=4,,y=mx值为2,y选择最接近的整数2,将Out4与In2连结。之后,x=5,y=mx值为5/2,y选择最接近的整数2,将Out5与In2连结。
接着,对于每一外缘点,判断此外缘点的相邻外缘点是否连结至此外缘点所连结的内缘点,或此外缘点所连结的内缘点的相邻内缘点是否连结至此外缘点,即检查是否有漏画。发现(Out1,In0)与(Out2,In1)之间有漏画,故将Out2与In0连结。之后,发现(Out3,In1)与(Out4,In2)之间有漏画,故将Out3与In2连结。因此,可以得到三角形Out0,In0,Out1、三角形Out1,In0,Out2、三角形Out2,In0,In1、三角形Out2,In1,Out3、三角形Out3,In1,In2、三角形Out3,In2,Out4、与三角形Out4,In2,Out5。
值得注意的是,参量表面300的其他部分,如中间部份301、左部分304、与右部分305亦可套用本发明具体实施方式
的三角形镶装方法进行镶装。当参量表面300的中间部份301、上部分302、下部分303、左部分304、与右部分305完成三角形镶装之后,整个参量表面300便完成三角形镶装操作。
因此,由本发明所提供的参量表面的三角形镶装方法,可以通过将三角形镶装方法对映至画直线的方法,使得三角形镶装方法有准则依循且使得整体镶装结果不平衡的情况改善。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术的人运用本发明说明书及附图内容所作的简单修饰及等效结构变化,均应涵盖在本发明的保护范围内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
权利要求
1.一种参量表面的三角形镶装方法,该参量表面的第一缘以第一数目个区段等份划分且第二缘以第二数目个区段等份划分,其特征在于包括下列步骤于该第一缘上依序选取复数个第一缘点,使得该第一缘以第一数目个区段等份划分;于该第二缘上依序选取复数个第二缘点,使得该第二缘以第二数目个区段等份划分;依据该第一数目与该第二数目,计算该第一缘对应于该第二缘的区段斜率;以及对于每一该等第二缘点,依据直线公式与该区段斜率与该等第一缘点中选择欲连结的第一缘点,并将该第二缘点与选取的第一缘点连接。
2.如权利要求1所述的参量表面的三角形镶装方法,其特征在于包括以下步骤对于每一该等第二缘点,判断该第二缘点的相邻第二缘点是否连结至该第二缘点所连结的第一缘点,或该第二缘点所连结的该第一缘点的相邻第一缘点是否连结至该第二缘点;以及若该相邻第二缘点并未连结至该第一缘点且该相邻第一缘点并未连结至该第二缘点,则将该相邻第二缘点连结至该第一缘点或将该相邻第一缘点连接至该第二缘点。
3.如权利要求1所述的参量表面的三角形镶装方法,其特征在于该区段斜率是该第一数目除以该第二数目,且该第一数目小于该第二数目。
4.一种参量表面的三角形镶装方法,该参量表面的第一缘以第一数目个区段等份划分,且第二缘以第二数目个区段等份划分,其特征在于包括下列步骤于该第一缘上依序选取复数个第一缘点,使得该第一缘以第一数目个区段等份划分;于该第二缘上依序选取复数个第二缘点,使得该第二缘以第二数目个区段等份划分;依据该第一数目与该第二数目,计算该第一缘对应于该第二缘的区段斜率;对于每一该等第二缘点,依据布理绅汉画线演算法与该区段斜率,于该等第一缘点中选择欲连结的第一缘点,并将该第二缘点与选取的第一缘点连结;对于每一该等第二缘点,判断该第二缘点的相邻第二缘点是否连结至该第二缘点所连结的第一缘点,或该第二缘点所连结的该第一缘点的相邻第一缘点是否连结至该第二缘点;以及若该相邻第二缘点并未连结至该第一缘点,且该相邻第一缘点并未连结至该第二缘点,则将该相邻第二缘点连结至该第一缘点,或将该相邻第一缘点连结至该第二缘点。
5.如权利要求4所述的参量表面的三角形镶装方法,其特征在于该区段斜率是该第一数目除以该第二数目,且该第一数目小于该第二数目。
全文摘要
一种参量表面的三角形镶装方法,参量表面的第一缘以第一数目个区段等份划分且第二缘以第二数目个区段等份划分。首先,于第一缘上依序选取复数个第一缘点,使得第一缘以第一数目个区段等份划分,且于第二缘上依序选取复数个第二缘点,使得第二缘以第二数目个区段等份划分。接着,依据第一数目与第二数目,计算第一缘对应于第二缘的区段斜率。最后,对于每一第二缘点,依据直线公式与区段斜率于第一缘点中选择欲连结的第一缘点,并将第二缘点与选取的第一缘点连结。
文档编号G06T17/00GK1475972SQ0212983
公开日2004年2月18日 申请日期2002年8月15日 优先权日2002年8月15日
发明者李润容, 吕忠晏 申请人:矽统科技股份有限公司