高级搜索 标王直达
皮包装  真空包装机  礼品包装盒  瓦楞机  光电传感  钉箱机  缠绕机  包装  废纸  更多
 
 
当前位置: 首页 » 资讯 » 包装技术 » 包装设计 » 正文

包装CAD三维图形消隐中八叉树算法的应用

放大字体  缩小字体    发布日期:2005-07-05   来源:中国包装网   责编:中国包装网   浏览次数:618   版权与免责声明

一、三维图形消隐的概述

     造型是计算机三维图形处理的基础,而消除隐藏面、隐藏线(简称消隐)则是三维造型的关键。消隐就是运用某种算法把物体上看不见的线或面从画而中消去或者用虚线画出。消隐算法的核心就是判断三维模型的表面是否可见。

     抽象来看,一种消隐算法可以看作一个五元组,即HA=(I,O,D,P,S)其中,I为要进行消隐处理的三维对象集合;O为经过消隐处理的二维对象的集合;D为进行消隐处理时所采用的数据结构;P为进行消隐处理所需基本操作过程的集合,主要包括分类、排序、三维坐标变换、透视投影变换、基本图形元素间的求交计算、两个区域重叠判断、点与区域人包含测试、面的朝向测试;S为消隐策略,即规定上述各基本操作过程被采用的先后次序。

     消隐算法通常根据其处理场景时是直接对物体定义进行的,还是对它们的投影进行的而分为物空间算法和像空间算法两类。物空间算法将场景中的各物体和物体各组成部件相互进行比较,以最终判别出哪些面可见;而像空间算法则在投影平面上逐点判断各像素所对应的可见面。虽然各种消隐算法的基本思想各不相同,但他们大多采用了排序和连贯性方法以提高效率。

二、八叉树算法在三维图形消隐中的应用

1用八叉树表示三维形体

    分层树结构,称作八叉树(octrees),可用来在图形系统中表示实体。构造树形结构,要求每个结点与三维空间区域相符。这种实体表示利用了空间相关性以减少三维物体的存储需要。它也提供了存储有关物体内部信息的便利表示。

     八叉树编码方法将三维空间区域(一般是立方体)分成卦限(octants),且在树上的每个结点存储8个数据元素。三维空间的每个元素称为体素,或体元。当卦限中所有体元的类型相同时,这类型值存入相应的结点数据元素中。空间的空区域表示为体元类型“void”。非均质卦限再分成卦限,结点相应的数据元素指向树中下一个结点。该分法递归的进行下去,直到区域仅含均质卦限,此时树上每个结点有0到8个直接后代,如图1所示。

三维空间区域

八叉树结点表示中的数据元素

图1〓八叉树数据结构

2显示线性八叉树表示的物体的方法

     线性八叉树是只列出所有满的叶子结点的表示方法,每个结点的表示是十分简单的,因此这种八叉树占据内存甚少。在对立方体作八等分时,我们以图1的方式对每个象限进行编号。这样,每个结点可以用n位八进数的数串来表示,它最左一位对应第一次划分,其余依次类推。在对结点进行编码后,整个八叉树则是根据深度第一的方式对其遍历后,用依次列出满的叶结点的编号这样的方式来表示的。

     显示八叉树表示的物体时,我们先假定视点的位置为(x1,y1,z1),从原点到视点的方向,也可以认为是观察平面的法向量。我们要根据(x1,y1,z1)诸分量的正、负,确定不同象限在显示时的优先级,从而列出线性八叉树中诸结点显示次序的队列,以此保证该看到的就显示出来。根据这一点,在确定不同象限中立方体的显示次序时,将最可能被遮挡的放在最前面,最不可能被遮挡的放在最后面。例如,当x1,y1,z1均大于零时,它的优先级次序为:04216537。

3八叉树算法

     当用八叉树表示来描述被观察体时,通常按由前往后次序将八叉树结点映射到观察面片,以完成隐藏而消除。这种方法的思想是这样的:假定观察的方向正好先与0,1,2,3这四个结点对应的内容相遇,于是在这四个子区域前面的面是可见的,后面四个子区域,或者前面四个子区域的后面部分,则可能为前面的所遮挡。在这个假定的观察方向与显示对象安排的基础上,如果我们以0,1,……,6,7这一自然次序处理八叉树的结点,或者说以深度第一的次序遍历表示物体的八叉树,当遇到叶结点时,若它所对应的帧缓冲区中的像素还是背景色,那么就把这个结点对应的显示属性值作为这些像素的值。若像素中以不是背景值,那么不要改变它。这样,原来是未被占据的体素对应的像素位置总是空白的。而一个以完全被遮挡的结点,由于它的子结点对应的区域一定也被遮挡,因而也可以不必处理它们。

     通过对八叉树预先作必要的变换2中所介绍的),可以变到上面这种“标准”的情况,也就是可以通过变换来处理不同的视点及观察方向。因此,我们在具体实现时,总是假定只处理这种“标准”情况。并且还假定首先把八叉树变成可见面的四叉树表示,最后再转移到帧缓冲区中去。

4具体实例的实现

      本文作者以VisualC++60为开发工具,用该算法完成了凸体的消隐。下面以一个具体凸体为例,如图2所示,绘制了它的消隐立体图。该凸多面体的10个顶点已经按逆时针方向编号,1至10顶点坐标分别为(2,27,2)、(2,27,0)、(2,27,0)、(2,27,2)、(2,27,2)、(2,27,2)、(2,27,0)、(0,17,2)、(0,17,2)和(2,27,0)。

(文/付春英 和克智 刘志鹏)

<中国包装工业>

 

声明:

本文来源于网络版权归原作者所有,仅供大家共同分享学习,如作者认为涉及侵权,请与我们联系,我们核实后立即删除。


 
[ 资讯搜索 ]  [ 加入收藏 ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]

 
0条 [查看全部]  相关评论

 
推荐图文
包装丨糖果与蜂蜜包装设计分享 这五款塑料包装获“美洲之星奖”
伊利维他奶开启卖萌营销 新包装设计萌到爆表! 可口可乐新包装酷炫来袭 变形金刚罐热血归来!
推荐资讯
点击排行
 

版权与免责声明:

1、中国包装网运营的信息资讯发布平台,在任何情况下,本网所发布的信息或所表述的意见均不构成对任何的建议,任何人和企业据此进行造成的一切后果或损失,本网平台不承担法律责任。

2、本网转载并注明其他来源的稿件,是本着为读者传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。其他媒体、网站或个人从本网转载使用时,必须保留本网注明的稿件来源,禁止擅自篡改稿件来源,并自负版权等法律责任。

3、如本文内容来源于网络版权归原作者所有,仅供学习交流使用不构成商业目的 。如涉及作品内容、版权和其它问题,请与我们联系,我们核实后立即删除。

联系方式:0579-82057115

×
 
网站首页 | 关于我们 | 网站章程 | 网站制度 | 首批重点电商平台 | 评选专题单页 | 荣誉证书 | 世界包装组织成员 | 招聘信息 | 联系方式 | 法律声明 | 网站地图
中国行业电子商务TOP100 | 中国商业网站100强 | 浙江电子商务10强 | 首批重点电子商务第三方平台 | 法律顾问
包装网竞价推广 | 广告服务 | 广告中心 | 客服中心 | 积分换礼 | 网站留言 | RSS订阅
荣获2017年度中小企业公共服务示范平台