xxxxxxxxxx
var pal=[["dodgerblue","#0066cc"], //[["#3657a0","#0D2D79"] "#0D2D79","#031744"
["#009000","#005200"],
["#b40000","#660000"],
["#b47800","#664400"]];
// paletton.com/#uid=7000X0kw0mAnBu3tYrDDDifN1cP
// with adjusted blue
function setup() {
createCanvas(500,500);
//colorMode(HSB, 360, 100, 100);
//hand-tuned:
pal=[["hsl(204,100%,36%)","hsl(204, 100%, 22%)"],
["hsl(120,100%,36%)","hsl(120, 100%, 22%)"],
["hsl(0,100%,36%)","hsl(0, 100%, 22%)"],
["hsl(40,100%,36%)","hsl(40, 100%, 22%)"]];
noStroke();
}
function draw() {
background(0);
//fill(0, 100, 35);
//rect(0,0,100,100);
translate(width / 2, height / 2);
fill(pal[1][0]); //33=168 40=204 35=179
annulus(100, 150, PI / 2);
fill(pal[1][1]);
annulus(150, 200, PI / 2);
rotate(PI / 2);
fill(pal[2][0]);
annulus(100, 150, PI / 2);
fill(pal[2][1]);
annulus(150, 200, PI / 2);
rotate(PI / 2);
fill(pal[3][0]);
annulus(100, 150, PI / 2);
fill(pal[3][1]);
annulus(150, 200, PI / 2);
rotate(PI / 2);
fill(pal[0][0]);
annulus(100, 150, PI / 2);
fill(pal[0][1]);
annulus(150, 200, PI / 2);
}
// jWilliamDunn 20191215
function annulus(inner, outer, angle, segs){
if(segs===undefined)segs=20;
if(segs<5)segs=5;
beginShape();
for(var i=0; i<=segs; i++)
vertex(outer*Math.cos(angle*i/segs), outer*Math.sin(angle*i/segs));
for(i=segs; i>=0; i--)
vertex(inner*Math.cos(angle*i/segs), inner*Math.sin(angle*i/segs));
endShape(CLOSE);
}