混沌分形之马丁(Martin)迭代
我不记得从什么地方看到的这种分形图形生成方式,再到网上找竟然一时没查到任何相关资料。没关系,总之这种图形也很漂亮多变,并且其算法比较简单。只是我最后生成的图像有点瘆人,密集恐惧症患者慎入。
相关代码如下:
class MartinIterate : public FractalEquation
{
public:
MartinIterate()
{
m_StartX = 1.0f;
m_StartY = 1.0f;
m_StartZ = 0.0f; m_ParamA = 0.68f;
m_ParamB = 0.75f;
m_ParamC = 0.83f;
} void IterateValue(float x, float y, float z, float& outX, float& outY, float& outZ) const
{
if (x > FLT_EPSILON)
{
outX = y - sqrtf(fabsf(m_ParamB*x - m_ParamC));
}
else if (x < -FLT_EPSILON)
{
outX = y + sqrtf(fabsf(m_ParamB*x - m_ParamC));
}
else
{
outX = y;
} outY = m_ParamA - x; outZ = z;
} bool IsValidParamA() const {return true;}
bool IsValidParamB() const {return true;}
bool IsValidParamC() const {return true;} bool Is3D() const {return false;}
};
关于基类FractalEquation的定义及相关软件见:混沌与分形
点集图形:



以此算法生成的图像如下:



我想这几幅图有密集恐惧症的人一定看不下去,而我看到它时总会想到一种东西叫“莲蓬乳”。
混沌分形之马丁(Martin)迭代的更多相关文章
- 混沌分形之逻辑斯蒂(Logistic)映射系统
前几天,有个同事看到我生成的一幅逻辑斯蒂分岔图像后,问我:“这是咪咪吗?”我回答:“淫者见淫.”好吧,这里将生成几种分岔映射图形,包括逻辑斯蒂映射系统,正弦映射系统和曼德勃罗映射系统.实际上这几种图形 ...
- 混沌分形之迭代函数系统(IFS)
IFS是分形的重要分支.它是分形图像处理中最富生命力而且最具有广阔应用前景的领域之一.这一工作最早可以追溯到Hutchinson于1981年对自相似集的研究.美国科学家M.F.Barnsley于198 ...
- 混沌分形之谢尔宾斯基(Sierpinski)
本文以使用混沌方法生成若干种谢尔宾斯基相关的分形图形. (1)谢尔宾斯基三角形 给三角形的3个顶点,和一个当前点,然后以以下的方式进行迭代处理: a.随机选择三角形的某一个顶点,计算出它与当前点的中点 ...
- 混沌分形之朱利亚集(JuliaSet)
朱利亚集合是一个在复平面上形成分形的点的集合.以法国数学家加斯顿·朱利亚(Gaston Julia)的名字命名.我想任何一个有关分形的资料都不会放过曼德勃罗集和朱利亚集.这里将以点集的方式生成出朱利亚 ...
- 第一章-第五题(你所在的学校有计算机科学专业和软件工程专业么?相关专业的教学计划和毕业出路有什么不同?阅读有关软件工程和计算机科学的区别的文章,谈谈你的看法。)--By 侯伟婷
我所在的本科学校和研究生学校都有计算机科学专业和软件工程专业.具体的教学计划无从得到,所以此情况无从对比,但是我从本科教务处网站找到了计算机科学专业和软件工程专业有关专业方面的课程,现列表如下. 表格 ...
- sierpinski地毯(II)
今天又是因为可以用py而高兴的一天. 继续咱的sierpinski地毯计划. 二,随机算法 在二十年前,磁盘容量以MB还是KB计的时候,分形解决计图的问题确实有很大的优势.存至多十来个数就好了.我要在 ...
- 马丁 福勒 Martin Fowler 关于依赖注入和反转控制的区别
马丁 福勒 Martin Fowler 关于依赖注入和反转控制的区别 http://martinfowler.com/articles/injection.html 中文翻译:http://files ...
- 首席科学家马丁•福勒(Martin Fowler)
现任思特沃克公司首席科学家的马丁·福勒先生是当今世界软件开发领域最具影响力的五位大师之一.作为一位敏捷软件开发方法的早期开拓者,福勒先生对IT 业的影响是不可估量的. 思特沃克公司是一家跨国专业IT ...
- The Programmer's Oath程序员的誓言----鲍勃.马丁大叔(Bob Martin)
In order to defend and preserve the honor of the profession of computer programmers, I Promise that, ...
随机推荐
- 【BZOJ 3620】 3620: 似乎在梦中见过的样子 (KMP)
3620: 似乎在梦中见过的样子 Time Limit: 15 Sec Memory Limit: 128 MBSubmit: 755 Solved: 445 Description “Madok ...
- BZOJ4161 常系数齐次线性递推
问了数竞的毛毛搞了一番也没太明白,好在代码蛮好写先记下吧. #include<bits/stdc++.h> using namespace std; ,mod=1e9+; int n,k, ...
- BZOJ.2456.mode(绝对众数)
题目链接 \(Description\) 限制空间(只能保留两个变量),求给定n个数中出现次数超过\(\frac{n}{2}\)的数. \(Solution\) 维护两个变量,\(now\)和\(cn ...
- UVALive 6911 Double Swords 树状数组
Double Swords 题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8 ...
- Educational Codeforces Round 14 C. Exponential notation 数字转科学计数法
C. Exponential notation 题目连接: http://www.codeforces.com/contest/691/problem/C Description You are gi ...
- js识别用户设备是移动端手机时跳转到手机网站
一.识别到用户的设备是手机等移动端设备时跳转到移动端网站 var mobileAgent = new Array("iphone", "ipod", " ...
- STM32 Timer : Base Timer, Input Capture, PWM, Output Compare
http://www.cs.indiana.edu/~geobrown/book.pdf An example of a basic timer is illustrated in Figure 10 ...
- ubuntu安装LDAP
参考文献: https://help.ubuntu.com/12.04/serverguide/openldap-server.html(最主要的) http://www.linuxidc.com/L ...
- [Go] panic 和 recover
通常情况下,函数向其调用方报告错误的方式都是返回一个 error 类型的值.但是,当遇到致命错误的时候,很可能会使程序无法继续运行.这时,上述错误处理方式就太不适合了,Go 推荐通过调用 panic ...
- mysql 阿里内核人员
丁奇 http://dinglin.javaeye.com/ 鸣嵩 @曹伟-鸣嵩 (新浪微博) 彭立勋 http://www.penglixun.com/ 皓庭 http://wqtn22.iteye ...