memoscan
← all memos

Memo 0x06058ed2…7f2013 on Ethereum

function setup(){console.log("Artist: Che-Yu Wu"),console.log("https://twitter.com/cheyuwu345"),pixelDensity(2),createCanvas(DIM,DIM),noiseSeed(seed),randomSeed(seed),background(0),mainGraphics=createGraphics(width,height),fullCanvasTexture=createGraphics(width,height),mainGraphics.scale(DIM/DEFAULT_SIZE),fullCanvasTexture.scale(DIM/DEFAULT_SIZE),width=DEFAULT_SIZE,height=DEFAULT_SIZE;let e=120;for(let t=0;t<=width+1200;t+=e)for(let a=0;a<=height+1200;a+=e)fullCanvasTexture.image(canvasTexture,t,a,e,e);background(100),ang=R.random_num(-.5,.5),mainGraphics.fill(0),mainGraphics.rect(0,0,width,height),overAllTexture=createGraphics(width,height),overAllTexture.loadPixels();for(var t=0;t<width+50;t++)for(var a=0;a<height+50;a++)overAllTexture.set(t,a,color(200,noise(t/10,t*a/300)*R.random_choice([0,0,20,100])));overAllTexture.updatePixels(),translate(width/2,height/2),rotate(ang),translate(-width/2,-height/2),"Rect"==useDivisionType&&div(0,0,width,height,int(R.random_num(2,4))),"Ang"==useDivisionType&&divAng(0,width,0,2*PI,int(R.random_num(2,4))),features.AreaCount=areas.length;let r=R.random_num(.5,2);for(t=0;t<useParticleCount;t++){let e,a=R.random_choice(useColorSet),o=createVector(useStartPosition[0]*width,useStartPosition[1]*height),i=useChaosFactor>4?2:4,s=useChaosFactor>4?6:4,n=R.random_num(0,useParticleSize)*R.random_num(.05,1)+1;"Random"==useEmitType?e=createVector(0,1).rotate(R.random_num(0,2*PI)).mult(R.random_num(i,s)):"Even"==useEmitType?(e=createVector(0,1).rotate(map(t,0,useParticleCount,0,PI)).mult(R.random_num(i,s)),n=sin(t/4)*useChaosFactor+12):"LinearHorzontal"==useEmitType?(e=createVector(0,1).rotate(sin(t/useParticleCount*r*PI)).mult(R.random_num(i,s)),o=createVector(map(t,0,useParticleCount,0,width),height/2)):"LinearVertical"==useEmitType?(e=createVector(1,0).rotate(sin(t/useParticleCount*r*PI)).mult(R.random_num(i,s)),o=createVector(width/2,map(t,0,useParticleCount,0,height))):"LinearSlope"==useEmitType?(e=createVector(1,0).rotate(sin(t/useParticleCount*r*PI)).mult(R.random_num(i,s)),o=createVector(map(t,0,useParticleCount,0,width),map(t,0,useParticleCount,0,height))):"Circular"==useEmitType&&(e=createVector(1,0).rotate(map(t,0,useParticleCount,0,PI*r/2)).mult(R.random_num(i,s)),o=createVector(.3*width,0).rotate(t).add(width/2,height/2));let c={p:o,v:e,r:n,color:a,polarity:R.random_choice([-1,1]),r:R.random_num(0,useParticleSize)*R.random_num(.1,1)+1,vFriction:R.random_num(.99,1),rFactor:R.random_num(.99,.9995),affectFactor:R.random_num(.8,1.2)};useChaosFactor>=8&&(c.p.x+=R.random_num(-useChaosFactor,useChaosFactor),c.p.y+=R.random_num(-useChaosFactor,useChaosFactor)),useChaosFactor<=4&&(c.polarity=1,c.v=createVector(1,0).rotate(sin(t/useParticleCount*useChaosFactor*r*PI)).mult(5)),useChaosFactor<=3&&(c.color=useColorSet[int(t/10)%useColorSet.length]),useChaosFactor<=2&&(c.affectFactor=1,c.r=abs(sin(t))*useParticleSize*.8),particles.push(new Particle(c))}mainGraphics.translate(width/2,height/2),mainGraphics.rotate(ang),mainGraphics.translate(-width/2,-height/2)}function draw(){if(mainGraphics.noStroke(),particles.forEach((e=>{e.update(),areas.forEach((t=>{if(t.isParticleInArea(e)&&e.area!==t&&(e.area=t,e.color=R.random_choice(t.colors),e.v.rotate(R.random_num(-1,1)),R.random_dec()<.1&&e.generation<2&&e.canGenCount>0)){let t=new Particle({p:e.p.copy(),v:e.v.copy(),a:e.a.copy(),generation:e.generation+1});e.canGenCount--,particles.push(t)}})),e.draw()})),particles=particles.filter((e=>e.life>0)),image(mainGraphics,0,0),showCanvasTexture&&(push(),blendMode(MULTIPLY),image(fullCanvasTexture,0,0),pop()),showHash){fill(0),textSize(18),textFont("Courier"),textAlign(RIGHT);for(var e=0;e<tokenData.hash.length;e++){let t=14*e+50;yy=.95*height*DIM/DEFAULT_SIZE,showHashMouse&&(t=14*e+15+mouseX,yy=mouseY),areas.forEach((e=>{if(e.isParticleInArea({p:createVector(t/DIM*DEFAULT_SIZE,yy/DIM*DEFAULT_SIZE)})){let t=color(e.color);.2126*t._getRed()+.7152*t._getGreen()+.0722*t._getBlue()>127.5?fill(0):fill(255),"Wireframe"==useSpecialType&&fill(255)}})),noStroke(),text(tokenData.hash[e],t,yy)}}}let showHashMouse,showHash=!1;function keyPressed(){"s"==key&&save("CYW_Electriz - "+tokenData.hash+".png"),"t"==key&&(showCanvasTexture=!showCanvasTexture)," "==key&&(showHash=!showHash,console.log("Showhash",showHash)),"m"==key&&(showHashMouse=!showHashMouse)}function doubleClicked(){showCanvasTexture=!showCanvasTexture}