Processing分形之一——Wallpaper
之前用C语言实现过一些分形,但是代码比较复杂。而对于天生对绘图友好的Processing,及其方便。
在大自然中分形普遍存在,我们用图形模拟,主要是找到一个贴近的函数。
代码
/**
* Wallpaper
* 微信公众号:维度模态
* 作者:Hewes
*/ size(800, 800); //画布尺寸
background(0); //背景色 //相关参数的设定
//double a = 0.50, b = 2.00, c = 0.00;
//int mag=60;
//double a = 0.4, b = 1, c = 0;
//int mag=100;
double a = 1, b = 4, c = 60;
int mag=1;
//double a = -1, b = -2, c = -3;
//int mag=5;
//double a = -1000, b = 0.1, c = -10;
//int mag=10; double x1=0, y1=0, temp; //涉及变量 for (int i = 0; i < 2550000; i++) {
//壁纸公式:
//xn+1 = yn - sign(xn) | b xn - c |1/2
//yn+1 = a - xn
temp = x1;
x1 = y1 - Math.signum(a * x1) * Math.sqrt(Math.abs(b * x1 - c));
y1 = a - temp; //放大+平移
int m = (int) (x1 * mag + width/2);
int n = (int) (y1 * mag + height/2);
//笔触颜色设置
stroke(255, i/10000, i/10000);
//stroke(255-i/10000,255-i/10000, 0);
point(m, n);
}
调节参数会有看起来完全不同的结果:
double a = 1, b = 4, c = 60;
int mag=1;

double a = –1000, b = 0.1, c = –10;
int mag=10;

double a = 0.4, b = 1, c = 0;
int mag=100;

参考链接:http://iprocessing.cn/2017/08/10/第四期-processing分形之一-wallpaper/
Processing分形之一——Wallpaper的更多相关文章
- SurfaceView 绘制分形图
之前一直做的是应用类,这次抽时间,参考网上资料实践了下SurfaceView.目标是在页面上画一个科赫曲线的分形图. 代码如下: package com.example.fredric.demo02; ...
- OLTP(on-line transaction processing)与OLAP(On-Line Analytical Processing)
OLTP与OLAP的介绍 数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing).联机分析处理OLAP(On-Line Analytical ...
- 新书到手 TRANSACTION PROCESSING:CONCEPTS AND TECHNIQUES
新书到手 TRANSACTION PROCESSING:CONCEPTS AND TECHNIQUES Jim Gray大神的著作 本文版权归作者所有,未经作者同意不得转载.
- Report processing of Microsoft Dynamic AX
Report processing of Microsoft Dynamic AX 版权声明:本文为博主原创文章,未经博主允许不得转载. The implementation of a general ...
- ANNOTATION PROCESSING 101 by Hannes Dorfmann — 10 Jan 2015
原文地址:http://hannesdorfmann.com/annotation-processing/annotationprocessing101 In this blog entry I wo ...
- ORA-01078: failure in processing system parameters & LRM-00109: could not open parameter file
安装了Oracle 12C后,启动数据库的过程中出现如下错误 SQL> startup ORA-01078: failure in processing system parameters LR ...
- 分形之概率学下的green tree
今天做的是分形之随机概率,可以和以前做的那个抛色子的做法非常相似,抛色子是用随机点数控制图形,今天做的树叶图形只是用概率的做法去控制图形而已,做法是如出一辙的: //图形界面 package ...
- Processing基础之绘画
图形 //在(x, y)绘制点 point(x, y); //(x1, y1)到(x2, y2)的一条线 line(x1, y1, x2, y2); rect(x, y, weight, height ...
- 【目录】processing
Processing 小代码 小代码2 小代码3 小代码4 小代码5
随机推荐
- 7.10实习培训日志-Maven 敏捷编程
总结 今天早上主要学习了Maven和Idea的Docker插件,遇到了一些坑,对于Idea的Docker插件,不能下载,然后我去访问Idea插件官网,发现被墙了,只要开个VPN就好.下午主要是张总经理 ...
- linux下 卸载vmtools
注意事项: 1) 安装linux时,一定要安装gcc和kernel-source: 2)光驱使用完毕可使用 umount /mnt/cdrom 卸载掉 3)VMtools 默认安装在 /usr/bin ...
- POJ - 3268 Silver Cow Party SPFA+SLF优化 单源起点终点最短路
Silver Cow Party One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to ...
- iOS内购流程二(添加产品、沙盒账号以及上架流程)
注意:使用了IAP的App必须先配置好协议.税务和银行业务 一.创建一个App应用 1.登录iTunes Store,点击我的App 2.新建一个App(如果App已经创建,直接点击App进入就行了) ...
- 在Sql2005中,向表中插入数据时遇到uniqueidentifier列,如何插入数据?
Sql2005中,提供了uniqueidentifier 数据类型.说白了,就是个GUID,这种类型开发时倒是很有必要的. 今天程序中遇到了这个问题:表里定义了一个uniqueidentifier 列 ...
- 痞子衡嵌入式:微处理器CPU性能测试基准(Dhrystone)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是微处理器CPU性能测试基准Dhrystone. 在嵌入式系统行业用于评价CPU性能指标的标准主要有三种:Dhrystone.MIPS.C ...
- MySQL最佳客户端工具 -- SQLyog 13.1.1.0 安装与注册
一.前言 SQLyog是一个易于使用的.快速而简洁的图形化管理MYSQL数据库的工具,它能够在任何地点有效地管理你的数据库!SQLyog是业界著名的 Webyog 公司出品的一款简洁高效.功能强大的图 ...
- 第一个Three.js程序——加入相机
- Luogu P2522 [HAOI2011]Problem b 莫比乌斯反演
设$f(d)=\sum_{i=1}^N\sum_{j=1}^M[gcd(i,j)==d],\\F(n)=\sum_{n|d}f(d)=\lfloor \frac{N}{n} \rfloor \lflo ...
- REST API -- 缓存和并发
REST API -- 缓存和并发 https://www.cnblogs.com/cgzl/p/9165388.html 本文所需的一些预备知识可以看这里: http://www.cnblogs.c ...