YZ系列工具之YZ10:VBA_梦幻图像
我给VBA下的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套+一部VBA手册,教程分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到数据库,到字典,到高级的网抓及类的应用;手册是为方便编程人员查找案例编写的。
对于初级及中级的学员,很想看到VBA的利用价值。也是对自己知识点的整合。我推出的YZ系列工具,可以让这个阶段的学员感受到VBA之强大。坚定自己学习VBA的决心。VBA工具共两个系列,一个是YZ系列,一个是NZ系列。YZ系列比较简单些,实用性强,可以在自己的工作中方方面面都可以利用到,今日给大家介绍的是YZ系列工具之YZ10:VBA_梦幻图像
【分享成果,随喜正能量】有些人的信仰,是挂在墙上的,实际上他对自己都不信。有些人的信仰,是浸入骨子里的,它没有高吭的言语,信誓旦旦的承诺,只有默默的守护。。
YZ10:VBA_梦幻图像
VBA功能确实强大,或者说VBA可以把EXCEL的一些功能发挥的淋漓尽致。这个工具是一个图像的发生器,什么图像呢?就是大名鼎鼎的mandelbrot图像。
我们来简单的说明一下这个图像:曼德勃罗特集是一个几何图形,曾被称为“上帝的指纹”。 这个点集均出自公式:Zn+1=(Zn)^2+C,对于非线性迭代公式Zn+1=(Zn)^2+C,所有使得无限迭代后的结果能保持有限数值的复数z的集合(也称该迭代函数的Julia集)连通的c,构成曼德勃罗集。它是曼德勃罗教授在二十世纪七十年代发现的。只要你计算的点足够多,不管你把图案放大多少倍,都能显示出更加复杂的局部,这些局部既与整体不同,又有某种相似的地方。图案具有无穷无尽的细节和自相似性。
在二维平面上,将所有不属于Mandelbrot集合的点标记为黑色,将所有属于Mandelbrot集合的点按照其发散速度赋予不同的颜色,就可以得到Mandelbrot的经典图像:
本应用中的知识点:① VBA迭代的运算 ②VBA色阶的设置 ③ 设置行列的高度和宽度④将复制后的内容转换为图片。
这个应用的程序文件是:VBA_梦幻图像.xlsm,VBE密码是“123456789”.
一 输入必要的参数
我们打开这个工具,会有下面的界面出现:
我们在上面表中输入自己的设置。
二 图像的形成
我们点击生成图像按钮,界面中给出了两个按钮,这是形成图像的两种方案,效果是一样的,但后者比前者效率会高效。我们看一下两个按钮的输出:
三 反馈测试的结果
我们给出几种测试的结果:
(-1,0,2) 迭代500
(-1.625,0,0.05) 迭代1000
(-1.6755475,0,0.000005) 迭代1000:
以上就是效果的测试,从中可以领略到数学的魅力。
【分享成果,随喜正能量】
- 为了无分别,以上代码不便公开,如需要,可以私信我