东北用材林精细化经营软件系统的研制

2017-09-27 09:16马继东李淑红朱玉杰王景峰潘睿
森林工程 2017年5期
关键词:林木枝条树木

马继东,李淑红*,朱玉杰,王景峰,潘睿

(1.东北林业大学 工程技术学院,哈尔滨 150040;2.哈尔滨学院 工学院,哈尔滨 150086)

东北用材林精细化经营软件系统的研制

马继东1,李淑红1*,朱玉杰1,王景峰1,潘睿2

(1.东北林业大学 工程技术学院,哈尔滨 150040;2.哈尔滨学院 工学院,哈尔滨 150086)

以东北用材林为研究对象,在构建林木三维图形可视化基础上,研制用材林精细化经营系统软件。该系统主要应用OpenGL开放式图形库技术和数据库技术,采用Visual Basic语言建立;该系统基于林木的实测数据和主要树种的生长规律,结合林木的生长模型和形态结构,构建林木的三维可视化模型;该系统在树木和枝条的ER模型基础上,建立了树木和枝条的一对多access数据库,将林木的胸径、树高、枝条等信息存储起来,并采用ADO技术对数据库进行读写,便于程序操作;该系统在林木可视化基础上,可以施用不同强度的抚育间伐、不同比例的修枝等措施,分析对林木生长的影响,可以得到最优的经营方案;该系统应用了OpenGL中的选择和反馈机制,支持交互式操作。通过研究,该系统可以用于林业的生产作业中,可以解决实际的经营问题。

东北用材林;精细化经营;生长模型;OpenGL;软件设计

0 引言

森林经营可视化模拟结合计算机可视化技术与森林经营技术,是在模拟林木实地环境基础上,对各种经营措施分别进行仿真研究,是近年来林业科学研究的一个重点方向[1]。

相比于虚拟植物在农业上的应用,林木的三维模拟还很少,由于树木结构自身的复杂特点及其与环境交互的影响,林木的可视化研究依然是业界的研究难点[2]。围绕着这一领域,国内外多集中于林木的生长规律的建模,对其三维可视化的研究还不多,仅有如郝小琴[3]、魏琼[4]等的研究,且多属于计算机图形学领域;结合林木生长规律的可视化系统,雷相东[5]、刘兆刚[6]、舒娱琴[7]、常敏[8]等人均做过相应的研究。

本研究基于林木的实测数据,在模拟用材林三维静态模型基础上,结合用材林的生长模型及林分动态规律,模拟单木的动态生长过程,同时施用常用的营林措施并分析其对林木的影响。

1 系统开发环境

本系统是在AMD Athlon(tm)II X2 250(3.01GHz),内存2G,AMD Radeon HD 4350显卡,500G硬盘的台式电脑上开发调试的。

系统的软件环境是在Window XP(2002 SP3)操作系统下,采用Visual Basic 6.0编程语言编制而成。Visual Basic是基于Basic的可视化的程序设计语言,其编程系统采用面向对象、事件驱动的编程机制,将编程的复杂性封装起来,提供了一种所见即所得的可视化的程序设计方法,简单易用[9]。

2 系统关键技术

可视化系统的开发一般涉及图形建模、场景坐标变换、纹理映射等基本过程,由于这些过程的计算比较复杂,使得基于三维图形的程序开发难度较大,为简化程序的编制,从业人员多采用OpenGL即开放式图形库,来进行相应的工作。

2.1 OpenGL技术

OpenGL由Silicon Graphics开发,是计算机工业标准应用程序接口,主要用于定义2D/3D图形。在Visual Basic中应用OpenGL进行三维模型的设计操作大多通过第三方函数库VBOpenGL type library(Vbogl.tlb)来进行,它可省去大量的底层编程工作,在一般应用的程序设计中起到事半功倍的结果[10]。

2.2 数据库技术

本系统中数据库的使用主要体现在两个方面,一是建立树木和枝条的一对多ER关系模型,在此基础上建立access数据库,程序编制中使用ADO(Active Data Object)技术进行数据的检索,二是提供了图形化的对树木信息的浏览和编辑功能,主要使用了数据环境(Data Environment)和DataGrid构件。

2.2.1 ER模型

本系统建立了树木和枝条两个实体,一棵树木可以有多条枝条,每一枝条至多对应一棵树木,故二者的联系为一对多联系。树木的属性有树木编号、生长位置、胸径、树高、区域等,枝条的属性有枝条树木编号、枝高度、枝基径、枝长度、枝朝向、着枝角度等,两个实体的主码都是树木编号,系统建立的ER模型如图1所示。

图1 系统的ER模型Fig.1 ER model

将ER模型转换成关系模型,即将ER图的实体按规则转换为关系数据库中的各个表。图1中,分别转换成树木和枝条的数据表,其表结构如下所示。

树木(树木编号、位置X、位置Y、胸径、树高、区域)

枝条(树木编号、枝高度、枝基径、枝长度、枝朝向、着枝角度)

根据关系规范理论,将上述的两个表进行规范化的设计,其主要目的是减少数据存储的冗余。规范化设计要求数据库数据结构必须满足范式,至少应满足第三层规范化形式,即:非关键字段完全依赖于主关键字,但不传递依赖于主关键字,上述的两个表均满足第三范式。

2.2.2 ADO技术和数据库控件

ADO(Active Data Object),是Microsoft公司未来的数据访问策略,它逐步替代DAO和RDO而成为主要的数据访问接口。ADO 最主要的优点是易于使用、速度快、内存支出少和磁盘遗迹小[11],本系统中使用ADO技术进行数据库的读取。

为精简程序,本系统使用了DataEnvironment和DataGrid等构件。在设计时,使用数据环境设计器创建一个 DataEnvironment 对象。DataEnvironment 对象包括 Connection对象、Command 对象、层次结构(Command 对象之间的关系)、分组和合计。在访问数据环境设计器之前,必须在 Visual Basic 中引用它。再从“工程”菜单中,选择“添加 Data Environment”。

2.3 系统关键过程

(1)树木信息的存取。依据系统设计的树木与枝条一对多联系的数据库,使用ADO技术,读取数据并赋值给数组变量。在静态模拟时,不用改变数组的值;动态模拟时,利用定时器按树木生长规律修改数组的值后再调用这个数组,以达到动态生长的效果。本系统设计了Trees和Twigs子过程进行相应的操作。

(2)树木的绘制。DrawTree子过程,传递的参数分别为树木的X位置、Y位置、树木编号、胸径和树高。在该过程中,树木的树高、胸径、枝高度、枝基径、枝长度等随着时间变化的量,保持在相应的数组或变量中,在定时器模拟树木生长时,调用相应的值即可。在该过程中,主要使用绘制圆柱体的命令gluCylinder来绘制树干,同时在此过程中,调用了画枝的子过程。为加快显示速度,使用了列表技术。

(3)枝条的绘制。DrawBranch子过程,传递的参数分别为枝深度、枝基径、枝长、朝向角、着枝角度。在该过程中,主要使用绘制圆柱体的命令gluCylinder来绘制树枝,用3段或2段相连在一起的圆柱体来体现枝的弯曲,为加快显示速度,使用了列表技术。

2.4 软件的主要功能

(1)地面的显示和定义。系统内设右手坐标系,原点位于屏幕中心,X轴水平向右,Y轴垂直于X轴,Z轴垂直向上。在地面上绘制10 m×10 m的网格,以显示大地,如图2所示。

(2)数据存储功能。利用Access建立树木基本信息和树枝信息的数据库,存储树木的信息。其数据库结构分别为:树木信息(树木编号、位置X、位置Y、胸径、树高),树枝信息(树木编号、枝高度、枝基径、枝长度、枝朝向、枝着枝角度),这两个表为一对多关系,该表内容可以动态进行读写,如图3所示。

(3)树木图形化显示。主要利用OpenGL技术进行树木的绘制,按读取的树木位置信息,平移坐标系、按给定的胸径和树高等信息,用圆柱体来绘制树干,再通过坐标变换,按枝的信息将树枝绘制出来,如图3所示。

图2 地面Fig.2 Ground

(4)生长参数的设定和模拟。按落叶松的生长模型及其不同经营措施下的生长规律,分别设置不同经营期限,不同经营措施下(抚育强度,修枝比例)下的生长参数。按落叶松不同时期内的生长规律,实时将树木的生长过程再现出来,为了加快显示速度,利用OpenGL中的显示列表技术。如图4所示。

(5)经营措施的效果模拟。可以施用不同的经营措施,在生长模拟的过程中,将经营措施的效果再现出来,利用落叶松的枯损模型可以确定抚育对象。此页中可以设置不同的抚育强度(按株数)和修枝比例(点树冠的比例),0%表示不进行相应的作业,如图5所示。

图4 树木长生长10后的状态Fig.4 The state of tree after 10 years of growth

图5 经营措施的施用Fig.5 Application of management measures

3 结论

通过本项目的研究,将林学专业知识与计算机图形学技术结合起来,建立了三维可视化的辅助经营系统,它除了可以模拟树木生长外,也可施用经营措施,并分析各种经营方案的效果,可以很好地预测树木未来的生长状况,本系统为简单起见,并没有考虑林木之间的竞争,也没有考虑自然稀疏规律的影响。通过本项目的研究可以得出以下几点结论:

(1)树木的生长模型精确到一级枝的水平就可以满足生产经营分析的需要。

(2)Visual Basic 和OpenGL技术结合,方便适用,可以很好地为科研者解决实际的问题。

(3)采用ADO技术,通过数组来驱动树木的动态显示,便于程序的调试。

目前,基于树木生长模型的三维可视化模拟在处于研究初期,许多问题还有待进一步研究,比如树木全寿命周期的生长规律问题等,这些问题的解决能促进数字林业的进一步发展。

[1] 刘海,张怀清,林辉.森林经营可视化模拟研究[J].世界林业研究,2010,23(1):21-27.

[2] 汤孟平.森林空间经营理论与实践[M].北京:中国林业出版社,2007.

[3] 郝小琴.森林景物的三维迭代函数系统建模技术的研究[J].计算机学报,1999,22(7):768-773.

[4] 魏琼,蒋湘宁.基于D0L系统的树木三维可视化模型研究[J].北京林业大学学报,2003,25(3):64-67.

[5] 雷相东,常敏,陆元昌,等.长白落叶松单木生长可视化系统设计与实现[J].计算机工程与应用,2006,(17):180-183.

[6] 刘兆刚.樟子松人工林树冠动态三维图形模拟技术的研究[D].哈尔滨:东北林业大学,2007.

[7] 舒娱琴.虚拟森林经营管理系统的设计与实现[J].林业科学,2007,43(10):138-144.

[8] 常敏.基于实测数据和经验模型的单木可视化研究[D].北京:北京林业大学,2005.

[9] 刘瑞新,崔淼.Visual Basic 程序设计[M].北京:电子工业出版社,2003.

[10] 马继东,王立海.原条量材设计中基于OpenGL的交互技术的使用[J].森林工程,2007,23(6):31-33.

[11] 马继东,李淑红,朱玉杰.原条量材设计中数据库技术的应用[J].森林工程,2004,20(1):18-19.

SimulationofDelicacyManagementSoftwareforNortheastTimberForest

Ma Jidong1,Li Shuhong1*,Zhu Yujie1,Wang Jingfeng1,Pan Rui2

(1.College of Engineering and Technology,Northeast Forestry University,Harbin 150040; 2.School of Technology,Harbin University,Harbin 150086)

Taking the Northeast timber forest as studying object,delicacy management software is developed on the basis of the visualization of 3D forest timbers.OpenGL,database technology and Visual Basic were used to establish the system.Based on the measured data of trees and the growth rules of main tree species,combined with the growth model and morphological structure of trees,the three-dimensional visualization model of timbers was constructed.According to the ER model of trees and branches,a one-to-many access database was established,which could store the DBH,tree height,branches and other information.ADO technology was used to read and write the database,which was easy to operate the program.On the basis of visualization,we can use different intensity tending thinning,different proportion of pruning and other measures to analyze the impact on the growth of trees,and to get the best plan.Selection and feedback mechanism in OpenGL were used to support interactive operation.This system could be used in forestry production operations and could solve the actual operational problems.

Northeast timber forest;delicacy management;growth model;OpenGL;software design

S 792

:A

:1001-005X(2017)05-0067-05

2017-03-22

黑龙江省留学归国科学基金项目(LC2011C39);黑龙江省教育厅科学技术研究项目(12513031);林业公益性行业科研专项经费项目(201204059)

马继东,博士,副教授。研究方向:系统仿真与优化、工业工程。

李淑红,硕士,副教授。研究方向:项目管理、工程造价。E-mail:Alanna_nefu@163.com

马继东,李淑红,朱玉杰,等.东北用材林精细化经营软件系统的研制[J].森林工程,2017,33(5):67-71.

猜你喜欢
林木枝条树木
树木之最
冬天的枝条是破折号
闪光的枝条
辨认树木
树木也睡觉
试论高大林木的病虫害防治技术
天敌昆虫在林木病虫害防治中的重要作用探讨
绝句
林木新秀 黑果腺肋花揪
树木之最