📄
字号:
<p style='line-height:200%'><span lang=EN-US> 3. 环</span></p>
<p style='line-height:200%'><span lang=EN-US> <span
style='color:maroon'>环(Loop)</span>是有序、有向边(Edge)组成的封闭边界。环中的边不能相交,相邻两条边共享一个端点。环有方向、内外之分,外环边通常按逆时针方向排序,内环边通常按顺时针方向排序。</span></p>
<p style='line-height:200%'><span lang=EN-US> 4. 面</span></p>
<p style='line-height:200%'><span lang=EN-US> </span><span lang=EN-US
style='font-size:10.0pt;mso-ascii-font-family:仿宋_GB2312;mso-fareast-font-family:
仿宋_GB2312;color:red'> </span><span lang=EN-US style='font-size:10.0pt;
font-family:仿宋_GB2312;color:maroon'> </span><span style='color:maroon'>面(<span
lang=EN-US>Face)</span></span>由一个外环和若干个内环(可以没有内环)来表示,内环完全在外环之内。根据环的定义,在面上沿环的方向前进,左侧总在面内,右侧总在面外。面有方向性,一般用其外法矢方向作为该面的正向。若一个面的外法矢向外,称为正向面;反之,称为反向面。面的形状(<span
lang=EN-US>Surface)由面的几何信息来表示,可以是平面或曲面,平面可用平面方程来描述,曲面可用控制多边形或型值点来描述,也可用曲面方程(隐式、显式或参数形式)来描述。对于参数曲面,通常在其二维参数域上定义环,这样就可由一些二维的有向边来表示环,集合运算中对面的分割也可在二维参数域上进行。</span></p>
<p style='line-height:200%'><span lang=EN-US> 5. 体</span></p>
<p style='line-height:200%'><span lang=EN-US> <span
style='color:maroon'>体(Body)</span>是面的并集。在正则几何造型系统中,要求体是正则的,非正则形体的造型技术将线框、表面和实体模型统一起来,可以存取维数不一致的几何元素,并可对维数不一致的几何元素进行求交分类,从而扩大了几何造型的形体覆盖域。
</span></p>
<p><span lang=EN-US><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p>
<p><span lang=EN-US style='font-family:隶书;color:#CC3300'><a
href="http://learn.bitsde.com/hep/jisuanjituxing/Chapter3/CG_Txt_3_039.htm"><span
style='text-decoration:none;text-underline:none'><!--[if gte vml 1]><v:shape
id="_x0000_i1040" type="#_x0000_t75" alt="" href="..\CG_Txt_3_039.htm"
style='width:24.75pt;height:21.75pt' o:button="t">
<v:imagedata src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image013.gif" o:href="http://learn.bitsde.com/hep/jisuanjituxing/material/CG_Gif_pub_024.gif"/>
</v:shape><![endif]--><![if !vml]><img border=0 width=33 height=29
src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image013.gif" v:shapes="_x0000_i1040"><![endif]></span></a></span><span
lang=EN-US style='font-family:隶书;color:#666633'><a
href="http://learn.bitsde.com/hep/jisuanjituxing/Chapter3/CG_Txt_3_039.htm"><span
style='color:#666633'>边界表示的数据结构</span></a><o:p></o:p></span></p>
<p style='line-height:200%'>在实体造型技术的研究中,有不少边界表示的数据结构相继提出,比较著名的有半边数据结构、翼边数据结构、辐射边数据结构等。</p>
<p style='line-height:200%'><span lang=EN-US> 其中<span
style='color:black'>翼边数据结构</span>是在1972年,由美国斯坦福大学Baumgart作为多面体的表示模式而被提出来的,它是基于边表示的数据结构,如图3.2.11所示。它用指针记录了每一边的两个邻面(即左外环和右外环)、两个顶点、两侧各自相邻的两个邻边(即左上边、左下边、右上边和右下边),用这一数据结构表示多面体模型是完备的,但它不能表示带有精确曲面边界的实体。</span></p>
<p align=center style='text-align:center;line-height:200%'><span lang=EN-US><!--[if gte vml 1]><v:shape
id="_x0000_i1041" type="#_x0000_t75" alt="" style='width:96.75pt;height:123.75pt'>
<v:imagedata src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image014.gif" o:href="http://learn.bitsde.com/hep/jisuanjituxing/Chapter3/32img/CG_Gif_3_048.gif"/>
</v:shape><![endif]--><![if !vml]><img border=0 width=129 height=165
src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image014.gif" v:shapes="_x0000_i1041"><![endif]></span></p>
<p align=center style='text-align:center;line-height:200%'><span
style='font-family:隶书;color:#FF9900'>图<span lang=EN-US>3.2.10 翼边数据结构</span></span></p>
<p style='line-height:200%'><span lang=EN-US> 为了表示非正则形体,1986年,Weiler提出了辐射边(Radial
Edge)数据结构,如图3.2.12所示。辐射边结构的形体模型由几何信息(Geometry)和拓扑信息(Topology)两部分组成。几何信息有面(face)、环(loop)、边(edge)和点(vertex),拓扑信息有模型(model)、</span></p>
<p style='line-height:200%'><span lang=EN-US> 区域(region)、外壳(shell)、面引用(face
use)、环引用(loop use)、边引用(edge use)和点引用(vertex use)。这里点是三维空间的一个位置,边可以是直线边或曲线边,边的端点可以重合。环是由首尾相接的一些边组成,而且最后一条边的终点与第一条边的起点重合;环也可以是一个孤立点。外壳是一些点、边、环、面的集合;外壳所含的面集有可能围成封闭的三维区域,从而构成一个实体;外壳还可以表示任意的一张曲面或若干个曲面构成的面组;外壳还可以是一条边或一个孤立点。外壳中的环和边有时被称为“线框环”和“线框边”,这是因为它们可以用于表示形体的线框图。区域由一组外壳组成,而模型由区域组成。图3.2.11是用辐射边数据结构表示的一个形体模型,注意其中实体、面、线是用统一的数据结构表示的。</span></p>
<p align=center style='text-align:center;line-height:200%'><span lang=EN-US><!--[if gte vml 1]><v:shape
id="_x0000_i1042" type="#_x0000_t75" alt="" style='width:395.25pt;height:221.25pt'>
<v:imagedata src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image015.gif" o:href="http://learn.bitsde.com/hep/jisuanjituxing/Chapter3/32img/CG_Gif_3_049.gif"/>
</v:shape><![endif]--><![if !vml]><img border=0 width=527 height=295
src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image015.gif" v:shapes="_x0000_i1042"><![endif]></span></p>
<p align=center style='text-align:center;line-height:200%'><span
style='font-family:隶书;color:#FF9900'>图<span lang=EN-US>3.2.11 辐射边数据结构 </span></span><span
lang=EN-US style='mso-ascii-font-family:隶书;mso-fareast-font-family:隶书;
color:#FF9900'> </span><span style='font-family:隶书;color:#FF9900'>图<span
lang=EN-US>3.2.12 一个用辐射边结构表示的非正则形体模型</span></span></p>
<p style='line-height:200%'><span lang=EN-US> 清华大学国家CAD工程中心开发的几何造型系统GEMS5.0中,采用的数据结构如图3.2.14所示。</span></p>
<p align=center style='text-align:center;line-height:200%'><span lang=EN-US><!--[if gte vml 1]><v:shape
id="_x0000_i1043" type="#_x0000_t75" alt="" style='width:414pt;height:366pt'>
<v:imagedata src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image016.gif" o:href="http://learn.bitsde.com/hep/jisuanjituxing/Chapter3/32img/CG_Gif_3_050.gif"/>
</v:shape><![endif]--><![if !vml]><img border=0 width=552 height=488
src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image016.gif" v:shapes="_x0000_i1043"><![endif]></span></p>
<p align=center style='text-align:center;line-height:200%'><span
style='font-family:隶书;color:#FF9900'>图<span lang=EN-US>3.2.13 GEMS5.0的数据结构</span></span></p>
<p style='line-height:200%'><span lang=EN-US> 该数据结构基于线框、表面、实体和特征统一表示,且具有以下特点:
</span></p>
<p style='margin-left:36.0pt;text-indent:-18.0pt;line-height:200%;mso-list:
l12 level1 lfo4;tab-stops:list 36.0pt'><![if !supportLists]><span lang=EN-US>1.<span
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>采用自顶向下的设计思想。在形体的表示上,遵循了从大到小,分解表示的原则;<span
lang=EN-US> </span></p>
<p style='margin-left:36.0pt;text-indent:-18.0pt;line-height:200%;mso-list:
l12 level1 lfo4;tab-stops:list 36.0pt'><![if !supportLists]><span lang=EN-US>2.<span
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>支持非流形形体的表示;<span
lang=EN-US> </span></p>
<p style='margin-left:36.0pt;text-indent:-18.0pt;line-height:200%;mso-list:
l12 level1 lfo4;tab-stops:list 36.0pt'><![if !supportLists]><span lang=EN-US>3.<span
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>实体拓扑数据与几何数据双链表连接,存放紧凑;<span
lang=EN-US> </span></p>
<p style='margin-left:36.0pt;text-indent:-18.0pt;line-height:200%;mso-list:
l12 level1 lfo4;tab-stops:list 36.0pt'><![if !supportLists]><span lang=EN-US>4.<span
style='font:7.0pt "Times New Roman"'> </span></span><![endif]>能够支持特征造型。</p>
<p><span lang=EN-US><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p>
<p><span lang=EN-US style='font-family:隶书;color:#CC3300'><a
href="http://learn.bitsde.com/hep/jisuanjituxing/Chapter3/CG_Txt_3_040.htm"><span
style='text-decoration:none;text-underline:none'><!--[if gte vml 1]><v:shape
id="_x0000_i1044" type="#_x0000_t75" alt="" href="..\CG_Txt_3_040.htm"
style='width:24.75pt;height:21.75pt' o:button="t">
<v:imagedata src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image013.gif" o:href="http://learn.bitsde.com/hep/jisuanjituxing/material/CG_Gif_pub_024.gif"/>
</v:shape><![endif]--><![if !vml]><img border=0 width=33 height=29
src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image013.gif" v:shapes="_x0000_i1044"><![endif]></span></a></span><span
lang=EN-US style='font-family:隶书;color:#666633'><a
href="http://learn.bitsde.com/hep/jisuanjituxing/Chapter3/CG_Txt_3_040.htm"><span
style='color:#666633'>欧拉操作</span></a><o:p></o:p></span></p>
<p>对于任意的简单多面体,其面<span lang=EN-US>(f)、边(e)、顶点(v)的数目满足公式</span></p>
<p><span lang=EN-US> v - e + f = 2.</span></p>
<p style='line-height:200%'><span lang=EN-US> 这就是著名的<span
style='color:maroon'>欧拉公式</span>。对于任意的正则形体,引入形体的其它几个参数:形体所有面上的内孔总数(r)、穿透形体的孔洞数(h)和形体非连通部分总数(s),则形体满足公式:</span></p>
<p style='line-height:200%'><span lang=EN-US> v - e + f =
2(s-h) + r.</span></p>
<p style='line-height:200%'><span lang=EN-US> 欧拉公式给出了形体的点、边、面、体、孔、洞数目之间的关系,在对形体的结构进行修改时,必须要保证这个公式成立,才能够保证形体的有效性。由此而构造出一套操作,完成对形体部分几何元素的修改,修改过程中保证各几何元素的数目保持这个关系式不变,这一套操作就是欧拉操作。<span
style='color:black'>最为常用的几种欧拉操作有:</span></span></p>
<p style='line-height:200%'><span lang=EN-US> (1).mvsf(v,f),生成含有一个点的面,并且构成一个新的体。</span></p>
<p style='line-height:200%'><span lang=EN-US> (2).kvsf,删除一个体,该体仅含有一个点的面。</span></p>
<p style='line-height:200%'><span lang=EN-US>
(3).mev(v1,v2,e),生成一个新的点v2,连接该点到已有的点v1,构成一条新的边。</span></p>
<p style='line-height:200%'><span lang=EN-US> (4).kev(e,v),删除一条边e和该边的一个端点v。</span></p>
<p style='line-height:200%'><span lang=EN-US>
(5).mef(v1,v2,f1,f2,e),连接面f1上的两个点v1、v2,生成一条新的边e,并产生一个新的面。</span></p>
<p style='line-height:200%'><span lang=EN-US> (6).kef(e),删除一条边e和该边的一个邻面f。</span></p>
<p style='line-height:200%'><span lang=EN-US> (7).kemr(e),删除一条边e,生成该边某一邻面上的一新的内环。</span></p>
<p style='line-height:200%'><span lang=EN-US>
(8).mekr(v1,v2,e),连接两个点v1、v2,生成一条新的边e,并删除掉v1和v2所在面上的一个内环。</span></p>
<p style='line-height:200%'><span lang=EN-US>
(9).kfmrh(f1,f2),删除与面f1相接触的一个面f2,生成面f1上的一个内环,并形成体上的一个通孔。</span></p>
<p style='line-height:200%'><span lang=EN-US>
(10).mfkrh(f1,f2),删除面f1上的一个内环,生成一个新的面f2,由此也删除了体上的一个通孔。</span></p>
<p style='line-height:200%'><span lang=EN-US> 为了方便对形体的修改,还定义了两个辅助的操作:</span></p>
<p style='line-height:200%'><span lang=EN-US>
(11).semv(e1,v,e2),将边e1分割成两段,生成一个新的点v和一条新的边e2。</span></p>
<p style='line-height:200%'><span lang=EN-US>
(12).jekv(e1,e2),合并两条相邻的边e1、e2,删除它们的公共端点。</span></p>
<p style='line-height:200%'><span lang=EN-US> 以上十种欧拉操作和两个辅助操作,每两个一组,构成了六组互为可逆的操作。</span></p>
<p style='line-height:200%'><span lang=EN-US> 可以证明:欧拉操作是有效的,即用欧拉操作对形体操作的结果在物理上是可实现的;欧拉操作是完备的,即任何形体都可用有限步骤的欧拉操作构造出来。</span></p>
<p style='line-height:200%'><span lang=EN-US> 以上欧拉操作仅适用于正则形体,非正则形体已不再满足欧拉公式,但是欧拉操作中对形体点、边、面、体几何元素作局部修改的原理仍然适用,Weiler定义了扩展的欧拉操作来构造非正则形体,仍然把这一套操作形体拓扑结构的方法叫作欧拉操作。</span></p>
<p><span lang=EN-US><!--[if gte vml 1]><v:shape id="_x0000_i1045" type="#_x0000_t75"
alt="" style='width:24pt;height:24pt'>
<v:imagedata src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image012.gif" o:href="http://learn.bitsde.com/hep/jisuanjituxing/material/CG_Gif_pub_023.gif"/>
</v:shape><![endif]--><![if !vml]><img border=0 width=32 height=32
src="./第三章%20几何造型技术2(形体在计算机内的表示等).files/image012.gif" v:shapes="_x0000_i1045"><![endif]></span><span
style='font-family:幼圆
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -