CN102929621A - 重迭物件的绘制方法及装置 - Google Patents

重迭物件的绘制方法及装置 Download PDF

Info

Publication number
CN102929621A
CN102929621A CN2012104056628A CN201210405662A CN102929621A CN 102929621 A CN102929621 A CN 102929621A CN 2012104056628 A CN2012104056628 A CN 2012104056628A CN 201210405662 A CN201210405662 A CN 201210405662A CN 102929621 A CN102929621 A CN 102929621A
Authority
CN
China
Prior art keywords
overlapping
target
tandem
objects
source
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.)
Granted
Application number
CN2012104056628A
Other languages
English (en)
Other versions
CN102929621B (zh
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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Priority to CN201210405662.8A priority Critical patent/CN102929621B/zh
Priority to US13/666,970 priority patent/US8726185B1/en
Publication of CN102929621A publication Critical patent/CN102929621A/zh
Application granted granted Critical
Publication of CN102929621B publication Critical patent/CN102929621B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/503Blending, e.g. for anti-aliasing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

一种重迭物件的绘制方法及装置。该方法依据物件的绘制属性将物件排序后放置于来源串列,而针对来源串列中的目标物件,依序找寻来源串列中第一个位置与此目标物件重迭的重迭物件。若没有找到重迭物件,将此目标物件搬移至目标串列;若有找到重迭物件,依照目标物件及重迭物件的透明度属性,将目标物件及重迭物件中的重迭区域融合,并将此融合物件以及目标物件与重迭物件中的所有非重迭区域分别做为新物件依序插回目标串列。最后,重复上述步骤,直到来源串列中的所有物件均搬到目标串列时,将目标串列中的物件绘制于电子装置。

Description

重迭物件的绘制方法及装置
技术领域
本发明涉及一种绘图方法及装置,且特别是涉及一种重迭物件的绘制方法及装置。
背景技术
随着计算机技术的日新月异,计算机已成为现代人日常生活中不可或缺的电子产品,而随着软件技术的不断创新,人们对于计算机的使用要求除了速度与功能外,也逐渐重视起画面的品质。而为了吸引使用者的目光,计算机软件的制造商除了致力开发更新颖的功能外,也制作出更精美的操作界面,藉以提供使用者一个赏心悦目的操作环境。
现有的计算机在开机进入操作系统之后,即会显示操作系统的操作界面。藉由此操作界面,使用者可自由设定桌面的样式,也可选择应用程序以执行所欲操作的功能。这些被开启的应用程序一般是以视窗的形式显示在桌面上,让使用者可藉由点选不同视窗而在应用程序之间切换。
由于计算机屏幕的显示空间有限,当使用者开启多个视窗之后,这些视窗势必得重迭显示,才能全部纳入屏幕的显示范围中。这些视窗会依照使用者开启或使用的顺序,以层层覆盖的方式显示在屏幕中,其中,最近使用的视窗会显示在其他视窗之上,并覆盖住其他视窗。此时,使用者将无法在桌面上看到被此视窗覆盖的其他视窗的内容。
对于上述重迭视窗的绘制,目前的绘图技术是将这些视窗以多个图层的方式进行管理,利用计算机绘图引擎中的多个管线(pipeline)分别绘制不同图层的物件,并对图层的重迭部分采用半透明(alpha-blending)的方式显示,让使用者在最上层的视窗内仍可看到其他视窗的部分内容,以便在不同视窗之间切换及操作。
为了呈现出上述的半透明效果,一般是由计算机先在屏幕上绘制背景,而在绘制第一视窗(最底层视窗)时,则是先读取背景数据,并根据背景及第一视窗的透明度参数执行半透明运算,然后将运算结果写入存储器,使得所绘制的第一视窗的半透明部分可看见部分的背景。同理,在绘制第二视窗时,计算机需从存储器重新读取背景及第一视窗的数据,并根据背景、第一视窗及第二视窗的透明度参数执行半透明运算,然后将运算结果写入存储器,使得所绘制的第二视窗的半透明部分可看见部分的背景及部分的第一视窗。然而,随着开启的视窗数目的增加,上述的半透明运算将会造成计算机不小的运算负担,而重复读写存储器的动作也会占用过多的存储器频宽,连带地也会影响计算机整体的执行效能。
发明内容
本发明提出一种重迭物件的绘制方法,包括下列步骤:首先依据各个物件的绘制属性将这些物件排序,并将排序后的物件放置于来源串列;针对此来源串列的物件中的一个目标物件,依序找寻来源串列中第一个位置与此目标物件重迭的重迭物件;若没有找到重迭物件,即将此目标物件搬移至目标串列,并将来源串列中的此目标物件移除;若有找到重迭物件,则依照目标物件及重迭物件的透明度属性,将目标物件及重迭物件中的重迭区域融合而生成一个融合物件,将此融合物件以及目标物件及重迭物件中的所有非重迭区域的影像做为新物件依序插回来源串列,并将来源串列中的此目标物件与重迭物件移除。最后,当来源串列中的所有物件均搬移到目标串列时,将目标串列中的物件绘制于电子装置。
本发明提出一种重迭物件的绘制装置,其包括排序模块、搜寻模块、融合模块及绘制模块。其中,排序模块是依据要在电子装置上绘制的多个物件中每一个物件的绘制属性将这些物件排序,并将排序后的物件放置于一个来源串列。搜寻模块连接排序模块,用以针对来源串列的一个目标物件,依序找寻来源串列中第一个位置与此目标物件重迭的重迭物件。融合模块连接搜寻模块,其中若搜寻模块没有找到重迭物件,将目标物件搬移至一个目标串列,并将来源串列中的目标物件移除;若搜寻模块有找到重迭物件,则依照目标物件及重迭物件的透明度属性,将目标物件及重迭物件中的重迭区融合成一个融合物件,然后将此融合物件以及目标物件与重迭物件中的所有非重迭区域的影像分别做为新物件依序插回目标串列,并将来源串列中的目标物件与重迭物件移除。绘制模块连接融合模块,用以在融合模块将来源串列中的所有物件均搬移到目标串列时,将目标串列中的物件绘制于电子装置。
本发明提出一种应用于计算机系统的重迭视窗绘制方法,包括下列步骤:依据要在计算机系统上绘制的多个视窗中每一个视窗的绘制属性将视窗排序,并将排序后的视窗放置于来源串列;针对来源串列中的一个目标视窗,依序找寻来源串列中第一个位置与此目标视窗重迭的重迭视窗;若没有找到重迭视窗,将此目标视窗搬移至目标串列,并将来源串列中的目标视窗移除;若有找到重迭视窗,依照目标视窗及重迭视窗的透明度属性,将目标视窗及重迭视窗中至少一个重迭区域融合而生成融合物件,将融合物件以及目标视窗与重迭视窗中至少一个非重迭区域的影像分别做为新视窗依序插回来源串列,并将来源串列中的目标视窗与重迭视窗移除;当来源串列中的所有视窗均搬移到目标串列时,将目标串列中的所有视窗绘制于计算机系统。
基于上述,本发明的重迭物件的绘制方法及装置是根据物件的绘制属性将所欲绘制的多个物件排序,并针对每个物件搜寻与其重迭的物件并进行重迭区域的融合及非重迭区域的合并后,放入目标串列中,藉此可在绘制目标串列时省去重复读写存储器的负担。
为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并结合附图详细说明如下。
附图简单说明
图1是依照本发明一实施例所绘示的重迭物件绘制装置的方块图。
图2是依照本发明一实施例所绘示的重迭物件绘制方法的流程图。
图3是依照本发明一实施例所绘示的物件排序方法的流程图。
图4是依照本发明一实施例所绘示的融合目标物件与重迭物件的范例。
图5A至图5G是依照本发明一实施例所绘制的重迭物件绘制方法的比较范例。
附图符号说明
10:绘制装置
11:排序模块
12:搜寻模块
13:融合模块
14:绘制模块
41:目标物件
42:重迭物件
43:重迭区域
52~92:物件
S202~S214:本发明一实施例的重迭物件绘制方法的步骤
S302~S306:本发明一实施例的物件排序方法的步骤
具体实施方式
为了减少图形处理器在绘制重迭物件时重复读写存储器所占用频宽,本发明尝试在将物件写入存储器前,先行根据物件的绘制属性将物件的重迭区域融合,使得之后图形处理器在绘制物件时可以不用再重复读写存储器以及执行半透明运算,藉此达到减少运算负担及所占用存储器频宽的功效。
图1是依照本发明一实施例所绘示的重迭物件绘制装置的方块图,图2是依照本发明一实施例所绘示的重迭物件绘制方法的流程图,图3是依照本发明一实施例图2的流程中,运用于步骤202的物件排序方法流程图。请先参照图1,本实施例的绘制装置10例如是一个配置在电子装置中的图形处理器(Graphic Processing Unit,GPU)或其他种类的处理器,其包括排序模块11、搜寻模块12、融合模块13及绘制模块14。以下即结合图1中绘制装置10的各项元件说明本实施例绘制方法的详细步骤。
当绘制装置10接收到多个物件及其绘制属性的输入时,即由排序模块11依据各个物件的绘制属性将这些物件排序,并将排序后的物件放置于来源串列(source chain)(步骤S202)。其中,所述的绘制属性包括物件在二维空间上的位置,以及物件的绘制顺序,排序模块11即分别依照这些绘制属性对所接收的物件进行排序。
详言之,图3是依照本发明一实施例所绘示的物件排序方法的流程图,其可运用于步骤202中。请参照图3,排序模块11例如会先依据各个物件在第一轴向(例如x轴)上的绘制位置将多个物件排序(步骤S302)。其中,排序模块11例如会找出每个物件的左边缘,并比较每个物件的左边缘在x轴上的位置,由左至右将这些物件排序。然后,排序模块11会再依据各个物件在第二轴向(例如y轴)上的绘制位置将这些物件排序(步骤S304)。其中,排序模块11例如会找出每个物件的上边缘,并比较每个物件的上边缘在y轴上的位置,由上至下将这些物件排序。最后,排序模块11将依据各个物件的绘制顺序将这些物件排序(步骤S306)。其中,排序模块11例如会比较每个物件的绘制顺序,由前至后将这件物件排序。藉由上述排序方法,绘制装置10可找出彼此位置及绘制顺序相近的物件并放置在一起,而有利于后续搜寻重迭区域的步骤。
接着,搜寻模块12即会针对来源串列的多个物件中的一个目标物件,依序找寻来源串列中第一个位置与此目标物件重迭的重迭物件(步骤S204),并判断是否找到重迭物件(步骤S206)。详言之,搜寻模块12例如是从来源串列中的第一个物件开始,将其设定为目标物件并搜寻重迭物件,而在搜寻的过程中,也是从来源串列中该目标物件之后的第一个物件开始,找寻位置与目标物件重迭的物件。若搜寻模块12在来源串列中没有找到与目标物件重迭的物件,则会由融合模块13直接将来源串列中的目标物件搬移至目标串列,并将来源串列中的目标物件移除(步骤S208)。
若搜寻模块12在来源串列中有找到与目标物件重迭的物件,则融合模块13即会依照目标物件及此重迭物件的透明度属性,将目标物件及重迭物件中的重迭区域融合而成一个融合物件,然后再将此融合物件连同目标物件与重迭物件中的所有非重迭区域做为新物件分别插回来源串列,随后将原本在来源串列中的目标物件与重迭物件移除(步骤S210)。
详言之,在一实施例中,融合模块13例如是依照目标物件及重迭物件的透明度属性的数值比例,对目标物件及重迭物件中重迭区域的影像进行半透明(alpha-blending)运算,而生成新物件并放置于目标序列。在另一实施例中,融合模块13可先检查目标物件或重迭物件的透明度属性是否为零(即为不透明)。其中,若目标物件或重迭物件的透明度属性为零,即代表在重迭区域中,此物件会覆盖住其后方物件。此时,融合模块13可跳过半透明运算的步骤,直接将透明度属性为零的目标物件或重迭物件中重迭区域的影像做为新物件,重新插回来源序列。
需说明的是,融合模块13在将目标物件及重迭物件融合以生成融合物件的同时,也会融合两者的绘制属性。意即,融合模块13会根据目标物件及重迭物件的绘制属性,给予此融合物件一个新的绘制位置、顺序及透明度参数,以便后续绘制模块14在绘制物件时做为参考。
举例来说,图4是依照本发明一实施例所绘示的融合目标物件与重迭物件的范例。请参照图4,目标物件41与重迭物件42之间具有重迭区域43(斜线区域),绘制装置在融合目标物件41与重迭物件42时,例如会先根据目标物件41与重迭物件42的透明度参数,针对重迭区域43内的目标物件41与重迭物件42进行半透明运算以获得融合物件,此融合物件将连同目标物件41与重迭物件42中的非重迭区域(即非斜线区域)像一起做为新物件分别插回来源序列中,以进行后续处理。
需说明的是,由于上述的目标物件及重迭物件在经过重迭区域的影像融合后,仍无法确定是否和来源串列中的其他物件重迭,因此需要再放回来源串列中重新判断。而在将融合物件及非重迭区域放回来源串列时,为了节省后续搜寻时间,亦可参照前述的排序模式,依据这些新物件的绘制属性将这些新物件插回来源串列中的适当位置。此外,上述实施例中的目标物件、重迭物件以及重迭区域均以是矩形为例做说明,然而在实际应用中,使用者也可以视实际需要,将目标物件及重迭物件切分为其他形状的区块以进行融合,而不限制于本实施例的实施方式。
每当融合模块13将目标物件搬移至目标串列,或是将新物件插回来源串列时,融合模块13会判断来源串列中是否还有其他物件未处理(步骤S212)。其中,若仍有物件未处理,则回到步骤S204,由搜寻模块12重新在来源串列中找寻下一个目标物件,并依序找寻来源串列中第一个位置与此目标物件重迭的重迭物件,以决定是否将此目标物件搬移至目标串列,或是将由此目标物件及重迭物件生成的新物件依序插回来源串列。直到融合模块13判断来源串列中的所有物件均已搬移到目标串列时,即会由绘制模块14将目标串列中的所有物件绘制于电子装置(步骤S214)。其中,绘制模块14在绘制物件时例如是根据每个物件的绘制属性,将目标串列中的物件区分为多个图层。其中,这些图层的绘制属性包括来源材质(texture)、来源材质座标及透明度。
根据上述图层的绘制属性,在一实施例中,绘制模块14可设定多个固定功能管线(Fixed Function Pipeline),以分别绘制这些图层中的物件。其中,每一个材质即对应一个图层。需说明的是,上述方法是最简易且快速的绘制方式,但受限于固定功能管线的数目,其所能处理的图层数目最多只到8层。在另一个实施例中,绘制模块14可产生一个像素着色器(Pixel Shader)或是片段着色器(Fragment Shader),以分别绘制上述图层中的物件。此种方式较佳但也较复杂,但其所能处理的图层数目的上限是由着色器的版本而定,目前一般的上限为128,因此可支持128个图层的绘制。
图5A至图5G是依照本发明一实施例所绘制的重迭物件绘制方法的比较范例。请先参照图5A,本实施例是在背景BK上绘制物件A、B、C,其中物件A位于背景BK之上,物件B位于物件A之上,物件C则位于物件B之上。背景BK的尺寸为1920*1080,而若以背景BK左上角的点为原点(0,0),则背景BK涵括的区域为点(0,0)与点(1920,1080)所形成的矩形区域;物件A为点(50,50)与点(1050,950)所形成的矩形区域;物件B为点(950,100)与点(1700,900)所形成的矩形区域;物件C为点(25,540)与点(1800,880)所形成的矩形区域。
针对上述的背景及物件,若采用传统的绘制方式,则需读写存储器的数据笔数如下:
1.绘制背景BK:写入1920*1080=207360;
2.绘制物件A:读取1000*900两次,以及写入1000*900一次,总共花费3*1000*900=2700000;
3.绘制物件B:读取750*800两次,以及写入750*800一次,总共花费3*750*800=1800000;
4.绘制物件C:读取1775*340两次,以及写入1775*340一次,总共花费3*1775*340=1810500。
以上,总共需读写存储器的数据笔数为8384100。
相对于传统绘制方式,若采用本发明由左至右、由上至下、由前至后的排序方式,将图5A中的物件排序并放置于来源序列,则可得到来源序列:BK、C、A、B。
下一步,请同时参照图5A及图5B,将来源序列中排序在先的背景BK做为目标物件,依序在来源序列中找寻第一个位置与背景BK重迭的重迭物件,则可得到物件C。而根据背景BK与物件C的位置可区分出重迭区域52及非重迭区域54、56、58、60。在将重迭区域52融合(即C+BK)后,即可将此重迭区域52(即融合物件)以及非重迭区域54、56、58、60做为新物件插回来源序列。此时,来源序列中的物件为:54、56、52、58、A、B、60。其中,上述的非重迭区域54、56、58、60是依照由左至右、由上至下的顺序分割,而将新物件插回来源序列的顺序也是依照由左至右、由上至下,然不限于此。本领域技术人员可视实际需要,依照由上至下、由左至右的顺序或其他顺序进行分割及插回。
下一步,将来源序列中排序在先的物件54做为目标物件,依序在来源序列中找寻重迭物件,但由于来源序列中没有其他物件与物件54重迭,因此可将物件54搬移至目标序列。此时,来源序列中的物件为:56、52、58、A、B、60;目标序列中的物件为:54。
下一步,请同时参照图5B及5C,将来源序列中排序在先的物件56做为目标物件,依序在来源序列中找寻重迭物件,可得到物件A。而根据物件56与物件A的位置可区分出重迭区域62及非重迭区域64、66、68、70。在将重迭区域62融合(即A+BK)后,即可将此重迭区域62以及非重迭区域64、66、68、70做为新物件插回来源序列。此时,来源序列中的物件为:64、52、58、66、62、70、B、68、60;目标序列中的物件为:54。
下一步,将来源序列中排序在先的物件64做为目标物件,依序在来源序列中找寻重迭物件,但由于来源序列中没有其他物件与物件64重迭,因此可将物件64搬移至目标序列。此时,来源序列中的物件为:52、58、66、62、70、B、68、60;目标序列中的物件为:54、64。
下一步,请同时参照图5C及5D,将来源序列中排序在先的物件52做为目标物件,依序在来源序列中找寻重迭物件,可得到物件70。而根据物件52与物件70的位置可区分出重迭区域72及非重迭区域74、76、78(依照由左至右、由上至下的顺序分割)。在将重迭区域72融合(即A+C+BK)后,即可将此重迭区域72(即融合物件)以及非重迭区域74、76、78做为新物件插回来源序列。此时,来源序列中的物件为:74、58、66、62、72、76、B、68、78、60;目标序列中的物件为:54、64。
下一步,将来源序列中排序在先的物件74做为目标物件,依序在来源序列中找寻重迭物件,但由于来源序列中没有其他物件与物件74重迭,因此可将物件74搬移至目标序列。此时,来源序列中的物件为:58、66、62、72、76、B、68、78、60;目标序列中的物件为:54、64、74。
下一步,请同时参照图5D及5E,将来源序列中排序在先的物件58做为目标物件,依序在来源序列中找寻重迭物件,可得到物件76。而根据物件58与物件76的位置可区分出重迭区域76及非重迭区域78、80、82。在将重迭区域76融合(即A+BK)后,即可将此重迭区域76以及非重迭区域78、80、82做为新物件插回来源序列。此时,来源序列中的物件为:78、66、62、72、76、80、B、68、78、82、60;目标序列中的物件为:54、64、74。
下一步,将来源序列中排序在先的物件78做为目标物件,依序在来源序列中找寻重迭物件,但由于来源序列中没有其他物件与物件78重迭,因此可将物件78搬移至目标序列。此时,来源序列中的物件为:66、62、72、76、80、B、68、78、82、60;目标序列中的物件为:54、64、74、78。
下一步,将来源序列中排序在先的物件66做为目标物件,依序在来源序列中找寻重迭物件,但由于来源序列中没有其他物件与物件66重迭,因此可将物件66搬移至目标序列。此时,来源序列中的物件为:62、72、76、80、B、68、78、82、60;目标序列中的物件为:54、64、74、78、66。
下一步,请同时参照图5E及5F,将来源序列中排序在先的物件62做为目标物件,依序在来源序列中找寻重迭物件,可得到物件B。而根据物件62与物件B的位置可区分出重迭区域84及非重迭区域86、88、90、92。在将重迭区域84融合(即A+B+BK)后,即可将此重迭区域84以及非重迭区域86、88、90、92做为新物件插回来源序列。此时,来源序列中的物件为:86、72、76、80、88、84、90、68、92、78、82、60;目标序列中的物件为:54、64、74、78、66。
下一步,将来源序列中排序在先的物件86做为目标物件,依序在来源序列中找寻重迭物件,但由于来源序列中没有其他物件与物件86重迭,因此可将物件86搬移至目标序列。此时,来源序列中的物件为:72、76、80、88、84、90、68、92、78、82、60;目标序列中的物件为:54、64、74、78、66、86。以此类推,直到来源序列中的所有物件均搬移至目标序列后,即可到如图5G所绘示的分割结果。
由于目标序列的物件是经过上述本发明的绘制方式进行排序、分割及融合后,再放入存储器中。因此,电子装置在绘制整张影像时,无需再重复读写重迭区域的影像,而需读写存储器的数据笔数可缩减如下:
1.绘制背景BK:写入1920*1080=207360;
2.绘制物件A:读取1000*900一次,总共花费1000*900=900000;
3.绘制物件B:读取750*800一次,总共花费750*800=600000;
4.绘制物件C:读取1775*340一次,总共花费1775*340=603500;
以上,总共需读写存储器的数据笔数为4177100,约为传统绘制方式的一半。
应注意的是,图1所述的排序模块11、搜寻模块12、融合模块13、以及绘制模块14等,皆可将相关功能通过一般程序语言(例如C或C++)、硬件描述语言(Hardware Description Languages,HDL)(包括Verilog HDL、VHDL等等)、或其他可利用的程序语言来完成。所完成的软件可配置在任何已知的计算机可使用媒介,例如磁带、半导体、磁盘,或是光盘(例如CD-ROM、DVD-ROM等等)、因特网、有线、无线、或其他通讯媒介的传输方式之中,用以供计算机系统读取程序码之用。此外,本发明所述的装置与方法亦可通过硬件与软件的结合来实现。因此,本发明不应局限于所揭露的实施例,而是依本发明的权利要求与等效实施所界定。
综上所述,本发明的重迭物件的绘制方法及装置依据物件的绘制属性将多个物件排序以便搜寻重迭物件,且针对搜寻到的物件先进行融合后再置入播放序列中。因此,在最后绘制播放序列中的物件时,无需再重复读写重迭区域的影像,也无需再进行半透明运算,而可节省所使用的运算资源及所占用的存储器频宽。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,本领域技术人员在不脱离本发明的精神和范围的前提下,可作若干的更动与润饰,故本发明的保护范围是以本发明的权利要求为准。

Claims (19)

1.一种重迭物件的绘制方法,适于绘制多个物件于一电子装置,该方法包括下列步骤:
依据各这些物件的一绘制属性排序这些物件,并放置排序后的这些物件于一来源串列;
针对该来源串列的这些物件中的一目标物件,依序找寻该来源串列中第一个位置与该目标物件重迭的一重迭物件;
若没有找到该重迭物件,搬移该目标物件至一目标串列,并移除该来源串列中的该目标物件;
若有找到该重迭物件,依照该目标物件及该重迭物件的一透明度属性,融合该目标物件及该重迭物件中的一重迭区域而生成一融合物件,将该融合物件以及该目标物件与该重迭物件中的所有非重迭区域分别做为一新物件插回该来源串列,并移除该来源串列中的该目标物件与该重迭物件;以及
当该来源串列中的所有物件均搬移到该目标串列时,绘制该目标串列中的这些物件于该电子装置。
2.如权利要求1所述的重迭物件的绘制方法,其中依据各这些物件的该绘制属性排序这些物件的步骤包括:
依据各这些物件在一第一轴向上的一绘制位置排序这些物件;
依据各这些物件在一第二轴向上的该绘制位置排序这些物件;以及
依据各这些物件的一绘制顺序排序这些物件。
3.如权利要求1所述的重迭物件的绘制方法,其中依照该目标物件及该重迭物件的该透明度属性,融合该目标物件及该重迭物件中的该重迭区域而生成该融合物件的步骤包括:
若该目标物件或该重迭物件的该透明度属性为零,直接将该透明度属性为零的该目标物件或该重迭物件中的该至少一重迭区域做为该融合物件。
4.如权利要求1所述的重迭物件的绘制方法,其中当该来源串列中的所有物件均搬移到该目标串列时,绘制该目标串列中的这些物件于该电子装置的步骤包括:
若该来源串列中仍有物件未处理,重新在该来源串列中找寻下一目标物件,并依序找寻该来源串列中第一个位置与该下一目标物件重迭的重迭物件,以将该下一目标物件搬移至该目标串列,或是将由该下一目标物件及该重迭物件生成的这些新物件依序插回该来源串列,直到该来源串列中的所有物件均搬移到该目标串列为止。
5.如权利要求1所述的重迭物件的绘制方法,其中依照该目标物件及该重迭物件的该透明度属性,融合该目标物件及该重迭物件中的该重迭区域的步骤更包括:
融合该目标物件及该重迭物件的绘制属性,以作为对应的该新物件的绘制属性。
6.如权利要求1所述的重迭物件的绘制方法,其中绘制该目标串列中的这些物件于该电子装置的步骤包括:
根据目标串列中各这些物件的该绘制属性,区分这些物件为多个图层;以及
设定该电子装置的一绘图引擎的多个固定功能管线,以分别绘制这些图层中的这些物件。
7.如权利要求1所述的重迭物件的绘制方法,其中绘制该目标串列中的这些物件于该电子装置的步骤包括:
根据目标串列中各这些物件的该绘制属性,区分这些物件为多个图层;以及
产生一像素着色器或一片段着色器,以分别绘制这些图层中的这些物件。
8.如权利要求1所述的重迭物件的绘制方法,其中该绘制属性包括一来源材质、一来源材质座标及一透明度。
9.如权利要求1所述的重迭物件的绘制方法,其中这些物件为显示于该电子装置的一屏幕上的多个视窗。
10.一种重迭物件的绘制装置,包括:
一排序模块,依据要在一电子装置上绘制的多个物件中每一个物件的一绘制属性排序这些物件,并将排序后的这些物件放置于一来源串列;
一搜寻模块,连接该排序模块,针对该来源串列的这些物件中的一目标物件,依序找寻该来源串列中第一个位置与该目标物件重迭的一重迭物件;
一融合模块,连接该搜寻模块,其中
若该搜寻模块没有找到该重迭物件,搬移该目标物件至一目标串列,并移除该来源串列中的该目标物件;以及
若该搜寻模块有找到该重迭物件,依照该目标物件及该重迭物件的一透明度属性,融合该目标物件及该重迭物件中的一重迭区域而生成一融合物件,将该融合物件以及该目标物件与该重迭物件中的所有非重迭区域分别做为一新物件依序插回该来源串列,并移除该来源串列中的该目标物件与该重迭物件;以及
一绘制模块,连接该融合模块,当该融合模块将该来源串列中的所有物件均搬移到该目标串列时,绘制该目标串列中的这些物件于该电子装置。
11.如权利要求10所述的重迭物件的绘制装置,其中该排序模块包括:
依据各这些物件在一第一轴向上的一绘制位置排序这些物件;
依据各这些物件在一第二轴向上的该绘制位置排序这些物件;以及
依据各这些物件的一绘制顺序排序这些物件。
12.如权利要求10所述的重迭物件的绘制装置,其中该融合模块是在该目标物件或该重迭物件的该透明度属性为零,直接该透明度属性为零的将该目标物件或该重迭物件中的该重迭区域做为该融合物件。
13.如权利要求10所述的重迭物件的绘制装置,其中该融合模块包括在该来源串列中是否有物件未处理时,由该搜寻模块重新在该来源串列中找寻下一目标物件,并依序找寻该来源串列中第一个位置与该下一目标物件重迭的重迭物件,以将该下一目标物件搬移至该目标串列,或是将由该下一目标物件及该重迭物件生成的这些新物件依序插回该来源串列,直到该来源串列中的所有物件均搬移到该目标串列为止。
14.如权利要求10所述的重迭物件的绘制装置,其中该融合模块还包括融合该目标物件及该重迭物件的该绘制属性,以作为对应的该新物件的绘制属性。
15.如权利要求10所述的重迭物件的绘制装置,其中该绘制模块包括根据目标串列中各这些物件的该绘制属性,区分这些物件为多个图层,并设定该电子装置的一绘图引擎的多个固定功能管线,以分别绘制这些图层中的这些物件。
16.如权利要求10所述的重迭物件的绘制装置,其中该绘制模块包括根据目标串列中各这些物件的该绘制属性,区分这些物件为多个图层,并产生一像素着色器或一片段着色器,以分别绘制这些图层中的这些物件。
17.如权利要求10所述的重迭物件的绘制装置,其中该绘制属性包括一来源材质、一来源材质座标及一透明度。
18.如权利要求10所述的重迭物件的绘制装置,其中这些物件为显示于该电子装置的一屏幕上的多个视窗。
19.一种应用于计算机系统的重迭视窗绘制方法,包括下列步骤:
依据要在一计算机系统上绘制的多个视窗中每一个视窗的一绘制属性排序这些视窗,并放置排序后的这些视窗于一来源串列;
针对该来源串列的这些视窗中的一目标视窗,依序找寻该来源串列中第一个位置与该目标视窗重迭的一重迭视窗;
若没有找到该重迭视窗,搬移该目标视窗至一目标串列,并移除该来源串列中的该目标视窗;
若找到该重迭视窗,依照该目标视窗及该重迭视窗的一透明度属性,融合该目标视窗及该重迭视窗中的一重迭区域的影像而生成一融合影像,将该融合影像以及该目标视窗与该重迭视窗中的一非重迭区域的影像分别做为一新视窗依序插回该来源串列,并移除该来源串列中的该目标视窗与该重迭视窗;以及
当该来源串列中的所有视窗均搬移到该目标串列时,绘制该目标串列中的这些视窗于该计算机系统。
CN201210405662.8A 2011-11-30 2012-10-23 重迭物件的绘制方法及装置 Active CN102929621B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210405662.8A CN102929621B (zh) 2011-11-30 2012-10-23 重迭物件的绘制方法及装置
US13/666,970 US8726185B1 (en) 2011-11-30 2012-11-02 Method and apparatus for rendering overlapped objects

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201110391140.2 2011-11-30
CN2011103911402A CN102496169A (zh) 2011-11-30 2011-11-30 重迭对象的绘制方法及装置
CN201210405662.8A CN102929621B (zh) 2011-11-30 2012-10-23 重迭物件的绘制方法及装置

Publications (2)

Publication Number Publication Date
CN102929621A true CN102929621A (zh) 2013-02-13
CN102929621B CN102929621B (zh) 2015-11-18

Family

ID=46187991

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2011103911402A Pending CN102496169A (zh) 2011-11-30 2011-11-30 重迭对象的绘制方法及装置
CN201210405662.8A Active CN102929621B (zh) 2011-11-30 2012-10-23 重迭物件的绘制方法及装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2011103911402A Pending CN102496169A (zh) 2011-11-30 2011-11-30 重迭对象的绘制方法及装置

Country Status (3)

Country Link
US (1) US8726185B1 (zh)
CN (2) CN102496169A (zh)
TW (1) TWI470577B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014159299A1 (en) * 2013-03-14 2014-10-02 Microsoft Corporation Graphics processing using multiple primitives
CN108228964A (zh) * 2016-12-22 2018-06-29 和硕联合科技股份有限公司 电路绘制方法、系统及可执行电路绘制的电脑程序产品

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9870188B2 (en) * 2014-08-18 2018-01-16 Lenovo (Singapore) Pte. Ltd. Content visibility management
US10002404B2 (en) * 2015-04-15 2018-06-19 Mediatek Singapore Pte. Ltd. Optimizing shading process for mixed order-sensitive and order-insensitive shader operations
TWI581211B (zh) * 2016-11-18 2017-05-01 財團法人工業技術研究院 影像融合裝置及其方法
CN106971411A (zh) * 2017-03-13 2017-07-21 广东南方数码科技股份有限公司 一种绘制图像的方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1369863A (zh) * 2001-02-15 2002-09-18 矽统科技股份有限公司 通过预先排序以增进三维空间电脑绘图效果的方法
CN1498395A (zh) * 2002-02-07 2004-05-19 ���µ�����ҵ��ʽ���� 图像合成装置和图像合成方法
US20070101282A1 (en) * 1999-03-24 2007-05-03 Microsoft Corporation Method and Structure for Implementing Layered Object Windows
US20080001952A1 (en) * 2006-06-28 2008-01-03 Microsoft Corporation Fast reconfiguration of graphics pipeline state
US20080288860A1 (en) * 2007-05-14 2008-11-20 Business Objects, S.A. Apparatus and method for organizing visual objects

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5307086A (en) * 1991-10-08 1994-04-26 International Business Machines Corporation Method of implementing a preview window in an object oriented programming system
US7755629B2 (en) * 2004-06-30 2010-07-13 Canon Kabushiki Kaisha Method of rendering graphic objects
US7911481B1 (en) * 2006-12-14 2011-03-22 Disney Enterprises, Inc. Method and apparatus of graphical object selection
US20080284798A1 (en) 2007-05-07 2008-11-20 Qualcomm Incorporated Post-render graphics overlays
US7956869B1 (en) * 2007-07-13 2011-06-07 Adobe Systems Incorporated Proximity based transparency of windows aiding in obscured window selection
US8327277B2 (en) * 2008-01-14 2012-12-04 Microsoft Corporation Techniques to automatically manage overlapping objects
WO2011011024A1 (en) * 2009-07-23 2011-01-27 Hewlett-Packard Development Company, L.P. Display with an optical sensor
WO2011072497A1 (zh) * 2009-12-18 2011-06-23 联想(北京)有限公司 窗口管理方法、装置及计算设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070101282A1 (en) * 1999-03-24 2007-05-03 Microsoft Corporation Method and Structure for Implementing Layered Object Windows
CN1369863A (zh) * 2001-02-15 2002-09-18 矽统科技股份有限公司 通过预先排序以增进三维空间电脑绘图效果的方法
CN1498395A (zh) * 2002-02-07 2004-05-19 ���µ�����ҵ��ʽ���� 图像合成装置和图像合成方法
US20080001952A1 (en) * 2006-06-28 2008-01-03 Microsoft Corporation Fast reconfiguration of graphics pipeline state
US20080288860A1 (en) * 2007-05-14 2008-11-20 Business Objects, S.A. Apparatus and method for organizing visual objects

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014159299A1 (en) * 2013-03-14 2014-10-02 Microsoft Corporation Graphics processing using multiple primitives
CN105051788A (zh) * 2013-03-14 2015-11-11 微软技术许可有限责任公司 使用多个图元进行图形处理
CN105051788B (zh) * 2013-03-14 2018-03-30 微软技术许可有限责任公司 使用多个图元进行图形处理
US11069020B2 (en) 2013-03-14 2021-07-20 Microsoft Technology Licensing, Llc Graphics processing using multiple primitives
CN108228964A (zh) * 2016-12-22 2018-06-29 和硕联合科技股份有限公司 电路绘制方法、系统及可执行电路绘制的电脑程序产品
CN108228964B (zh) * 2016-12-22 2021-05-25 和硕联合科技股份有限公司 电路绘制方法及电路绘制系统

Also Published As

Publication number Publication date
TWI470577B (zh) 2015-01-21
US8726185B1 (en) 2014-05-13
US20140115531A1 (en) 2014-04-24
CN102496169A (zh) 2012-06-13
CN102929621B (zh) 2015-11-18
TW201322180A (zh) 2013-06-01

Similar Documents

Publication Publication Date Title
CN102929621B (zh) 重迭物件的绘制方法及装置
JP5320509B2 (ja) 視覚検索および三次元結果
CN1942896B (zh) 用图形处理单元处理图形操作的系统和方法
Heer et al. DOITrees revisited: scalable, space-constrained visualization of hierarchical data
CA3059915A1 (en) Maintaining page interaction functionality with overlay content
CN107729094A (zh) 一种用户界面渲染的方法及装置
JP5990180B2 (ja) 関連画像検索結果集合のブラウジング
CN104737208B (zh) 曲面细分单元中的顶点次序
CN103473338B (zh) 网页内容抽取方法和网页内容抽取系统
US10642908B2 (en) Internet of things search and discovery dynamic alteration of results
Pfoser et al. Querying the trajectories of on-line mobile objects
JP2004164596A (ja) 2分木を巡回する方法およびシステム
JP2002032750A (ja) 画像生成方法及び装置、最適化方法及び装置、プログラム、記憶媒体
CN108156510B (zh) 页面焦点处理的方法、装置及计算机可读存储介质
US10203847B1 (en) Determining collections of similar items
WO2016160861A1 (en) Quantified euler analysis
GB2578191A (en) Automatic and interactive animation driven by change-based heuristics
Jacob et al. Dynamic planar convex hull
Khanwalkar et al. Exploration of large image corpuses in virtual reality
CN102136039B (zh) 一种建立地图模型的方法和设备
US20110122125A1 (en) Method and apparatus for displaying and arranging data 3-dimensionally
CN109448080A (zh) 基于编程语言对骨骼动画进行碰撞检测的方法、电子设备
Munzner et al. Visual mining of power sets with large alphabets
EP3486800B1 (en) Internet of things search and discovery
CN103488743B (zh) 网页元素抽取方法和网页元素抽取系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant