计算机图形学 第9章 非规则图形.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机图形学 第9章 非规则图形

* 第9章 非规则图形的生成 9.1 分形理论及其应用 9.1.1 分形概念 从几何学上看,分形是实空间或复空间上一些复杂的点的集合,它们构成一个紧子集,并具有下面经典的几何性质: (1) 分形集都具有任意小尺度下的比例细节,即具有无限精细结构; (2) 分形集无法用传统几何语言来描述,它不是某些简单方程的解集,也不是满足某些条件的点的轨迹; (3) 分形集具有某种自相似形式,包括近似和统计上的自相似; (4) 分形集一般可以用简单的方法定义和产生,如迭代; (5) 按某种维数定义,分形集的分形维数大于相应的拓扑维数。 9.1.2 分形定义及分类 分形集是一类不能用经典几何方法描述的“不规则”集合,它们基本满足分形的经典性质,但是在自相似的程度上可以有很大差别。分形几何就是研究所谓“简单”空间上这样一类“复杂”子集的数学分支。 2.自相似维数度量 3.Hausdoff维数度量 4.盒维数度量 1.拓扑维与度量维 9.1.3 分形维数 9.1.4 函数递归分形图形 使用函数递归可生成具有严格的自相似性质的分形图形。 1.Koch曲线 如图9-2所示,从当前点A(100, 100)开始,角度为0,直线长度为300个像素点。Koch曲线的递归过程是:每次对每条边,将线段三等分,计算第一个三分之一段后旋转60°,接着计算第二个三分之一长度,再旋转-120°,计算第三个三分之一长度,再旋转60°,计算最后三分之一线段长度。设递归的次数为N,当递归结束后,再绘制最后一次计算出的线段。 图9-2 不同次数的Koch曲线 2.树枝曲线 如图9-3所示是一个树技曲线生长图,其递归过程是:每次绘制每条边后,按该线段的长度的一定比例(如3/4),对其末端生成两条线段,第一个线段旋转正角度(如20°),并绘制,第二个线段旋转负角度(如-20°),并绘制。设递归的次数为N。该树枝生成过程与Koch曲线不同处是每次递归的结果线段都要绘制出来, 图9-3 树枝递归生成图 3.生成元分形图形 由上两种递归函数生成图形程序可以看出,它们有很大一部分是由生成元,或说发生器自由地绘制出来,递归过程的重点是长度与角度的变化,不同的长度或不同的角度可生成不同的分形图形。 可以用一个二维数组gene表示生成元,其中数组的第一个元素表示旋转角度,第二个元素指定线段长度的比率,如:gene[][2]={{0.0, 1.0},{85.0, 1.0}, {-170.0, 1.0},{-85.0, 2.0} },指定的生成元如图9-4(a)所示。 不同生成元、不同递归次数生成的不同分形图 9.1.5 L系统 L系统是林德梅叶1968年为模拟生物形态而设计的,后来史密斯于1984年、普鲁辛凯维奇于1986年,分别将它应用于计算机图形学。L系统实际上是字符串重写系统,首先定义字符集合, 设置初始字符串和字符串替代规则,然后根据规则对原始字符串不断进行替代。每一步迭代过程中字符的替换都是并行的, 即所有字符同时进行替代操作。最后通过将字符串解释成图形,可以生成许多经典的分形,特别是能很好地表达植物的分枝结构。 L系统的符号串也称“龟图”(Turtle),龟图的状态用三元组(X, Y, D)表示,其中X和Y分别代表横坐标和纵坐标,D代表当前的朝向。令? 是角度增量,h是步长。符号串的图形学的一种可能的解释见表9.1。 表9.1 L系统的部分符号规定与解释 也是合法的,主要用于获得复杂的解释 其他 将线段长度乘以nnn,nnn也可以是简单函数 @nnn 倒转方向(控制+、-、/) ! 减少角度nn度 /nn 增加角度nn度 \nn Pop,将图形状态重置为栈顶的状态,并去掉该栈中的内容 ] Push,将龟图当前状态压进栈(stack) [ 原地转向180° | 从当前方向向右转一个给定的角度 - 从当前方向向左转一个给定的角度 + 从当前位置向前走一步,但不画线 G 从当前位置向前走一步,同时画线 F 图 形 解 释 符 号 例如:给出初始字符串为F--F--F,设角度增量为60°,其对应图形如图9-6(a)所示。 第一个“F”表示向前走一个单位线段(规定从左向右),得到的是AB线段。然后是两个“-”,表示从当前方向开始算起向右转两个60°。第二个“F”表示沿当前方向再走一个单位长度,得到BC线段。接下去又右转两个60°,再画一个单位线段,得到CA线段。于是得到一个三角形ABC。 图9-6 L系统图形初始状态 给出代换规则为F = F + F--F + F,其对应图形如图9-6(b)所示。 将“F--F--F”中的每个“F”用“F + F--F + F”代换,第一次代入得到: F + F--F + F--F + F--F + F--F + F--F + F。

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档