xxxxxxxxxx
61
/*
todo
calc wavelength and use it to determine centre and
needed iterations
fun : moving middle slider around fast
()
*/
A = 13; // angle
F = 7; // frequency
R = 200; // resolution
angle=0;
theta = 0.05;
var ci = 0;
function setup() {
createCanvas(400, 400);
AS= createSlider(0, 100, A);
FS= createSlider(0, 100, F);
RS = createSlider(2, 1000, R);
AS.input((e)=> A=AS.value());
FS.input((e)=> F=FS.value());
RS.input((e)=> R=RS.value());
rstbutton = createButton('reset')
rstbutton.mouseReleased(rst);
}
function rst(){
// i like to switch things up
switch (ci) {
case 1:
colorMode(HSB);
background(0,0,100);
break;
case 0:
default:
colorMode(RGB)
background(255,255,255);
}
ci+=1;
if (ci > 1){ci=0}
}
function draw() {
for (var x=0 ; x < R; x+=1){
y = cos(x/F)*A;
push()
ci > 0 ? stroke(x,199,193) : 1;
translate(200,200)
rotate(angle);
point(x,y);
pop();
if (x > 400) {break;} //todo use calc instead of break
}
angle+=theta;
}