当前位置:
文档之家› L系统文法构图算法的研究与改进
L系统文法构图算法的研究与改进
图形说明,一般,我们常用“龟形图
法”对 L 系统进行图形说明[6-8]。
龟形图法的基本思想:将龟的状态
定 义 为 三 元 组( x , y , α ), 其 中 笛
卡儿坐标(x ,y )表示龟的位置,方
向角α被解释为龟头所指的方向[2]。给定
步长 d 和角度增量δ,龟可以反馈下述符
号表示的命令(如图 1 - 2 ):
4 总结
本文主要针对 L 系统文法构图算法在计算机二维图形方面的 研究,得出以下主要研究成果:
(1) 对 L 系统文法构图算法进行了改进,并提出了基于 L 系 统文法构图算法用鼠标绘制分形图形的算法,并实现了算法且实 现的效果良好。
(2) 利用Visual C++ 6.0强大的应用开发功能和图形绘制功 能及友好的用户界面,实现了分形软件的用户界面可视化,并 完成可缩放、改变角度、迭代次数、颜色等来实现用户和分形 图形绘制之间的交互操作。
元的绘制并生成文法规则。然后用鼠标点击生成分形图,根据
L 系统构图算法生成相应的分形图形。其示意图见图 2 - 2 。
3 实验结果及分析
3.1 L系统改进算法结果分析
针对传统 L 系统绘制分形图形的画法单一的特点,本文改进
了 L 系统在画法上的不足,采用了实线、虚线、圆、矩形 4 种
不同的画法。同时为了增强分形图形的效果,软件增加了对背
理再左键点击绘图区域同样获得点坐标并加入数组。左键点击多
次这时数组中就有多个点坐标,用线将这些点连接起来。每两
点连线就有一个方向,每相连的两个线段中的后一线段就相当于
在前一线段的方向上旋转δ角度画线所得,这时的旋转δ角度就
相当产生δ / δ 个固定的角度δ ,用δ / δ 个符号“+”或
0
0
0
“- ”表示这旋转的角度δ。当鼠标右键点击时,就完成生成
2 土地管理信息系统的开发
从本质上来讲,建立土地管理信息 就是用现代化的技术来获取、分析、处 理、管理和利用土地信息,就是要依靠 计算机技术和现代化科学理论及数学模型 的应用,对土地信息进行管理,为相关 管理部门提供准确的土地信息查询服务和 高效的管理、决策技术支持,为土地使 用者提供快捷、全面的服务。在利用 ComGIS 进行土地管理信息系统开发时应 充分发挥 ComGIS 的优势,满足系统使用 者的要求,既考虑当前的可行性、又考虑 今后升级的可能性[5,6],故在开发中应遵 循以下原则:
下去,最后得到一个由 a 和 b 两个字母组
成的字符串序列,如图 1 - 1 所示。
1.2 L系统的几何解释
由上述定义可知,L 系统中的公理和
产生式均是由字符串描述的,因此字符
串重写系统最后得到的是一个由特定字母
组成的字符串。为了使该字符串能描述
某种图形,就需要给 L 系统中每一个字母
赋予一个特定的图形含义,即给 L 系统以
3 小结
应用 C o m G I S 开发土地管理信息系 统,能够直观、高效地辅助土地管理,具 有很大的应用潜力。在开发过程中应遵循 计算机信息系统开发的一般原则,同时要 满足土地资源管理对管理信息系统的要求。 这样才能开发出易用、高效的管理信息系 统,满足新的社会经济条件下土地资源管 理对于信息处理的要求。
利用 GIS 开发土地管理信息系统,能 够充分发挥 GIS 在土地管理上的优势,所 开发的系统属于应用型 GIS。应用型 GIS 的 开发有三种方式,目前最主流的方式是利 用 ComGIS 进行开发。土地管理中的与空 间信息相关的制图与空间分析等管理功能 直接调用 ComGIS 本身的功能得以实现, 其他管理功能则通过开发环境进行开发得 以实现,这样能够有效地降低开发成本、 提高开发效率。
包括一个字母 b,那么第一步由规则 b →
a 可知公理 b 被 a 替换;第二步,由生成
规则 a → ab,a 被 ab 替换。单词 ab 由两
个字母组成,在下一步两个均被同时替
换,得到新的单词 a b a ;接着,由 a b a
生成 abaab,由 abaab 又生成 abaababa,然
后是 abaababaabaab,上述过程可一直进行
参考文献 [1] 林增杰,严星.土地管理概论[M].北 京:中国国际广播出版社.1990. [2] 孙在宏.土地管理信息系统[M].北京: 科学出版社.2005. [3] 李文实,黄民生.基于ComGIS的泉州 文化旅游资源信息系统设计[J].泉州师范 学院学报.2006,24(6):72-76. [4] 李文实.基于VB+MO的县域旅游信息 系统开发设计[J].中国科技信息.2006, (24):202-204. [5] 李文实.基于GIS的福建沿海地区城镇 体系规划研究[D].福建师范大学硕士学位 毕业论文.2004. [6] 陈正江,汤国安,任晓东.地理信息 系统设计与开发[M].北京:科学出版社. 2005. 作者简介 李文实(1971- ),福建永春人,男,讲师, 硕士,从事 GIS、区域开发与国土整治教学 与研究。
2.1 以人为本原则 土地管理信息系统直接面对各层次用 户,用户的计算机水平有高有低,受培 训的程度存在差别。系统设计时应考虑 这一因素的制约,为所有潜在的系统使 用者简易使用系统着想。通过简单、友 好的界面和方便、通俗易懂的帮助系 统,使使用者通过界面就能知道所操作 的内容,且易于掌握、便于使用。这样 能够更好地为各层次的用户服务,便于 推广应用,实现使用信息系统提高效率 的要求。 从土地管理工作人员的角度出发,
景颜色、画笔颜色和圆、矩形填充颜色的控制,用户可以随意
改变分形图形的颜色。
L 系统文法构图算法改进后的图形效果以经典的分形树为
例,其效果图见图 3 - 1 。
由图 3 - 1 的效果可知,改进后的算法效果明显,画法更加
多样,分形图形更加丰富多彩,灵活多变,图形更加形象逼 真,富有生气。
3.2 用鼠标绘制分形图形结果分析 本文提出的用鼠标绘制分形图形的算法是在 L 系统文法构图 算法的基础上提出的。其主要的步骤为:(1) 绘制生成元;(2) 生成分形图。其中用鼠标绘制生成元的效果见图 3-2;生成对应 文法规则的效果见图 3 - 3。 生成的分形图形起点和终点都是唯一的,并且整个曲线既没 有断点,没有分支结构。同时可知,可以用鼠标实现绘制简单 的分形图形,其实现过程就如单一文法规则构图算法相仿,先 用鼠标绘制生成元即文法规则,然后根据 L 系统文法构图算法的 基本原理实现分形图形的绘制。由此并根据用鼠标绘制分形图形 算法的基本原理可知,用鼠标绘制分形图形的算法简单,生成 分形图形方便简捷,能实现一般软件所不能实现的图形,实现 效果良好。 因此,对于 L 系统文法规则不了解的用户可以随意点击绘图 区域,生成相应的分形图形。不过,用鼠标绘制分形图形的效 果时好时坏,因为用鼠标绘制生成元的时,不能精确地控制其 旋转的角度,也就是生成的文法规则不能精确控制。
12
22
11
21
其坐标见图 2 - 1 。
2.2 鼠标绘制分形图形的基本思想
本文提出的用鼠标绘制分形图形是在 L 系统文法构图算法的
基础上实现的,其主要步骤是:(1)绘制生成元;(2)生成分形图。
基本思想:当鼠标左键点击一次绘图区域时,相当于产生
一个字符 F,同时获得当前点坐标并将其坐标位置加入数组,同
信息科技
中国科技信息 2008 年第 6 期 CHINA SCIENCE AND TECHNOLOGY INFORMATION Mar.2008
L 系统文法构图
算法的研究与改进
李香兰 谢锦煌 闽西职业技术学院实验中心 364021
摘 要 通过分形理论的基本知识,对 L 系统文法构 图算法进行了深入的研究并改进了算法,同 时提出了用鼠标绘制分形图形的算法。通过 Visual C++ 6.0 良好的用户界面,编程实现 了软件绘制分形图形。 关键词 分形;L系统;文法规则
y ,α )为龟的初始状态,d 、δ为固
0
0
定的步长和转动角度,则可以得到一个
与字符串相对应的图形,该图形就是字
符串基于龟爬行规则的几何映射。现在
给出一个字符串的例子:
FFF-F-F+F-F+F-F-FFF
δ =90°
则爬行解释如图 1-2 所示。
2 L 系统文法构图算法的改进与实
现
2.1 L系统文法构图算法的改进
间的区域内画圆,取其径 r 为:
图 1-1 L 系统的一个实例
图 1-2 一个字符串的解释 -100-
图 2-1 矩形画法
而绘制圆的圆心坐标位置为:
(2) 矩形画法:
根据文法规则绘制图形时,在两点间的区域内画矩形,则
矩形四个顶点的坐标可取为:c(x ,y ),b(x ,y ),α(x ,y ),d(x ,y )。
下转第 103 页
图 2-2 鼠标绘制生成元示意图
图 3-1 改进算法效果图 -101-
图 3-2 用鼠标绘制生成元 图 3-3 生成对应的文法规则
的潜力 土地管理的特色是对土地空间特性的
管理。土地空间特性,包括土地的地理 位置、相邻关系。土地的这种空间特 性,为地理信息系统(G I S )的应用提 供广阔的天地。GIS 最初的应用领域,就 是建立与土地管理、土地规划相关(包 括地籍管理、土地数据库等有关系统的 管理和规划等)的土地信息系统 (L I S )。因此,G I S 是进行土地管理, 建立土地信息系统的最佳平台。
1 L 系统构图的基本原理
1.1 简单 L 系统的定义 L 系统实质上就是一个并行重写系 统,其核心概念是重写(r e w r i t i n g )。 重写的基本思想是根据预先定义的重写规 则(生成规则)集不断地生成复合形状 并用它来取代初始简单物体的某些部分以 定义复杂物体[1-5]。 下面举一个例子直观地理解重写概念 说明并行重写系统的基本特征。 考虑由两个字母 a 和 b 组成的字符 串,称为单词。a 、b 可在同一单词中出 现多次,每个字母与一个改写规则有 关。例如,如果写 b → a ,那么代表字 母 b 用 a 替换;a → ab 表示字母 a 用 ab 替 换,这便是改写规则。改写过程从一个 称作公理的单词开始,例如这个单词仅