正在加载图片...
·306 北京科技大学学报 1999年第3期 分析、多窗口,数据共享与位运算等诸多内容, 因此采用面向对象编程(OOP)的Visual C+作 为FDCP的程序设计语言,图4是分形维数计算 程序各功能模块之间的关系示意图,上控模块 控制整个程序的窗口框架与子窗口门的用户区的 刷新、消息传递与处理以及各个功能子模块的 衔接:图像显示模块负责完成在子窗口用户区 内显示分形图像以及计算结果:计算模块又包 括4个不同计算方法的功能子模块,它们分别 是周长面积法、盒计数法、半径法与变量法,这 些计算子模块用不同的方法对分形图像的维数 进行计算:数据交换模块主要用于与其他Win dows程序或软件进行数据交换,本程序采用2 图5主窗口界面图 种不同的方法,即利用剪贴板和VMF图片文 为验证程序的可靠性,分别用直线、正方 件与数据文件. 形、科赫曲线、康托尔三分点集这4种有规分形 图形对FDCP的计算结果进行了验证.其中,直 图像显示模块 线、正方形与康托尔三分点集的分形维数计算 周长面积法 结果与理论值严格相等,用FDCP的盒计数法 模块计算了第5级科赫曲线的分形维数,结果 盒计数法 如图6所示,从图6可以得出,FDCP计算的科 整 计算模块 赫曲线分形维数为1.2166.科赫曲线的理论分 半径法 形维数为D=ln4/1n3=1.2619,而由于无穷 级的科赫曲线是不可得的,因此标定采用第5 变量法 数据交换模块 级科赫曲线,计算结果表明FDCP用于计算分 维是可靠的.文献[5~8】用本文程序成功地对 图4FDCP程序设计流程图 Mo/B-Sialon与Ta/B-Sialon梯度功能材料中存在 利用可视化编程语言Visual C+的基本类 的界面分形维数进行了研究, 作(Microsoft Foundation Class:MFC)进行编程, 用FDCP程序的盘计数法计算了图3(c) 可以充分利用C+语言面向对象编程的优点, 的枝晶的维数为1.694:图3(d)的枝晶边界维数 能够提高代码的执行效率,保证程序易于扩充、 为1388,结果如图7所示,由此可见,不同的研 维护、移植,代码紧凑,效率高等优点,同时又充 究对象所构成的分形维数是显然不同的,因此, 分利用了Windows平台支持多任务的特点,容 必须正确选取研究的分形对象与选择合适的计 易实现不同应用程序间的数据交换.另外还可 算方法 以根据需要,对计算模块作相应的补充,使得增 加新的计算方法简单易行.程序提供非常友好 17=8.5625-1.2166nr) 的用户界面.图5是FDCP显示了5级科赫曲线 R=0.9976 的主窗口界面.它有“File”.“View”.“Fractal'”, D=1.2166 “Window'”与“Help”等菜单以及各自的下拉菜单 (Nu 组成.其中,图像显示模块采用MFC与SDK混 合编程,程序框架利用MFC完成.但由于MFC 所带的CBitmap类的显小速度较慢,为加速图 像显示过程,采用MFC的框架调用SDK函数 来实现显示功能,由于该程序需要支持多个图 像文件同时处理,因此FDCP程序必须采用MDI In(r) 窗口格式进行设计, 图6科赫曲线标定结果
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有