xxxxxxxxxx
const cpat = [
"1a535c-4ecdc4-f7fff7-ff6b6b-ffe66d",
"5f0f40-9a031e-fb8b24-e36414-0f4c5c",
"227c9d-17c3b2-ffcb77-fef9ef-fe6d73",
"fffcf2-ccc5b9-403d39-252422-eb5e28",
"0d1b2a-1b263b-415a77-778da9-e0e1dd",
"22577a-38a3a5-57cc99-80ed99-c7f9cc",
"ffbe0b-fb5607-ff006e-8338ec-3a86ff",
"233d4d-fe7f2d-fcca46-a1c181-619b8a",
"#8ecae6-219ebc-126782-023047-ffb703-fd9e02-fb8500"
];
const w = 720;
const pos_num_set = 10;
const pos_num = pos_num_set*pos_num_set;
const scale_x = 1;
const scale_y = 1;
const point_size = 1;
const loop_set = 50;
const loop_point = 20;
function setup() {
createCanvas(w, w);
init();
for(let i=0;i<pos_num;i++){
line_draw(i);
}
}
function init(){
color_pat = random(cpat);
color_pat = color_pat.split('-');
for(let i=0;i<color_pat.length;i++){
color_pat[i] = "#"+color_pat[i];
}
noFill();
colorMode(HSB);
strokeCap(PROJECT);
bg = [hue(random(color_pat)), 5, 10] ;
background(bg);
}
function line_draw(ii){
let rx = random(10);
let ry = random(10);
let size_c = random(0.001, 0.5);
strokeWeight(size_c);
for(let j=0;j<loop_set;j++){
stroke( random(color_pat) + "50");
x = w*0.1 ;
y = w/2 ;
beginShape();
curveVertex(x, y);
for(let k=0; k<=loop_point; k++){
x = w*(0.1 + 0.8/loop_point*k);
y = w/2 + w/3 * sin(TAU/loop_point*k);
let dx = w*0.2 *(noise(3*x, 2*y, rx) -0.5);
let dy = w*0.4 *(noise(3*x, 2*y, ry) -0.5);
x = x + dx ;
y = y + dy ;
curveVertex(x, y);
}
curveVertex(x, y);
endShape();
}
}
//save PNG
function keyPressed() {
save("img_" + month() + day() + hour() + minute() + second() + ".png");
}