CN102651076A - 绘图系统及其投影方法 - Google Patents
绘图系统及其投影方法 Download PDFInfo
- Publication number
- CN102651076A CN102651076A CN2011101228736A CN201110122873A CN102651076A CN 102651076 A CN102651076 A CN 102651076A CN 2011101228736 A CN2011101228736 A CN 2011101228736A CN 201110122873 A CN201110122873 A CN 201110122873A CN 102651076 A CN102651076 A CN 102651076A
- Authority
- CN
- China
- Prior art keywords
- end points
- projection
- processing unit
- edge function
- joining
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000006870 function Effects 0.000 abstract description 127
- 238000010586 diagram Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010425 computer drawing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/30—Clipping
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
本发明是一种绘图系统及其投影方法。该绘图系统包含一储存单元及一处理单元。该储存单元储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有三个端点。该处理单元计算该虚拟区域与该摄影机空间的一可视容积的一近裁切平面的二个相交点。该处理单元再将三个端点及二个相交点转换至一屏幕空间为三个投影端点及二个投影相交点,并决定一有效区域。处理单元再根据有效区域内的一测试端点,判断是否要调整三个投影端点所界定的三个投影边缘函数的正负号。最后处理单元再根据有效区域、调整后的投影边缘函数及一预设窗口裁切范围,决定需要绘示的像素。
Description
技术领域
本发明是关于一种绘图系统及其投影方法;更具体而言,本发明是关于一种处理摄影机空间(camera space)的近裁切平面(near clipping plane)的绘图系统及其投影方法。
背景技术
近年来,计算机绘图技术快速地发展,因而被广泛地应用至各种不同的领域,例如电影工业、电玩产业等等。在三维图学中,一对象是由多个基本多边形(primitives)所组成,绘图系统会将此对象由物空间(object space)依序转换至世界空间(world space)、摄影机空间(camera space)、再经过投影(Project)转换到屏幕空间(screen space)。
于摄影机空间中,绘图系统会定义一个可视容积(view volume)10,如图1A所示。由于在可视容积10外的对象将不会被绘制在屏幕空间上,因此一般的绘图系统须作基本多边形裁切(primitives clipping)。再者,为了避免对象太过接近摄影机或对象在摄影机后所导致的问题,绘图系统亦须对可视容积10的近裁切平面(nearclipping plane)10a进行裁切。具体而言,当对象太过接近摄影机时,可能会导致除以零的问题。另外,当对象位于摄影机后面时,会导致基本多边形有翻转(flip)的情况而绘制到错误的区域,如图1B所示。
为解决前述问题,现有的绘图系统会将组成对象的基本多边形对可视容积的六个面作裁切。具体说,当一个基本多边型为三角形,且将此三角形对可视容积的一平面作裁切后,会有以下四种情况:(a)整个三角形12在可视容积10外,因而被丢弃,如图1C所示、(b)整个三角形14在可视容积10内,因而被完全保留,如图1D所示、(c)三角形16的一个点在可视容积10内而另外二个点在可视容积10外,此三角形16会被裁切,但不会产生新三角形,如图1E所示及(d)三角形18的二个点在可视容积10内,而另一个点在可视容积10外,此三角形18会被裁切,且会产生新三角形18a、18b,如图1F所示。另外,若一个三角型横跨可视容积的多个平面时,则有可能产生多个三角形。
现有的绘图系统对对象裁切后所得的各个三角形会接着被转换至屏幕空间;具体而言,会将各个三角形转换为屏幕空间上的多个像素点。有二种技术手段可将各个三角形转换为屏幕空间上的多个像素点:以一行一行的方式扫描屏幕空间,或是采用边缘函数(edge function)来判断像素是否落于三角形内。然而,由于在前述裁切过程新增了许多三角形,使得绘图系统将三角形转换为屏幕空间上的多个像素点时,需要处理更多的三角形,因而提高计算复杂度,增加绘图系统的负担。
综上所述,本领域仍亟需一种能将摄影机空间内的对象投影至屏幕空间的技术,其能解决对象太过接近摄影机或对象在摄影机后所导致的问题、同时不需大量运算且不会增加绘图系统太多负担。
发明内容
本发明的目的是提供一种绘图系统及其投影方法,在将摄影机空间内的对象投影至屏幕空间时,能解决对象太过接近摄影机或对象在摄影机后所导致的问题、同时不需大量运算且不会增加绘图系统太多负担。
根据本发明一方面提供一种绘图系统。该绘图系统包含一储存单元及一处理单元。该储存单元储存一信息,该信息于一摄影机空间(camera space)界定一虚拟区域,该虚拟区域具有一第一端点(vertex)、一第二端点及一第三端点。该处理单元判断该第一端点及该第二端点位于该摄影机空间的一可视容积(view volume)内且该第三端点位于该可视容积外,该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面(near clipping plane)所形成的一第一相交点,该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点,该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间(screen space)为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,其中,该第一投影端点、该第二投影端点、该第一投影相交点及该第二投影相交点形成一有效区域。该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数。该处理单元自该有效区域选取一测试端点,以及该处理单元根据该测试端点,判断该第三投影边缘函数需乘上一负号。
根据本发明另一方面提供一种绘图系统。该绘图系统包含一储存单元及一处理单元。该储存单元储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有一第一端点、一第二端点及一第三端点。该处理单元判断该第一端点及该第二端点位于该摄影机空间的一可视容积外且该第三端点位于该可视容积内,该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面所形成的一第一相交点,该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点,该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,该第一投影相交点、该第二投影相交点及该第三投影端点形成一有效区域。该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数。该处理单元自该有效区域选取一测试端点,以及该处理单元根据该测试端点,判断该第一投影边缘函数及该第二投影边缘函数需乘上一负号。
根据本发明的又一方面提供一种适用于一绘图系统的投影方法。该绘图系统包含一处理单元及一储存单元,该储存单元储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有一第一端点、一第二端点及一第三端点。该投影方法包含下列步骤:(a)令该处理单元判断该第一端点及该第二端点位于该摄影机空间的一可视容积内,且该第三端点位于该可视容积外;(b)令该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面所形成的一第一相交点;(c)令该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点;(d)令该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,其中,该第一投影端点、该第二投影端点、该第一投影相交点及该第二投影相交点形成一有效区域,该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数;(e)令该处理单元自该有效区域选取一测试端点;以及(f)令该处理单元根据该测试端点,判断该第三投影边缘函数需乘上一负号。
根据本发明再一方面供一种适用于一绘图系统的投影方法。该绘图系统包含一处理单元及一储存单元。该储存单元储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有一第一端点、一第二端点及一第三端点。该投影方法包含下列步骤:(a)令该处理单元判断该第一端点及该第二端点位于该摄影机空间的一可视容积外,且该第三端点位于该可视容积内;(b)令该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面所形成的一第一相交点;(c)令该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点;(d)令该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,其中,该第一投影相交点、该第二投影相交点及该第三投影端点形成一有效区域,该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数;(e)令该处理单元自该有效区域选取一测试端点;以及(f)令该处理单元根据该测试端点,判断该第一投影边缘函数及该第二投影边缘函数需乘上一负号。
本发明相较于现有技术的有益效果是:本发明是对与可视容积的近裁切平面交会的虚拟区域进行处理,于屏幕空间中标示出有效区域,再根据有效区域内的测试端点,判断是否须调整各个投影边缘函数是正负号,最后再根据有效区域、投影边缘函数及预设窗口裁切范围来决定需要绘示的像素;如此即可快速地将摄影机空间内的对象投影至屏幕空间,并且解决对象太过接近摄影机或对象在摄影机后所导致的问题。
为让本发明的上述目的、技术特征和优点能更明显易懂,下文将以较佳实施例配合附图进行详细说明。
附图说明
图1A是描绘一摄影机空间的一个可视容积示意图;
图1B是描绘翻转情况的示意图;
图1C、图1D、图1E、图1F是分别描绘基本多边型与可视容积的平面的交会情形的示意图;
图2A是描绘第一实施例的绘图系统的内部元件示意图;
图2B是描绘第一实施例的一摄影机空间的示意图;
图2C是描绘第一实施例的一屏幕空间的示意图;
图2D是描绘摄影空间中的虚拟区域的示意图;
图2E是描绘摄影空间中的虚拟区域的另一示意图;
图2F是描绘第一实施例的另一摄影机空间的示意图;
图2G是描绘第一实施例的另一屏幕空间的示意图;以及
图3A、图3B、图3C是描绘第二实施例的流程图。
具体实施方式
以下将通过实施例来解释本发明的内容。然而,本发明的实施例并非用以限制本发明需在如实施例所述的任何环境、应用或方式方能实施。因此,关于实施例的说明仅为阐释本发明的目的,而非用以直接限制本发明。需说明的是,以下实施例及图标中,与本发明非直接相关的元件已省略而未绘示。
本发明的第一实施例为一绘图系统(graphic rendering system)2,其内部元件示意图如图2A所示。绘图系统2包含一处理单元21及一储存单元23。处理单元21可为本发明所属技术领域中具有通常知识者所熟知的各种处理器、中央处理装置(central processing unit)、微处理器或其它计算装置其中的任一种。储存单元23可为内存、软盘、硬盘、光盘、随身碟、磁带、可由网络存取的数据库或所属技术领域中具有通常知识者可轻易思及具有相同功能的储存媒体。
请参阅图2B,其描绘本实施例的一摄影机空间(camera space),此摄影机空间界定一可视容积20。本实施例的储存单元23储存一第一信息,此第一信息于一摄影机空间界定一虚拟区域22,此虚拟区域22可理解为一个三维对象上的一基本多边形(primitives)。此虚拟区域22具有一第一端点(vertex)22a、一第二端点22b及一第三端点22c。前述储存单元23所储存的第一信息可为虚拟区域22的三个端点,或是虚拟区域22的三个边缘函数等等。
处理单元21会针对虚拟区域与可视容积20的近裁切平面20a是否交会,采取不同的处理方式。具体而言,处理单元21是通过判断虚拟区域的第一端点、第二端点及第三端点与近裁切平面20a的相对位置关系,来确定虚拟区域与近裁切平面20a是否交会。虚拟区域与近裁切平面20a是否交会的情况有四种:(a)虚拟区域的二个端点位于可视容积内且一个端点位于可视容积外、(b)虚拟区域的一个端点位于可视容积内且二个端点位于可视容积外、(c)虚拟区域未与近裁切平面20a交会,且虚拟区域位于可视容积20的外侧及(d)虚拟区域未与近裁切平面20a交会,且虚拟区域位于可视容积20的内侧。
首先以图2B的虚拟区域22进一步说明虚拟区域的二个端点位于可视容积内且一个端点位于可视容积外的情形。处理单元21判断虚拟区域22的第一端点22a及第二端点22b位于摄影机空间的可视容积20内,且判断虚拟区域22的第三端点22c位于可视容积20外。处理单元21接着计算第一端点22a及第三端点22c所形成的一第一边缘函数与近裁切平面20a所形成的一第一相交点22d,并计算第二端点22b及第三端点22c所形成的一第二边缘函数与近裁切平面20a所形成的一第二相交点22e。
之后,处理单元21将第一端点22a、第二端点22b、第三端点22c、第一相交点22d及第二相交点22e转换至一屏幕空间(screen space)为一第一投影端点24a、一第二投影端点24b、一第三投影端点24c、一第一投影相交点24d及一第二投影相交点24e,如图2C所示。本发明所属技术领域中具有通常知识者应熟知如何将端点由摄影机空间转换至屏幕空间,因此在此不赘言。
于屏幕空间中,第一投影端点24a、第二投影端点24b、第一投影相交点24d及第二投影相交点24e形成一有效区域25。第一投影端点24a对面的边为第一投影边缘函数,换言之,第二投影端点24b及第三投影端点24c形成第一投影边缘函数。同理,第二投影端点24b对面的边为第二投影边缘函数,换言之,第一投影端点24a及第三投影端点24c形成第二投影边缘函数。另外,第三投影端点24c对面的边为第三投影边缘函数,换言之,第一投影端点24a及第二投影端点24b形成第三投影边缘函数。
接着,处理单元21自有效区域25选取一测试端点,再根据此测试端点,判断第一投影边缘函数、第二投影边缘函数及第三投影边缘函数是否需乘上一负号。详述如下。
请先参阅图2D,其描绘摄影空间中的虚拟区域22。如前所述,此虚拟区域22界定第一端点22a、第二端点22b、第三端点22c、第一边缘函数27a、第二边缘函数27b及第三边缘函数27c。假设虚拟区域22所界定的范围,相对于第一边缘函数27a、第二边缘函数27b及第三边缘函数27c属于负值的区域,亦即,将虚拟区域22内的任一点分别带入第一边缘函数27a、第二边缘函数27b及第三边缘函数27c皆会得到负值。因此,将虚拟区域22投影至屏幕空间后,理论上屏幕空间中对应至虚拟区域22的任一点带入第一投影边缘函数、第二投影边缘函数及第三投影边缘函数亦应皆得到负值。然而,如先前技术一节所提的各种问题,实际上会出现例外的情况。
在不考虑可视容积20的其它裁切平面的情况下,有效区域25为虚拟区域22投影至屏幕空间后应出现的区域,因此处理单元21便利用有效区域25来调整第一投影边缘函数、第二投影边缘函数及第三投影边缘函数。具体而言,处理单元21自有效区域25选取一测试端点,并将此测试端点带入第一投影边缘函数、第二投影边缘函数及第三投影边缘函数。假设将测试端点带入第一投影边缘函数后,得到一正值,处理单元21便将第一投影边缘函数乘上一负号,以改变其正负符号。同理,处理单元21亦对第二投影边缘函数及第三投影边缘函数进行同样的判断及处理。
请另参阅图2E,其描绘摄影空间中的虚拟区域22。假设虚拟区域22所界定的范围,相对于第一边缘函数27a、第二边缘函数27b及第三边缘函数27c属于正值的区域,亦即,将虚拟区域22内的任一点分别带入第一边缘函数27a、第二边缘函数27b及第三边缘函数27c皆会得到正值。于此种情况下,处理单元21同样地会自有效区域25选取一测试端点,并将此测试端点带入第一投影边缘函数、第二投影边缘函数及第三投影边缘函数。假设将测试端点带入第一投影边缘函数后,得到一负值,处理单元21便将第一投影边缘函数乘上一负号,藉此改变其正负符号。类似的,处理单元21亦对第二投影边缘函数及第三投影边缘函数进行同样的判断及处理。
由于第三端点22c位于可视容积外且第一端点22a和第二端点22b位于可视容积内,因此处理单元21判断第三投影边缘函数需乘上一负号。
调整后的第一投影边缘函数、第二投影边缘函数及第三投影边缘函数后界定一投影范围。投影范围及有效区域25各自对应至屏幕空间中的多个像素。处理单元21将有效区域25内的各像素与投影范围及一预设窗口裁切范围进行比较。此预设窗口裁切范围对应至摄影机空间中,与近裁切平面20a相邻的四个裁切平面。针对有效区域25内的各像素,若该像素落在投影范围及预设窗口裁切范围内,则处理单元21便将的标示为需绘示(render)的像素。
接着,以图2F的虚拟区域22进一步说明虚拟区域的二个端点位于可视容积内且一个端点位于可视容积外的情形。假设储存单元23储存一第二信息,此第二信息于摄影机空间界定一虚拟区域28,此虚拟区域28亦可理解为一个三维对象上的一基本多边形。此虚拟区域28具有一第一端点28a、一第二端点28b及一第三端点28c。
处理单元21判断第一端点28a及第二端点28b位于摄影机空间的可视容积20外且第三端点28c位于可视容积20内。处理单元21计算第一端点28a及第三端点28c所形成的一第一边缘函数与近裁切平面20a所形成的一第一相交点28d,且计算第二端点28b及第三端点28c所形成的一第二边缘函数与近裁切平面20a所形成的一第二相交点28e。
接着,处理单元21将第一端点28a、第二端点28b、第三端点28c、第一相交点28d及第二相交点28e转换至屏幕空间为一第一投影端点29a、一第二投影端点29b、一第三投影端点29c、一第一投影相交点29d及一第二投影相交点29e,如图2G所示。第一投影相交点29d、第二投影相交点29e及第三投影端点29c形成一有效区域26。第一投影端点29a对面的边为第一投影边缘函数,换言的,第二投影端点29b及第三投影端点29c形成第一投影边缘函数。同理,第二投影端点29b对面的边为第二投影边缘函数,换言之,第一投影端点29a及第三投影端点29c形成第二投影边缘函数。另外,第三投影端点29c对面的边为第三投影边缘函数,换言的,第一投影端点29a及第二投影端点29b形成第三投影边缘函数。
之后,处理单元21自有效区域26选取一测试端点,并根据此测试端点,以前述相同的技术手段,判断第一投影边缘函数、第二投影边缘函数及第三投影边缘函数是否需乘上一负号。具体而言,由于第一端点28a和第二端点28b位于可视容积外,且第三端点28c位于可视容积内,因此,处理单元21判断第一投影边缘函数和第二投影边缘函数需乘上一负号。
调整后的第一投影边缘函数、第二投影边缘函数及第三投影边缘函数后界定一投影范围。投影范围及有效区域26各自对应至屏幕空间中的多个像素。处理单元21将有效区域26内的各像素与投影范围及一预设窗口裁切范围进行比较。此预设窗口裁切范围对应至摄影机空间中,与近裁切平面20a相邻的四个裁切平面。针对有效区域26内的各像素,若该像素落在投影范围及预设窗口裁切范围内,则处理单元21便将的标示为需绘示的像素。
假设储存单元23储存一第三信息,此第三信息于摄影机空间界定另一虚拟区域,其系未与近裁切平面20a交会且位于可视容积20的外侧。针对此种情形,处理单元21忽略该虚拟区域。再假设存单元23储存一第四信息,此第四信息于摄影机空间界定又一虚拟区域,其系未与近裁切平面20a交会且完全位于可视容积20的内侧。针对此种情形,处理单元21会直接将该虚拟区域投影至屏幕空间,并将投影至屏幕空间后的全部区域标示为需绘示的区域。
本发明的第二实施例为一种适用于一绘图系统的投影方法,其流程图描绘于图3A、图3B及图3C。绘图系统可为第一实施例的绘图系统2。绘图系统包含一处理单元及一储存单元,其中储存单元储存一信息。
首先,执行步骤S301,令处理单元自储存单元读取一信息,此信息于一摄影机空间界定一虚拟区域。虚拟区域具有一第一端点、一第二端点及一第三端点。接着执行步骤S305,令处理单元判断虚拟区域是否与摄影机空间的一可视容积的近裁切平面交会。
若步骤S305的结果为是,接着执行步骤S307,令处理单元判断是否有二个端点位于可视容积内,而另一端点位于可视容积外。假设步骤S307的结果为是,且假设是第一端点及第二端点位于可视容积内,而第三端点位于可视容积外。接着执行步骤S309,令处理单元计算第一端点及第三端点所形成的一第一边缘函数与可视容积的一近裁切平面所形成的一第一相交点。之后执行步骤S311,令处理单元计算第二端点及第三端点所形成的一第二边缘函数与近裁切平面所形成的一第二相交点。
本实施例接着执行步骤S313,令处理单元将第一端点、第二端点、第三端点、第一相交点及第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,其中,第一投影端点、第二投影端点、第一投影相交点及第二投影相交点形成一有效区域。该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数。
之后执行步骤S315,令处理单元自有效区域选取一测试端点。于步骤S317,处理单元根据测试端点,判断第三投影边缘函数需乘上一负号。接着执行步骤S319,根据步骤S317的判断结果,令处理单元将第三投影边缘函数乘上一负号。
前述第一投影边缘函数、第二投影边缘函数及第三投影边缘函数界定一投影范围,且有效区域对应至屏幕空间的多个像素。本实施例接着执行步骤S321,令处理单元将有效区域内的各像素与投影范围及一预设窗口裁切范围进行比较。再执行步骤S323,令处理单元将位于投影范围及预设窗口裁切范围内的像素,标示为需绘示的像素。
若步骤S307的结果为否,表示有二个端点位于可视容积外,而另一端点位于可视容积内。假设系第一端点及第二端点位于摄影机空间的一可视容积外,而第三端点位于可视容积内。接着执行步骤S325及S327,以令处理单元分别计算第一端点及第三端点所形成的一第一边缘函数与可视容积的近裁切平面所形成的一第一相交点,以及计算第二端点及第三端点所形成的一第二边缘函数与近裁切平面所形成的一第二相交点。
之后执行步骤S329,令处理单元将第一端点、第二端点、第三端点、第一相交点及第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点。其中,第一投影相交点、第二投影相交点及第三投影端点形成一有效区域。该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数。
本实施例接着执行步骤S331,令处理单元自有效区域选取一测试端点。于步骤S333,令处理单元根据测试端点,判断第一投影边缘函数和第二投影边缘函数需乘上一负号。于步骤S335,令处理单元根据步骤S333的判断结果,将第一投影边缘函数和第二投影边缘函数乘上一负号。
前述第一投影边缘函数、第二投影边缘函数及第三投影边缘函数界定一投影范围。另外,有效区域对应至屏幕空间的多个像素。本实施例接着执行步骤S337,令处理单元将有效区域内的各像素与投影范围及一预设窗口裁切范围进行比较。之后执行步骤S339,令处理单元将位于投影范围及预设窗口裁切范围内的像素,标示为需绘示的像素。
若前述步骤S305的结果为否,本实施例接着执行步骤S341,令处理单元判断虚拟区域是否完全位于可视容积内。若步骤S341的结果为是,则处理单元执行步骤S343,将虚拟区域转换至屏幕空间,并标示转换至屏幕空间后的范围为需绘示的区域。若步骤S341的结果为否,表示虚拟区域完全位于可视容积外,则处理单元执行步骤S345以忽略该虚拟区域。
除了上述步骤,第二实施例亦能执行第一实施例所描述的所有操作及功能,所属技术领域具有通常知识者可直接了解第二实施例如何基于上述第一实施例以执行此等操作及功能,故不赘述。
另外,第二实施例所描述的投影方法可由一计算机程序产品执行,当绘图系统加载该计算机程序产品,并执行该计算机程序产品所包含的多个指令后,即可完成第二实施例所述的投影方法。前述的计算机程序产品可储存于计算机可读取记录媒体中,例如只读存储器(read only memory;ROM)、闪存、软盘、硬盘、光盘、随身碟、磁带、可由网络存取的数据库或本领域技术的技术人员所熟悉且具有相同功能的任何其它储存媒体中。
由上述可知,本发明是对与可视容积的近裁切平面交会的虚拟区域进行处理。本发明于屏幕空间中标示出有效区域,再根据有效区域内的测试端点,判断是否须调整各个投影边缘函数是正负号。最后再根据有效区域、投影边缘函数及预设窗口裁切范围来决定需要绘示的像素。如此即可快速地将摄影机空间内的对象投影至屏幕空间,并且解决对象太过接近摄影机或对象在摄影机后所导致的问题。
上述的实施例仅用来举例本发明的实施态样,以及阐述本发明的技术特征,并非用来限制本发明的保护范畴。任何熟悉此技术者可轻易完成的改变或均等性的安排均属于本发明所主张的范围,本发明的权利保护范围应以申请专利范围为准。
Claims (16)
1.一种绘图系统,其特征在于包含:
一储存单元,储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有一第一端点、一第二端点及一第三端点;以及
一处理单元,判断该第一端点及该第二端点位于该摄影机空间的一可视容积内且该第三端点位于该可视容积外,该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面所形成的一第一相交点,该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点,该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点;其中,该第一投影端点、该第二投影端点、该第一投影相交点及该第二投影相交点形成一有效区域,该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数,该处理单元自该有效区域选取一测试端点,以及该处理单元根据该测试端点,判断该第三投影边缘函数需乘上一负号。
2.根据权利要求1所述的绘图系统,其特征在于,该处理单元还将该第三投影边缘函数乘上一负号。
3.根据权利要求1所述的绘图系统,其特征在于,该第一投影边缘函数、该第二投影边缘函数及该第三投影边缘函数界定一投影范围,该有效区域对应至该屏幕空间的多个像素,该处理单元还将该有效区域内的各该像素与该投影范围及一预设窗口裁切范围进行比较。
4.根据权利要求3所述的绘图系统,其特征在于,该处理单元还将位于该投影范围及该预设窗口裁切范围内的像素,标示为需绘示的像素。
5.一种绘图系统,其特征在于包含:
一储存单元,储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有一第一端点、一第二端点及一第三端点;
一处理单元,判断该第一端点及该第二端点位于该摄影机空间的一可视容积外且该第三端点位于该可视容积内,该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面所形成的一第一相交点,该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点,该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,该第一投影相交点、该第二投影相交点及该第三投影端点形成一有效区域,该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数,该处理单元自该有效区域选取一测试端点,以及该处理单元根据该测试端点,判断该第一投影边缘函数及该第二投影边缘函数需乘上一负号。
6.根据权利要求5所述的绘图系统,其特征在于,该处理单元还将该第一投影边缘函数及该第二投影边缘函数乘上一负号。
7.根据权利要求5所述的绘图系统,其特征在于,该第一投影边缘函数、该第二投影边缘函数及该第三投影边缘函数界定一投影范围,该有效区域对应至该屏幕空间的多个像素,该处理单元还将该有效区域内的各该像素与该投影范围及一预设窗口裁切范围进行比较。
8.根据权利要求7所述的绘图系统,其特征在于,该处理单元还将位于该投影范围及该预设窗口裁切范围内的像素,标示为需绘示的像素。
9.一种适用于一绘图系统的投影方法,该绘图系统包含一处理单元及一储存单元,该储存单元储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有一第一端点、一第二端点及一第三端点,其特征在于该投影方法包含下列步骤:
(a)令该处理单元判断该第一端点及该第二端点位于该摄影机空间的一可视容积内,且该第三端点位于该可视容积外;
(b)令该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面所形成的一第一相交点;
(c)令该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点;
(d)令该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,其中,该第一投影端点、该第二投影端点、该第一投影相交点及该第二投影相交点形成一有效区域,该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数;
(e)令该处理单元自该有效区域选取一测试端点;以及
(f)令该处理单元根据该测试端点,判断该第三投影边缘函数需乘上一负号。
10.根据权利要求9所述的投影方法,其特征在于还包含下列步骤:
(g)令该处理单元将该第三投影边缘函数乘上一负号。
11.根据权利要求9所述的投影方法,其特征在于,该第一投影边缘函数、该第二投影边缘函数及该第三投影边缘函数界定一投影范围,该有效区域对应至该屏幕空间的多个像素,该投影方法还包含下列步骤:
(g)于步骤(f)后,令该处理单元将该有效区域内的各该像素与该投影范围及一预设窗口裁切范围进行比较。
12.根据权利要求11所述的投影方法,其特征在于,还包含下列步骤:
(h)于步骤(g)后,令该处理单元将位于该投影范围及该预设窗口裁切范围内的像素,标示为需绘示的像素。
13.一种适用于一绘图系统的投影方法,该绘图系统包含一处理单元及一储存单元,该储存单元储存一信息,该信息于一摄影机空间界定一虚拟区域,该虚拟区域具有一第一端点、一第二端点及一第三端点,其特征在于,该投影方法包含下列步骤:
(a)令该处理单元判断该第一端点及该第二端点位于该摄影机空间的一可视容积外,且该第三端点位于该可视容积内;
(b)令该处理单元计算该第一端点及该第三端点所形成的一第一边缘函数与该可视容积的一近裁切平面所形成的一第一相交点;
(c)令该处理单元计算该第二端点及该第三端点所形成的一第二边缘函数与该近裁切平面所形成的一第二相交点;
(d)令该处理单元将该第一端点、该第二端点、该第三端点、该第一相交点及该第二相交点转换至一屏幕空间为一第一投影端点、一第二投影端点、一第三投影端点、一第一投影相交点及一第二投影相交点,其中,该第一投影相交点、该第二投影相交点及该第三投影端点形成一有效区域,该第二投影端点与该第三投影端点于该屏幕空间界定一第一投影边缘函数,该第一投影端点与该第三投影端点于该屏幕空间界定一第二投影边缘函数,该第一投影端点与该第二投影端点于该屏幕空间界定一第三投影边缘函数;
(e)令该处理单元自该有效区域选取一测试端点;以及
(f)令该处理单元根据该测试端点,判断该第一投影边缘函数及该第二投影边缘函数需乘上一负号。
14.根据权利要求13所述的投影方法,其特征在于,还包含下列步骤:
(g)令该处理单元将该第一投影边缘函数及该第二投影边缘函数乘上一负号。
15.根据权利要求13所述的投影方法,其特征在于,该第一投影边缘函数、该第二投影边缘函数及该第三投影边缘函数界定一投影范围,该有效区域对应至该屏幕空间的多个像素,该投影方法还包含下列步骤:
(g)于步骤(f)后,令该处理单元将该有效区域内的各该像素与该投影范围及一预设窗口裁切范围进行比较。
16.根据权利要求15所述的投影方法,其特征在于,还包含下列步骤:
(h)于步骤(g)后,令该处理单元将位于该投影范围及该预设窗口裁切范围内的像素,标示为需绘示的像素。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100106380A TWI459322B (zh) | 2011-02-25 | 2011-02-25 | 繪圖系統及其投影方法 |
TW100106380 | 2011-02-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102651076A true CN102651076A (zh) | 2012-08-29 |
Family
ID=46693081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101228736A Pending CN102651076A (zh) | 2011-02-25 | 2011-05-04 | 绘图系统及其投影方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8817042B2 (zh) |
CN (1) | CN102651076A (zh) |
TW (1) | TWI459322B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104036539A (zh) * | 2014-06-17 | 2014-09-10 | 北京航空航天大学 | 一种应用在大规模地形渲染中的视锥体投影裁剪方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113350789B (zh) * | 2021-05-19 | 2024-04-09 | 广州三七极创网络科技有限公司 | 一种虚拟角色的边缘处理方法、装置、设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050059488A1 (en) * | 2003-09-15 | 2005-03-17 | Sony Computer Entertainment Inc. | Method and apparatus for adjusting a view of a scene being displayed according to tracked head motion |
US20090195555A1 (en) * | 2008-01-31 | 2009-08-06 | Arm Norway As | Methods of and apparatus for processing computer graphics |
CN101825431A (zh) * | 2009-03-05 | 2010-09-08 | 普莱姆森斯有限公司 | 用于三维传感的参考图像技术 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1345177B1 (en) * | 2002-03-11 | 2005-08-31 | STMicroelectronics Limited | Method and apparatus for evaluating whether a pixel point is inside a triangle |
TWI222606B (en) * | 2002-12-30 | 2004-10-21 | Inst Information Industry | Rapid image-display method and system for three-dimensional objects |
US7154499B2 (en) * | 2003-05-13 | 2006-12-26 | Via Technologies, Inc. | Two-level rejection in 3D graphics |
US20090046098A1 (en) * | 2007-08-14 | 2009-02-19 | Stmicroelectronics S.R.L. | Primitive binning method for tile-based rendering |
-
2011
- 2011-02-25 TW TW100106380A patent/TWI459322B/zh active
- 2011-05-04 CN CN2011101228736A patent/CN102651076A/zh active Pending
- 2011-06-06 US US13/154,388 patent/US8817042B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050059488A1 (en) * | 2003-09-15 | 2005-03-17 | Sony Computer Entertainment Inc. | Method and apparatus for adjusting a view of a scene being displayed according to tracked head motion |
US20090195555A1 (en) * | 2008-01-31 | 2009-08-06 | Arm Norway As | Methods of and apparatus for processing computer graphics |
CN101825431A (zh) * | 2009-03-05 | 2010-09-08 | 普莱姆森斯有限公司 | 用于三维传感的参考图像技术 |
Non-Patent Citations (1)
Title |
---|
胡国瓒 等: "《三维图形系统中的物体裁剪问题》", 《计算机工程与应用》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104036539A (zh) * | 2014-06-17 | 2014-09-10 | 北京航空航天大学 | 一种应用在大规模地形渲染中的视锥体投影裁剪方法 |
CN104036539B (zh) * | 2014-06-17 | 2017-01-18 | 北京航空航天大学 | 一种应用在大规模地形渲染中的视锥体投影裁剪方法 |
Also Published As
Publication number | Publication date |
---|---|
TWI459322B (zh) | 2014-11-01 |
US20120218291A1 (en) | 2012-08-30 |
US8817042B2 (en) | 2014-08-26 |
TW201235976A (en) | 2012-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108648269B (zh) | 三维建筑物模型的单体化方法和系统 | |
US11935288B2 (en) | Systems and methods for generating of 3D information on a user display from processing of sensor data for objects, components or features of interest in a scene and user navigation thereon | |
US10755112B2 (en) | Systems and methods for reducing data storage in machine learning | |
Ferreira et al. | Urbane: A 3D framework to support data driven decision making in urban development | |
Duchaineau et al. | ROAMing terrain: Real-time optimally adapting meshes | |
KR102555214B1 (ko) | 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법 | |
EP3951741B1 (en) | Method for acquiring traffic state, relevant apparatus, roadside device and cloud control platform | |
JP2007280354A (ja) | 三次元形状処理装置、三次元形状処理方法、三次元形状処理プログラム、記録媒体、パーツカタログ・システム、パーツカタログ作成方法、及びプログラム | |
CN116310143B (zh) | 一种三维模型构建方法、装置、设备和存储介质 | |
CN111744199A (zh) | 图像处理方法及装置、计算机可读存储介质、电子设备 | |
US20120287128A1 (en) | Electronic device and method for meshing curved surface | |
CN110428504B (zh) | 文本图像合成方法、装置、计算机设备和存储介质 | |
CN115797592A (zh) | 一种基于倾斜摄影三维模型自动生成建筑物体块的方法和装置 | |
CN102651076A (zh) | 绘图系统及其投影方法 | |
JP2023529790A (ja) | フロアプランを生成するための方法、装置およびプログラム | |
US11640485B1 (en) | Generating CAD models from topology optimization data | |
CN113538555B (zh) | 基于规则箱体的体积测量方法、系统、设备及存储介质 | |
CN117315372A (zh) | 一种基于特征增强的三维感知方法 | |
CN108734671B (zh) | 三维纹理修饰方法及其系统、自动贴图方法及其系统 | |
JP7258101B2 (ja) | 画像の手ぶれ補正方法、装置、電子機器、記憶媒体、コンピュータプログラム製品、路側機およびクラウド制御プラットフォーム | |
CN115294283A (zh) | 一种数字孪生工厂构建方法、装置、设备和存储介质 | |
Cai et al. | An overview of constructing geometric models of buildings using point clouds | |
US7701463B2 (en) | Accelerated rendering of images with transparent pixels using a spatial index | |
CN113971721A (zh) | 一种变电站设备数字孪生体的轻量化表征方法 | |
CN115100364B (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120829 |