首页 基于林氏系统语言的树木枝条分形特征模拟

基于林氏系统语言的树木枝条分形特征模拟

举报
开通vip

基于林氏系统语言的树木枝条分形特征模拟基于林氏系统语言的树木枝条分形特征模拟 基于林氏系统语言的树木枝条分形特征模 拟 第34卷第1期 2006年1月 东北林业大学 JOURNALOFNORTHEASTFORESTRYUNIVERSITY Vo1.34No.1 Jan.2oo6 基于林氏系统语言的树木枝条分形特征模拟 刘兆刚李凤日卢军曲智林 f(东北林业大学,哈尔滨.150040) 摘要基于树木分枝的分形特征,在简要介绍林氏系统语言基本概念和海龟解释基础上,应用L—studio软 件编写林氏系统语言程序对不同枝条的分枝类型进行生长...

基于林氏系统语言的树木枝条分形特征模拟
基于林氏系统语言的树木枝条分形特征模拟 基于林氏系统语言的树木枝条分形特征模 拟 第34卷第1期 2006年1月 东北林业大学 JOURNALOFNORTHEASTFORESTRYUNIVERSITY Vo1.34No.1 Jan.2oo6 基于林氏系统语言的树木枝条分形特征模拟 刘兆刚李凤日卢军曲智林 f(东北林业大学,哈尔滨.150040) 摘要基于树木分枝的分形特征,在简要介绍林氏系统语言基本概念和海龟解释基础上,应用L—studio软 件编写林氏系统语言程序对不同枝条的分枝类型进行生长模拟,并通过引入随机性因子使得应用林氏系统生成的 树木分枝图形更加丰富多彩和形象逼真.林氏系统可对树木枝务仿真和树冠动态生长可视化模拟提供参考. 关键词林氏系统;分形;海龟解释;生长模拟 分类号TP391 SimulationofFractalCharacteristicsforTreeBranchesBasedonL—System/LiuZhaogang,LiFengi,LuJun,Qu Zhilin(NortheastForestryUniversity,Harbin150040,P.R.China)//JournalofNortheastFor estryUniversity.一2006, 34(1).一34,37 Intermsoffractalcharacteristicsfortreebranches,growthfordifierentbranchingtypeswassi mulatedwithL—studio softwarebasedonthebasicconceptsofL— systemandturtleinterpretation.Graphicsoftreebranchesbecomemorecolor- fulandvividbyintroducingrandomicityfactorsfromL—system.L— systemcanprovidevaluablereferencefortreebran— chessimulationanddynamicgrowthvisualizingfortreecanopy. KeyWOrdsL—system;Fractal:Turtleinterpretation;Growthsimulation 分形理论是由BenoitB.Mandelbrot在1975年正式提出 与建立的一种探索复杂性的新的科学方法和理论J,已成为 研究无特征尺度却有着自相似性质的体系的强有力的理论工 具.树木是真正的分形物体,但用传统的方法来描述树冠的 形状和结构是十分困难的.采用分形几何方法研究树木的树 冠结构以及分支格局为解决问题提出了方向.但如果将具有 分形特征的树木分枝格局的形态和结构以可视化的形式描述 出来,需要寻找一种数学方法来描述和理解树木枝条的几何 模式和自相似性.AristidLindenmayer于1968年提出的林氏 系统语言为研究类似植物结构的物体提供了一种机制J. 笔者利用林氏系统语言及不同树木的分枝类型来研究和构造 并编写了程序模拟具有分形特征的树 树木枝条的形状特征, 木枝条的生长过程,同时引入了随机性因子,使构建生成的枝 条更具逼真效果. 1林氏系统语言 林氏系统语言的本质是基于LOGO语言的字符串重写技 术.也就是应用其它的字符或字符串对字符串中的字符进行 替换的技术.它与早些时期Chomsky'S提出的字符串重写 技术的主要差别是采用并行重写技术,即对字符串中的字母 采用同时替换的方法.它通过一条公理(或称初始式)与几 条产生式(或称生成规则),多次反复替换,就可以生成一个 复杂的字符串,并对产生的字符串进行几何解译,生成复杂的 图形J.例如,有两个字符a,b,初始式为:=n,有两条生成 规则:0—6,6一.6,经过若干次反复迭代替换,其结果见图1. 第一次迭代后,根据替换规则字符a被字符b替换,第二次迭 代后,字符b被字符串n6替换,第三次迭代后,字符a,b同时 1)家}】然科学肚金(30371163),教白部归啊人员科研n动照 金,东北林业大学校基金资助. 笫一作者简介:刘兆刚,男,1970年6月生,东北林业大学林学 院,士研究生. 收稿口期:20054月4口. 贞任编辑:张建华. 替换,生成新的字符串bab,第四次迭代后生成新字符串 abbab,经过5次迭代后,生成新字符串bababbab.从图1可以 看出,经过若干有限次迭代,一个十分简单的字符串将变得非 常复杂.正基于此,对于有着自相似分形的树木枝条,采用林 氏系统可以很好地模拟其生长发育状况. b /\ abb babab 图1林氏系统语言的简单定义 如此迅速膨胀的字符串如何能描述树木枝条的生长,也 就是说将一系列字符串翻译成图形,以便在屏幕上显示是一 个至关重要的问题,否则生成的复杂的字符串将一点意义ci王 没有. 由Prusinkiewicz等人提出的基于海龟几何的字符串图 形解释,为林氏系统语言生成的复杂字符串进行图形显示提 供了理想的方法. 2字符串的海龟解释 海龟的状态可以定义为(,,),(,Y)作为海龟所在位 置的坐标,作为海龟的头面朝的方向.给定一初始步长d, 然后用占表示角度的增量,海龟将按照一系列指令进行移动, 八 .一 /,., 一 6(, n6 第1期刘兆刚等:基于林氏系统语言的树木枝条分形特征模拟35 完成字符串向图形的解释.表1列出了常用的海龟命令. 表1常用的海龟命令 符号意义 F(f)按当前方向,移动一定的步长d,绘制线段 G(g)按当前方向,移动,定n{J步长d,不绘制线段 十逆时针旋转角度 一 顺时针旋转角度 用作分杖的开始 [将的状态压人堆栈, ]将堆栈【{I弹IJj一个状态作为当前状态,用作分枝的结束 @nYin川因子IqllliB乘以当前的步长 根据海龟规定的字符含义,将生成复杂的字符串转换成 几何图形,实现图形的生成. 3基于林氏系统语言构建枝条模拟的思想 林氏系统语言最主要的应用就是构建具有分形特征的树 木生长的模拟.通过引入分枝符号,]设立初始条件,确定 生成规则和角度增量,就可以生成具有植物形态的几何图形. 应用林氏系统语言模拟植物枝条的长情况,见图2. t鲥i』:; ,?. 成觇lpl:—_--1. ,IJE觇IJ!IJp2:I—_.-I 图2利用林氏系统模拟枝条生长 图2中的虚线段表示当年新生枝条,实线段表示非当年 生枝条.初始式设为当年生枝条.当年生枝条经过生成规则 p1,变成非新生枝条,同时在顶端和侧端生成3个新的枝条; 生成规则1)2表明,以前的非新生枝条只进行生长,并不产生 当年生枝条.这种行为与现实植物生成的原理基本是一致 的,也就是在老的树的基部生成新叶和新枝条的概率很少,在 一 些当年新枝条上生成新叶和新枝条的机会更多一些. 基于L—s1:udio软件应用海龟命令编写简单的语句实现 上述枝条生成的图形模拟.图3显示了6次迭代后植物枝条 屏幕显示结果及相应的程序语句. Lsystem:O;derivationlength:6;Axiom:F;F一>G[+F][一F]GF; G一>GG:Endlsystem 囤3经6次迭代后植物枝条模拟及对应的程序语句 如果对图3中角度增量占值进行一些改变,就会直接影 响最终屏幕生成的枝条图形效果,见图4. 毒 . 囤4角度增量的改变影响枝条模拟生成的效果 4枝条分枝类型及模拟 树木枝条常见的分枝类型有3种:单轴分枝,合轴分枝和 假二叉分枝. 4.1单轴分枝 单轴分枝的特点是主茎顶芽的生长活动始终占优势,形成 直立而明显的主干,各级分枝依次较小(图5).用材树种的分枝 方式多为单轴分枝.根据单轴分枝的特点,应用L—studio软件 进行生长模拟,其结果及相应L—system程序语句见图6. T一>T[+B]r[一B]T;T一主卜;B一分枝 图5单轴分枝示意图 4.2合轴分枝 合轴分枝的特点是主茎顶芽生长活动形成一段主轴后即 停止生长或形成花芽,由下侧的一个腋芽代替主芽继续生长, 又形成一段主轴,之后又停止生长或形成花芽,再由其下侧的 腋芽接替生长,如此继续下去.因此,植物的主轴是由主茎和 相继接替的各级侧枝共同组成,因而称为合轴分枝.合轴分 枝可产生较多的分枝和较多的花芽,许多果树具有合轴分枝的 特性,见图7.根据合轴分枝的特点,应用L—studio软件进行 生长模拟,其模拟结果及相应L—system程序语句见图8. 4.3假二叉分枝 常见于具有对生叶序的植物中,主茎顶芽活动到一定的 时间就停止生长或死亡,由顶芽下面的-x~腋芽同时生长形 成两个分枝.每个分枝的顶芽活动到一定时候又停止生长, 再由其下面的一对腋芽同时生长,如此继续发育,形成许多二 l1 一 .一?l0 ; 0 00? : j?.^., . ' 36东北林业大学第34卷 叉状的分枝.因不是由顶端分生组织形成的分枝,故称为假 二叉分枝,其示意图见图9.根据单轴分枝的特点,应用L— studio软件进行生长模拟,其结果及相应L—system程序语句 见图1O. Lsystem:0;de~vatlonlength:5;axiom:F;F一>}[+F]F[一F]F; Endlsystem , = l, 图6枝条单轴分枝模拟结果及程序语句 T一>T[一一B]+T 图7台轴分枝示意图 Lsystem:0;derivationlength:5;axiom:F;F一>F[一一一一一F]+F Endlsystem 图8枝条合轴分枝模拟结果殛程序语句 5应用随机性林氏系统模拟树木分枝形态 前面应用林氏系统语言对不同树木分枝类型进行了模 拟,但会发现生成的图形有太多的同一性,过于人工化,图形 呆板,不生动形象.因此,在林氏系统语言中引入随机性生成 因子,并保留树木枝条主要特征的基础上,通过改变生成图形 的局部细节,可以使生成的植物枝条更加逼真和可视化J. 随机性林氏系统与前述的确定性林氏系统的主要区别就是加 入随机因子.图II显示了随机性同一林氏系统语句生成不 同植物分枝组图.该组分枝组图的程序语句如下: T,>T[一B][+B] 图9假二叉分枝示意图 Lsystem:0;derivationlength:5;axiom:F;F一>F[一F][+F];Endl— system 图1O枝条假二叉分枝模拟结果及程序语句 由于引入了随机概率因子,使得应用林氏系统生成的植 物分枝图形更加丰富多彩和形象逼真.在图11的程序语句 中,对应F字符存在3种概率相等(均为1/3)的生成规则,在 字符串中的每个字符F,通过植物分枝生成器软件随机从3 种生成规则中选取一种生成规则进行替换,由于该实例中所 给的概率是相等的,所以3种生成规则被选取的概率也是一 致的.如果对每种生成规则所被可能选取的概率进行修改, 那么每种生成规则被选取的概率电将发生变化,直接影响模 拟枝条生成的图形. 6结论与讨论 应用林氏系统语言,可以模拟具有分形特征树木的不同 形态枝条的生长发育状况,特别是引入随机性因子可以使生 成的树木枝条更加形象逼真.在应用林氏系统模拟树木枝条 的过程中,初始式和角度增量至关重要,不同的初始条件和角 度增量的些许变化都将较大程度地改变最后树木枝条生成的 模拟效果. 前面研究的树木分枝特征还仅仅局限于二维平面图形的 生成,仅是对二维平面枝条分枝的简单模拟,并未探讨林氏系
本文档为【基于林氏系统语言的树木枝条分形特征模拟】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_005190
暂无简介~
格式:doc
大小:23KB
软件:Word
页数:0
分类:
上传时间:2018-03-16
浏览量:26