xxxxxxxxxx
73
var x = 0.1;
var y = 0.1;
var z = 0.1;
var sigma = 10;
var rho = 28;
var beta = 8/3;
var points = [];
var clrs = [];
var clr = 255;
var up = false;
var gate = false;
function setup() {
createCanvas(windowWidth, windowHeight, WEBGL);
background(0);
}
function mousePressed(){
background(0);
rotate(1);
//camera(10,0,10);
drawLorenz();
}
function drawLorenz(){
scale(3);
//stroke(255);
noFill();
var hue = 150;
//beginShape();
for(var i = 0; i < points.length; i++){
let v = points[i];
let w = points[i+1];
stroke(255,clrs[i],0);
if(points.length > 2 && v !== points[points.length-1]){
line(v.x,v.y,v.z,w.x,w.y,w.z);
}
//vertex(v.x,v.y,v.z);
}
//endShape();
}
function draw() {
if(!gate){
var dt = 0.001;
var dx = (sigma * (y - x)) * dt;
var dy = (x * (rho - z) - y) * dt;
var dz = (x * y - beta * z) * dt;
x = x + dx;
y = y + dy;
z = z + dz;
points.push(createVector(x,y,z));
if(up){
clr += 0.8;
} else{
clr -= 0.8;
}
append(clrs,clr);
if(clr > 255){
up = false;
} else if(clr < 50){
up = true;
}
}
}