Skip to content

Tinbane is an artist in Oregon, USA.

Learn more about Tinbane and explore projects here.

To contact Tinbane, write tinbane@tinbane.com. 

 
let patternSwitch = false if (random(2) >= 1) { patternSwitch = true } let selectedEdge = edge let edgeSelector = random(8); if (edgeSelector=1 && edgeSelector < 2) { selectedEdge = edge2 } else if (edgeSelector>=2 && edgeSelector < 3) { selectedEdge = edge3 } else if (edgeSelector>=3 && edgeSelector < 4) { selectedEdge = edge4 } else if (edgeSelector>=4 && edgeSelector < 5) { selectedEdge = edge5 } else if (edgeSelector>=5 && edgeSelector < 6) { selectedEdge = edge6 } else if (edgeSelector>=6 && edgeSelector < 7) { selectedEdge = edge7 } else if (edgeSelector>=7 && edgeSelector = 1) { patternSwitch2 = true } let selectedEdge2 = edge let edgeSelector2 = random(8); if (edgeSelector2=1 && edgeSelector2 < 2) { selectedEdge2 = edge2 } else if (edgeSelector2>=2 && edgeSelector2 < 3) { selectedEdge2 = edge3 } else if (edgeSelector2>=3 && edgeSelector2 < 4) { selectedEdge2 = edge4 } else if (edgeSelector2>=4 && edgeSelector2 < 5) { selectedEdge2 = edge5 } else if (edgeSelector2>=5 && edgeSelector2 < 6) { selectedEdge2 = edge6 } else if (edgeSelector2>=6 && edgeSelector2 < 7) { selectedEdge2 = edge7 } else if (edgeSelector2>=7 && edgeSelector2 = 1) { patternSwitch3 = true } let selectedEdge3 = edge let edgeSelector3 = random(8); if (edgeSelector3=1 && edgeSelector3 < 2) { selectedEdge3 = edge2 } else if (edgeSelector3>=2 && edgeSelector3 < 3) { selectedEdge3 = edge3 } else if (edgeSelector3>=3 && edgeSelector3 < 4) { selectedEdge3 = edge4 } else if (edgeSelector3>=4 && edgeSelector3 < 5) { selectedEdge3 = edge5 } else if (edgeSelector3>=5 && edgeSelector3 < 6) { selectedEdge3 = edge6 } else if (edgeSelector3>=6 && edgeSelector3 < 7) { selectedEdge3 = edge7 } else if (edgeSelector3>=7 && edgeSelector3 = 1) { patternSwitch4 = true } let selectedEdge4 = edge let edgeSelector4 = random(8); if (edgeSelector4=1 && edgeSelector4 < 2) { selectedEdge4 = edge2 } else if (edgeSelector4>=2 && edgeSelector4 < 3) { selectedEdge4 = edge3 } else if (edgeSelector4>=3 && edgeSelector4 < 4) { selectedEdge4 = edge4 } else if (edgeSelector4>=4 && edgeSelector4 < 5) { selectedEdge4 = edge5 } else if (edgeSelector4>=5 && edgeSelector4 < 6) { selectedEdge4 = edge6 } else if (edgeSelector4>=6 && edgeSelector4 < 7) { selectedEdge4 = edge7 } else if (edgeSelector4>=7 && edgeSelector4 = 1) { patternSwitch5 = true } let selectedEdge5 = edge let edgeSelector5 = random(8); if (edgeSelector5=1 && edgeSelector5 < 2) { selectedEdge5 = edge2 } else if (edgeSelector5>=2 && edgeSelector5 < 3) { selectedEdge5 = edge3 } else if (edgeSelector5>=3 && edgeSelector5 < 4) { selectedEdge5 = edge4 } else if (edgeSelector5>=4 && edgeSelector5 < 5) { selectedEdge5 = edge5 } else if (edgeSelector5>=5 && edgeSelector5 < 6) { selectedEdge5 = edge6 } else if (edgeSelector5>=6 && edgeSelector5 < 7) { selectedEdge5 = edge7 } else if (edgeSelector5>=7 && edgeSelector5 = 1) { patternSwitch6 = true } let selectedEdge6 = edge let edgeSelector6 = random(8); if (edgeSelector6=1 && edgeSelector6 < 2) { selectedEdge6 = edge2 } else if (edgeSelector6>=2 && edgeSelector6 < 3) { selectedEdge6 = edge3 } else if (edgeSelector6>=3 && edgeSelector6 < 4) { selectedEdge6 = edge4 } else if (edgeSelector6>=4 && edgeSelector6 < 5) { selectedEdge6 = edge5 } else if (edgeSelector6>=5 && edgeSelector6 < 6) { selectedEdge6 = edge6 } else if (edgeSelector6>=6 && edgeSelector6 < 7) { selectedEdge6 = edge7 } else if (edgeSelector6>=7 && edgeSelector6 = 20.317 || convertedHour = 3 && convertedHour < 21) { // sunPosition = daytime; // } else { // sunPosition = night; // } print("sun position", sunPosition) //sky dim if (convertedHour >= 3 && convertedHour < 4) { skyBrightness = 20; } else if (convertedHour >= 4 && convertedHour < 5.5) { skyBrightness = 30; } else if (convertedHour >= 5.5 && convertedHour < 6) { skyBrightness = 45; } else if (convertedHour >= 6 && convertedHour < 7) { skyBrightness = 60; } else if (convertedHour >= 7 && convertedHour < 10) { skyBrightness = 75; } else if (convertedHour >= 10 && convertedHour < 12) { skyBrightness = 90; } else if (convertedHour >= 12 && convertedHour < 15) { skyBrightness = 90; } else if (convertedHour >= 15 && convertedHour < 17) { skyBrightness = 80; } else if (convertedHour >= 17 && convertedHour < 19) { skyBrightness = 75; } else if (convertedHour >= 19 && convertedHour < 20) { skyBrightness = 60; } else if (convertedHour >= 20 && convertedHour < 21.5) { skyBrightness = 45; } else if (convertedHour >= 21.5 && convertedHour < 22.5) { skyBrightness = 20; } else { skyBrightness = 10; } //sun fade if (convertedHour >= 3 && convertedHour < 4) { fade = tod*0.025; } else if (convertedHour >= 4 && convertedHour < 5.5) { fade = tod*0.04; } else if (convertedHour >= 5.5 && convertedHour < 6) { fade = tod*0.05; } else if (convertedHour >= 6 && convertedHour < 7) { fade = tod*0.065; } else if (convertedHour >= 7 && convertedHour < 10) { fade = tod * 0.065; } else if (convertedHour >= 10 && convertedHour < 12) { fade = tod * 0.08; } else if (convertedHour >= 12 && convertedHour < 15) { fade = tod * 0.085; } else if (convertedHour >= 15 && convertedHour < 17) { fade = tod * 0.04; } else if (convertedHour >= 17 && convertedHour < 19) { fade = tod * 0.03; } else if (convertedHour >= 19 && convertedHour < 20) { fade = tod * 0.01; } else if (convertedHour >= 20 && convertedHour < 21.5) { fade = tod * 0.0055; } else { fade = 0 } const skyColors = [0, 220, 330, 140, 180, 260]; const randomSkyColors = Math.floor(Math.random() * skyColors.length); // console.log(randomSkyColors, skyColors[randomSkyColors]); const pillarColors = [0, 20, 25, 140, 180, 40, 330, 190, 320, 345]; const randomPillarColors = Math.floor(Math.random() * pillarColors.length); // console.log(randomPillarColors, pillarColors[randomPillarColors]); const saturationer = [30, 40, 50, 60, 70, 80, 90]; const randomSaturation = Math.floor(Math.random() * saturationer.length); // console.log(randomSaturation, saturationer[randomSaturation]); const brightnesser = [90, 92, 94, 96, 98, 100, 0]; const randomBrightness = Math.floor(Math.random() * brightnesser.length); // console.log(randomSaturation, brightnesser[randomBrightness]); if (nightSky == false){ background(220, 75, 80); } else if (nightSky == true){ background(44, 22, 20); } if (nightSky == false){ //sun //sun ring (can move this around slightly as a parameter using the width/height modifiers on the ellipse) stroke(0, 0, 100, 90) strokeWeight(1) noFill(); ellipse(sunPosition, height*0.175, width*0.3); noStroke() fill(50, 90, 90, fade + fade * 0.2); ellipse(sunPosition, height*0.175, width*0.3); noStroke(); fill(25, 90, 90, fade + fade * 0.1); ellipse(sunPosition, height*0.175, width*0.2); noStroke(); fill(0, 90, 90, fade + fade * 0.05); ellipse(sunPosition, height*0.175, width*0.1) //moon } else if (nightSky == true){ var a = 180 let borderer = max(width, height) * random(0.5) // for (var x = (0+borderer); x
let patternSwitch = false if (random(2) >= 1) { patternSwitch = true } let selectedEdge = edge let edgeSelector = random(8); if (edgeSelector<1) { selectedEdge = edge } else if (edgeSelector>=1 && edgeSelector < 2) { selectedEdge = edge2 } else if (edgeSelector>=2 && edgeSelector < 3) { selectedEdge = edge3 } else if (edgeSelector>=3 && edgeSelector < 4) { selectedEdge = edge4 } else if (edgeSelector>=4 && edgeSelector < 5) { selectedEdge = edge5 } else if (edgeSelector>=5 && edgeSelector < 6) { selectedEdge = edge6 } else if (edgeSelector>=6 && edgeSelector < 7) { selectedEdge = edge7 } else if (edgeSelector>=7 && edgeSelector <= 8) { selectedEdge = edge8 } let patternSwitch2 = false if (random(2) >= 1) { patternSwitch2 = true } let selectedEdge2 = edge let edgeSelector2 = random(8); if (edgeSelector2<1) { selectedEdge2 = edge } else if (edgeSelector2>=1 && edgeSelector2 < 2) { selectedEdge2 = edge2 } else if (edgeSelector2>=2 && edgeSelector2 < 3) { selectedEdge2 = edge3 } else if (edgeSelector2>=3 && edgeSelector2 < 4) { selectedEdge2 = edge4 } else if (edgeSelector2>=4 && edgeSelector2 < 5) { selectedEdge2 = edge5 } else if (edgeSelector2>=5 && edgeSelector2 < 6) { selectedEdge2 = edge6 } else if (edgeSelector2>=6 && edgeSelector2 < 7) { selectedEdge2 = edge7 } else if (edgeSelector2>=7 && edgeSelector2 <= 8) { selectedEdge2 = edge8 } let patternSwitch3 = false if (random(2) >= 1) { patternSwitch3 = true } let selectedEdge3 = edge let edgeSelector3 = random(8); if (edgeSelector3<1) { selectedEdge3 = edge } else if (edgeSelector3>=1 && edgeSelector3 < 2) { selectedEdge3 = edge2 } else if (edgeSelector3>=2 && edgeSelector3 < 3) { selectedEdge3 = edge3 } else if (edgeSelector3>=3 && edgeSelector3 < 4) { selectedEdge3 = edge4 } else if (edgeSelector3>=4 && edgeSelector3 < 5) { selectedEdge3 = edge5 } else if (edgeSelector3>=5 && edgeSelector3 < 6) { selectedEdge3 = edge6 } else if (edgeSelector3>=6 && edgeSelector3 < 7) { selectedEdge3 = edge7 } else if (edgeSelector3>=7 && edgeSelector3 <= 8) { selectedEdge3 = edge8 } let patternSwitch4 = false if (random(2) >= 1) { patternSwitch4 = true } let selectedEdge4 = edge let edgeSelector4 = random(8); if (edgeSelector4<1) { selectedEdge4 = edge } else if (edgeSelector4>=1 && edgeSelector4 < 2) { selectedEdge4 = edge2 } else if (edgeSelector4>=2 && edgeSelector4 < 3) { selectedEdge4 = edge3 } else if (edgeSelector4>=3 && edgeSelector4 < 4) { selectedEdge4 = edge4 } else if (edgeSelector4>=4 && edgeSelector4 < 5) { selectedEdge4 = edge5 } else if (edgeSelector4>=5 && edgeSelector4 < 6) { selectedEdge4 = edge6 } else if (edgeSelector4>=6 && edgeSelector4 < 7) { selectedEdge4 = edge7 } else if (edgeSelector4>=7 && edgeSelector4 <= 8) { selectedEdge4 = edge8 } let patternSwitch5 = false if (random(2) >= 1) { patternSwitch5 = true } let selectedEdge5 = edge let edgeSelector5 = random(8); if (edgeSelector5<1) { selectedEdge5 = edge } else if (edgeSelector5>=1 && edgeSelector5 < 2) { selectedEdge5 = edge2 } else if (edgeSelector5>=2 && edgeSelector5 < 3) { selectedEdge5 = edge3 } else if (edgeSelector5>=3 && edgeSelector5 < 4) { selectedEdge5 = edge4 } else if (edgeSelector5>=4 && edgeSelector5 < 5) { selectedEdge5 = edge5 } else if (edgeSelector5>=5 && edgeSelector5 < 6) { selectedEdge5 = edge6 } else if (edgeSelector5>=6 && edgeSelector5 < 7) { selectedEdge5 = edge7 } else if (edgeSelector5>=7 && edgeSelector5 <= 8) { selectedEdge5 = edge8 } let patternSwitch6 = false if (random(2) >= 1) { patternSwitch6 = true } let selectedEdge6 = edge let edgeSelector6 = random(8); if (edgeSelector6<1) { selectedEdge6 = edge } else if (edgeSelector6>=1 && edgeSelector6 < 2) { selectedEdge6 = edge2 } else if (edgeSelector6>=2 && edgeSelector6 < 3) { selectedEdge6 = edge3 } else if (edgeSelector6>=3 && edgeSelector6 < 4) { selectedEdge6 = edge4 } else if (edgeSelector6>=4 && edgeSelector6 < 5) { selectedEdge6 = edge5 } else if (edgeSelector6>=5 && edgeSelector6 < 6) { selectedEdge6 = edge6 } else if (edgeSelector6>=6 && edgeSelector6 < 7) { selectedEdge6 = edge7 } else if (edgeSelector6>=7 && edgeSelector6 <= 8) { selectedEdge6 = edge8 } let widthDivider = windowWidth/24 var convertedHour = hour() var convertedMinute = minute()/59 var convertedSecond = second()/3599 var tod = (hour()+convertedMinute + convertedSecond); var daytime = widthDivider * tod // var todWidth = tod/widthDivider var sunPosition = daytime var night = 0-widthDivider*2 var nightSky = false var skyBrightness = 90 var fade = 0 var moonNight = daytime*0.3 var moonPosition = moonNight let ecliptic = 0 print("time of day ", tod); if (convertedHour >= 20.317 || convertedHour <= 5.95) { nightSky = true print("nighttime"); } else { nightSky = false print("daytime") } if (nightSky == true) { skyBrightness = 0 } if (nightSky == true) { moonPosition = map(tod, 0, 18, 0, width) ecliptic = map(tod, 0, 18, height*0.35, height * 0.175) } else if (nightSky == false) { sunPosition = map(tod, 0, 24, 0, width) } // if (convertedHour >= 3 && convertedHour < 21) { // sunPosition = daytime; // } else { // sunPosition = night; // } print("sun position", sunPosition) //sky dim if (convertedHour >= 3 && convertedHour < 4) { skyBrightness = 20; } else if (convertedHour >= 4 && convertedHour < 5.5) { skyBrightness = 30; } else if (convertedHour >= 5.5 && convertedHour < 6) { skyBrightness = 45; } else if (convertedHour >= 6 && convertedHour < 7) { skyBrightness = 60; } else if (convertedHour >= 7 && convertedHour < 10) { skyBrightness = 75; } else if (convertedHour >= 10 && convertedHour < 12) { skyBrightness = 90; } else if (convertedHour >= 12 && convertedHour < 15) { skyBrightness = 90; } else if (convertedHour >= 15 && convertedHour < 17) { skyBrightness = 80; } else if (convertedHour >= 17 && convertedHour < 19) { skyBrightness = 75; } else if (convertedHour >= 19 && convertedHour < 20) { skyBrightness = 60; } else if (convertedHour >= 20 && convertedHour < 21.5) { skyBrightness = 45; } else if (convertedHour >= 21.5 && convertedHour < 22.5) { skyBrightness = 20; } else { skyBrightness = 10; } //sun fade if (convertedHour >= 3 && convertedHour < 4) { fade = tod*0.025; } else if (convertedHour >= 4 && convertedHour < 5.5) { fade = tod*0.04; } else if (convertedHour >= 5.5 && convertedHour < 6) { fade = tod*0.05; } else if (convertedHour >= 6 && convertedHour < 7) { fade = tod*0.065; } else if (convertedHour >= 7 && convertedHour < 10) { fade = tod * 0.065; } else if (convertedHour >= 10 && convertedHour < 12) { fade = tod * 0.08; } else if (convertedHour >= 12 && convertedHour < 15) { fade = tod * 0.085; } else if (convertedHour >= 15 && convertedHour < 17) { fade = tod * 0.04; } else if (convertedHour >= 17 && convertedHour < 19) { fade = tod * 0.03; } else if (convertedHour >= 19 && convertedHour < 20) { fade = tod * 0.01; } else if (convertedHour >= 20 && convertedHour < 21.5) { fade = tod * 0.0055; } else { fade = 0 } const skyColors = [0, 220, 330, 140, 180, 260]; const randomSkyColors = Math.floor(Math.random() * skyColors.length); // console.log(randomSkyColors, skyColors[randomSkyColors]); const pillarColors = [0, 20, 25, 140, 180, 40, 330, 190, 320, 345]; const randomPillarColors = Math.floor(Math.random() * pillarColors.length); // console.log(randomPillarColors, pillarColors[randomPillarColors]); const saturationer = [30, 40, 50, 60, 70, 80, 90]; const randomSaturation = Math.floor(Math.random() * saturationer.length); // console.log(randomSaturation, saturationer[randomSaturation]); const brightnesser = [90, 92, 94, 96, 98, 100, 0]; const randomBrightness = Math.floor(Math.random() * brightnesser.length); // console.log(randomSaturation, brightnesser[randomBrightness]); if (nightSky == false){ background(220, 75, 80); } else if (nightSky == true){ background(44, 22, 20); } if (nightSky == false){ //sun //sun ring (can move this around slightly as a parameter using the width/height modifiers on the ellipse) stroke(0, 0, 100, 90) strokeWeight(1) noFill(); ellipse(sunPosition, height*0.175, width*0.3); noStroke() fill(50, 90, 90, fade + fade * 0.2); ellipse(sunPosition, height*0.175, width*0.3); noStroke(); fill(25, 90, 90, fade + fade * 0.1); ellipse(sunPosition, height*0.175, width*0.2); noStroke(); fill(0, 90, 90, fade + fade * 0.05); ellipse(sunPosition, height*0.175, width*0.1) //moon } else if (nightSky == true){ var a = 180 let borderer = max(width, height) * random(0.5) // for (var x = (0+borderer); x<=(width-borderer); x += 26) { // for(let i=0;i<1000;i++){ // stroke(40, 45, 90, 0.8) // strokeWeight(random(5)); // fill(40, 45, 90, 0.1) // ellipse(moonNight, height*0.25, (width*0.2%(i/random(2*i)))); // fill(20, 0, a/2, 1/6) // ellipse(moonNight+random(width*-0.03,width*0.03), height*0.25+random(height*-0.03,height*0.03), a%(i/random(2))); // fill(0, 0, 90, 0.2) // ellipse(moonNight, height*0.25+random(height*-0.03,height*0.03), (width*0.1%(2*i/random(2*i)))); // } // } fill(50, 60, 90, 1); ellipse(moonPosition, ecliptic, width*0.25); fill(45, 60, 90, 0.6); ellipse(moonPosition, ecliptic, width*0.275); fill(40, 60, 90, 0.4); ellipse(moonPosition, ecliptic, width*0.3) } else if (paletteChoice <= 6) { //delphi push() let circlePlacementX = [] let circlePlacementY = [] // circles if (nightSky == false){ background(39, 11, 89); fill(10, 93, 64); } else if (nightSky == true){ background(44, 22, 20); fill(random(40), random(70,90), random(70,90)); } for (let x = 0+(width*0.2); x <= width-(width*0.199); x += (width * 0.2)) { circlePlacementX.push(x) for (let y = 0+(width*0.2); y <= height-(width*0.199); y += (width*0.2)) { stroke(0); strokeWeight(random(5)); ellipse(x, y, width*0.18);

Horizons / 2021

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Tinbane

Selected Work & Sketches
let r = width * PI let angle = 3 let $ = cos(angle) * r; let $$ = sin(angle) * r; let borderer = max(width, height) * random(0.5) let colorChoice = random(360) let stroker = random(2, 4); let alphazer = 0.4 var heighter = windowHeight var widther = windowWidth/random(50) var a = random(PI*20,PI*60) for (var x = (0+borderer); x
let r = width * PI let angle = 3 let $ = cos(angle) * r; let $$ = sin(angle) * r; let borderer = max(width, height) * random(0.5) let colorChoice = random(360) let stroker = random(2, 4); let alphazer = 0.4 var heighter = windowHeight var widther = windowWidth/random(50) var a = random(PI*20,PI*60) for (var x = (0+borderer); x<=(width-borderer); x += random(1.5)) { for (var y = (0+borderer); y <= (height-borderer); y+= random(1.5)) { strokeWeight(random(0.5)); stroke(23, 89, 81,alphazer) line(x+a, y+a, x+a, y%a); line(x+a*a%a, y+a, x-a*a%a, y-a); stroke(51, 100, 100,alphazer) // line(x+a, y+a, x+a, y%a); // line(x+a*a%a, y+a, x-a*a%a, y-a); // strokeWeight(0.1); stroke(347, 95, 75,alphazer) line(x+a, y+a, x+a, y+PI*a%a); line(x+random*PI/a, y+a, x+a, y+a*a%a); // strokeWeight(random(2)); stroke(217, 100, 41,alphazer) // line(x+a, y+a, x+a, y%a); // line(x+a*a%a, y+a, x-a*a%a, y-a); } } noLoop()

Phoenix Airport #7 / November 2022

var shapes = []; function setup() { createCanvas(4000, 4000); colorMode(HSB); rectMode(CENTER); background(220, 70, 100) } function draw(){ push() let r = width * PI let angle = 3 let $ = cos(angle) * r; let $$ = sin(angle) * r; let borderer = max(width, height) * 0.18 let colorChoice = random(360) let stroker = random(2, 4); let alphazer = 1 var heighter = windowHeight // var widther = windowWidth/random(50) //windowWidth/random(PI*width*0.0025,PI*width*0.005) var randWidther = 490.81495879588314 var a = 200.68135899167594 //a 20.68135899167594 //randWidther 9.81495879588314 //random(TWO_PI*width*0.25,TWO_PI*width*0.35) for (var x = (0+borderer); x<=(width-borderer); x += randWidther) { for (var y = (0+borderer); y <= (height-borderer); y+= 1) { strokeWeight(1); stroke(46, 97, 97,alphazer) // line(x+a, y+a, x+a, y%a); //good line line(x, y+a, x+a*a%a, y-a);
const skyColors = [0, 220, 330, 140, 180, 260]; const randomSkyColors = Math.floor(Math.random() * skyColors.length); console.log(randomSkyColors, skyColors[randomSkyColors]); const pillarColors = [0, 25, 50, 140, 180, 220, 260, 290, 320, 345]; const randomPillarColors = Math.floor(Math.random() * pillarColors.length); console.log(randomPillarColors, pillarColors[randomPillarColors]); const saturationer = [30, 40, 50, 60, 70, 80, 90]; const randomSaturation = Math.floor(Math.random() * saturationer.length); console.log(randomSaturation, saturationer[randomSaturation]); const brightnesser = [90, 92, 94, 96, 98, 100, 0]; const randomBrightness = Math.floor(Math.random() * brightnesser.length); console.log(randomSaturation, brightnesser[randomBrightness]); background(skyColors[randomSkyColors],80,skyBrightness); if (sunPosition == daytime){ fill(40, 10, 90); } else if (sunPosition == night){ fill(40, 10, 30); } //pillars push() // noStroke(); // //outer pillar row // rect(width*0.7, height*0.3, width*0.33, height*0.65, width*0.00, width*0.000, width*0.000, width*0.000); // rect(width*0.5, height*0.4, width*0.33, height*0.55, width*0.00, width*0.000, width*0.000, width*0.000) // rect(width*0.3, height*0.5, width*0.33, height*0.45, width*0.00, width*0.000, width*0.000, width*0.000) // if (sunPosition == daytime){ // fill(pillarColors[randomPillarColors], 30, 90); // } else if (sunPosition == night){ // fill(pillarColors[randomPillarColors], 10, 50); // } // //inner pillar row one // rect(width*0.75, height*0.35, width*0.125, height*0.55); // if (sunPosition == daytime){ // fill(pillarColors[randomPillarColors+1], 30, 90); // } else if (sunPosition == night){ // fill(pillarColors[randomPillarColors+1], 10, 50); // } // rect(width*0.55, height*0.45, width*0.125, height*0.45); // if (sunPosition == daytime){ // fill(pillarColors[randomPillarColors+2], 30, 90); // } else if (sunPosition == night){ // fill(pillarColors[randomPillarColors+2], 10, 50); // }
const skyColors = [0, 220, 330, 140, 180, 260]; const randomSkyColors = Math.floor(Math.random() * skyColors.length); console.log(randomSkyColors, skyColors[randomSkyColors]); const pillarColors = [0, 25, 50, 140, 180, 220, 260, 290, 320, 345]; const randomPillarColors = Math.floor(Math.random() * pillarColors.length); console.log(randomPillarColors, pillarColors[randomPillarColors]); const saturationer = [30, 40, 50, 60, 70, 80, 90]; const randomSaturation = Math.floor(Math.random() * saturationer.length); console.log(randomSaturation, saturationer[randomSaturation]); const brightnesser = [90, 92, 94, 96, 98, 100, 0]; const randomBrightness = Math.floor(Math.random() * brightnesser.length); console.log(randomSaturation, brightnesser[randomBrightness]); background(skyColors[randomSkyColors],80,skyBrightness); if (sunPosition == daytime){ fill(40, 10, 90); } else if (sunPosition == night){ fill(40, 10, 30); } //pillars push() // noStroke(); // //outer pillar row // rect(width*0.7, height*0.3, width*0.33, height*0.65, width*0.00, width*0.000, width*0.000, width*0.000); // rect(width*0.5, height*0.4, width*0.33, height*0.55, width*0.00, width*0.000, width*0.000, width*0.000) // rect(width*0.3, height*0.5, width*0.33, height*0.45, width*0.00, width*0.000, width*0.000, width*0.000) // if (sunPosition == daytime){ // fill(pillarColors[randomPillarColors], 30, 90); // } else if (sunPosition == night){ // fill(pillarColors[randomPillarColors], 10, 50); // } // //inner pillar row one // rect(width*0.75, height*0.35, width*0.125, height*0.55); // if (sunPosition == daytime){ // fill(pillarColors[randomPillarColors+1], 30, 90); // } else if (sunPosition == night){ // fill(pillarColors[randomPillarColors+1], 10, 50); // } // rect(width*0.55, height*0.45, width*0.125, height*0.45); // if (sunPosition == daytime){ // fill(pillarColors[randomPillarColors+2], 30, 90); // } else if (sunPosition == night){ // fill(pillarColors[randomPillarColors+2], 10, 50); // }

Pegboard City / December 2022

let r = width * PI let angle = 3 let $ = cos(angle) * r; let $$ = sin(angle) * r; let borderer = max(width, height) * 0.2 let colorChoice = 0 let colorChoice2 = 220 let stroker = random(2, 4); let alphazer = 0.4 strokeWeight(0.5); var heighter = windowHeight var inc = 0.001 var widther = windowWidth/random(50) var randWidther = max(random(random(widther)), 1) var a = 85.19806008119214 for (var x = (0+borderer); x
let r = width * PI let angle = 3 let $ = cos(angle) * r; let $$ = sin(angle) * r; let borderer = max(width, height) * 0.2 let colorChoice = 0 let colorChoice2 = 220 let stroker = random(2, 4); let alphazer = 0.4 strokeWeight(0.5); var heighter = windowHeight var inc = 0.001 var widther = windowWidth/random(50) var randWidther = max(random(random(widther)), 1) var a = 85.19806008119214 for (var x = (0+borderer); x<=(width-borderer); x += PI) { for (var y = (0+borderer); y <= (height-borderer); y+= PI*PI/3) { strokeWeight(1) stroke(300, a, a,alphazer/inc) //good line line((x+a)+width*1.2, 0.6*y+a, x+1.5*a, 0.5*y-a); strokeWeight(2) stroke(0, a, a,alphazer/inc) //good line line((x+a)+width, 0.9*y+a, x-a, 0.7*y-a); strokeWeight(4) stroke(200, a, a,alphazer/inc) // //good line line((x+1.5*a)+width*0.6, 1.2*y+a, x-1.5*a, 1.2*y-a); strokeWeight(6) stroke(40, a, a,alphazer/inc) // //good line line((x+x*0.5+2.2*a)+width*0.2, 1.8*y+a, x-3.2*a, 1.8*y-a); //stroke(colorChoice2+inc, a, a+inc,alphazer) strokeWeight(8) stroke(colorChoice2, a, a,alphazer)

A Sense of Control / January 2023

var inc = 1.7; var scaleMaker = 222; var warpDrive = 77 var cols; var rows; var zoff = 0; var particles = []; var flowfield; let cohesionMultiplier = 0; let particlePower = 1000; let seed = 0; //seed Hash let sizee = 0; // rect size let startCol = 0; //color base number function keyPressed() { if (key == 's') { save("Masterpiece.png"); } } function setup() { createCanvas(windowWidth, windowHeight); colorMode(HSB, 360); cols = floor(width / scaleMaker); rows = floor(height / scaleMaker); flowfield = new Array(cols * rows); for (var i = 0; i < particlePower; i++) { particles[i] = new Particle(); } background(10); } function draw() { var yoff = 0; for (var y = 0; y < rows; y++) { var xoff = 0; for (var x = 0; x < cols; x++) { var index = x + y * cols; var angle = noise(xoff, yoff, zoff) * TWO_PI * warpDrive; var v = p5.Vector.fromAngle(angle); v.setMag(1); flowfield[index] = v; xoff += inc; } yoff += inc; zoff += (random(0.00001) * cohesionMultiplier); } for (var i = 0; i < particles.length; i++) { particles[i].follow(flowfield); particles[i].update(); particles[i].edges(); particles[i].show(); } //border maker noFill(); stroke(25, 0, 0); strokeWeight(25); rect(0, 0, windowWidth, windowHeight); // noStroke(); // fill(0, 200, 350, 10) // ellipse(width-500, height-450, 200); scaleMaker += 0.03 }
var inc = 1.7; var scaleMaker = 222; var warpDrive = 77 var cols; var rows; var zoff = 0; var particles = []; var flowfield; let cohesionMultiplier = 0; let particlePower = 1000; let seed = 0; //seed Hash let sizee = 0; // rect size let startCol = 0; //color base number function keyPressed() { if (key == ‘s’) { save(“Masterpiece.png”); } } function setup() { createCanvas(windowWidth, windowHeight); colorMode(HSB, 360); cols = floor(width / scaleMaker); rows = floor(height / scaleMaker); flowfield = new Array(cols * rows); for (var i = 0; i < particlePower; i++) { particles[i] = new Particle(); } background(10); } function draw() { var yoff = 0; for (var y = 0; y < rows; y++) { var xoff = 0; for (var x = 0; x < cols; x++) { var index = x + y * cols; var angle = noise(xoff, yoff, zoff) * TWO_PI * warpDrive; var v = p5.Vector.fromAngle(angle); v.setMag(1); flowfield[index] = v; xoff += inc; } yoff += inc; zoff += (random(0.00001) * cohesionMultiplier); } for (var i = 0; i < particles.length; i++) { particles[i].follow(flowfield); particles[i].update(); particles[i].edges(); particles[i].show(); } //border maker noFill(); stroke(25, 0, 0); strokeWeight(25); rect(0, 0, windowWidth, windowHeight); // noStroke(); // fill(0, 200, 350, 10) // ellipse(width-500, height-450, 200); scaleMaker += 0.03 }

dreamsMemories / April 2022

let r = width * PI let angle = 3 let $ = cos(angle) * r; let $$ = sin(angle) * r; let borderer = max(width, height) * random(0.5) let colorChoice = random(360) let stroker = random(2, 4); let alphazer = 0.4 strokeWeight(0.4); var heighter = windowHeight var widther = windowWidth/random(50) var randWidther = max(random(random(widther)), 1) var a = random(PI*20,PI*60) for (var x = (0+borderer); x
let r = width * PI let angle = 3 let $ = cos(angle) * r; let $$ = sin(angle) * r; let borderer = max(width, height) * random(0.5) let colorChoice = random(360) let stroker = random(2, 4); let alphazer = 0.4 strokeWeight(0.4); var heighter = windowHeight var widther = windowWidth/random(50) var randWidther = max(random(random(widther)), 1) var a = random(PI*20,PI*60) for (var x = (0+borderer); x<=(width-borderer); x += PI*3) { for (var y = (0+borderer); y <= (height-borderer); y+= PI*3) { stroke(colorChoice-20, a, a,alphazer*1.5) line(x+a*a%a, y+a, x-a*a%a, y-a); stroke(colorChoice, a, 0,alphazer/2) // line(x+a, y+a, x+a, y%a); //good line line(x+a*a%a, y+a, x-a*a%a, y-a);

внутри дома / October 2022

for (var l = (0); l<=(width); l += PI*3) { for (var m = (0+borderer*2.5); m <= (height); m+= PI*3) { // tangled lines strokeWeight(random(2)) stroke(80, 50, 50, alphazer) line(l+sqrt(a), (m+a*a%a)-random(a), l, (m+a*a%a)-random(a)-random(borderer)); strokeWeight(random(2)) stroke(29, 70, 20, alphazer) line(l+sqrt(a), (m+a*a%a)-random(a), l, (m+a*a%a)-random(a)); fill(80, 50, 50, alphazer*2); ellipse(l+sqrt(random(a)), m+sqrt(random(a)), random(5),random(10)) fill(80, 50, 0, alphazer); ellipse(l+sqrt(random(a)), m+sqrt(random(a)), random(5),random(10)) } } noLoop() pop() push() for (var p = (0); p<=(width); p += PI) { for (var o = (0); o <= (height); o+= PI) { let n = noise(x) * width stroke(0, 0, random(100), 1); strokeWeight(0.75) point(p,o) point(p+1,o+1) }}