memoscan
← all memos

Memo 0x2e4275da…d23f8d on Ethereum

is.miniCircle&&(this.p.fill(this.thirdColor),this.p.circle(this.x,this.y,this.size/2,this.size/2)),this.p.pop()}}var g=a;let k;tokenData.hash="0xf5e67ef6c9f94d53fb5066763f6f3596a11ee1e2a34e58acfdc159ea86e2fb4c";const w=new URLSearchParams(window.location.search),y=Object.fromEntries(w.entries());let S,C;const m=1;let b,v,F,x,z,E,D,W,M;function setup(){v=createCanvas(S,C);const{pd:t=null}=y;t&&pixelDensity(Number(t)),W=new Array(5).fill(null).map((()=>createGraphics(S,C)));const[i,r,o,h]=W;M=W[4],angleMode(DEGREES),M.angleMode(DEGREES);const n=width/1e3;b=()=>{const{rnd:t,rangeFloor:f,pick:u,weighted:a}=e(tokenData.hash),calculateFeatures=()=>{const e={},i=f(s.length);e.palette=s[i],e.grid=[2,3,4,5,6][a([.05,.5,1,1,.2])],e.shapes=["min","mid","max"][a([1,.5,.3])];const r=t()>.95&&u([1,2]);return e.doubleStrokes=1===r,e.tripleStrokes=2===r,e.zoomed="min"!==e.shapes&&t()>.99,e.bundle=t()>.98,e.spirals=t()>.995,e.simple=t()>.9,e.miniature=!e.zoomed&&t()>.95,e.everyPoint=t()>.85,e.metro=t()>.95,e.fixedShapes=!!(e.everyPoint||t()>.9)&&f(2,e.grid+1),e.hidden=t()>.95,e.stepsRange=u(["max","mid","full"]),e.backRects1=t()>.2,e.backRects2=t()>.2,e},{palette:k,grid:w,shapes:y,doubleStrokes:S,tripleStrokes:C,zoomed:m,bundle:b,spirals:v,simple:A,fixedShapes:P,miniature:B,metro:R,everyPoint:H,stepsRange:L,backRects1:O,backRects2:N,hidden:I}=calculateFeatures(),V=w,q=w,G=l(k,1*k.length);E=G[0],z=G[1],D=G[2];const X=B?.3:.1,Y=width*X,J=height*X,U=[2,4,8][a([1,1,.1])],$=void 0,j=(width-2*Y)/(V*U),_=j;let K=m?4:1;const Q=V*K,T=q*K,Z=(width-2*Y)/Q,tt=Z,et={2:1.4,3:1.2,4:1,5:.8,6:.6};let it=[];for(let t=0;t<Q;t+=1)for(let e=0;e<T;e+=1)it.push([t,e]);const st=[];x=[];for(let e=Y;e<=Math.ceil(width-Y-1);e+=Z)for(let i=J;i<=Math.ceil(height-J-1);i+=Z){const s=e+Z/2,r=i+tt/2;let o="min"===y?.5:.3;w<4&&(o=.05),t()>o&&x.push(new g(M,s,r,Z/2,G[u([1,2])],E,D,K,et[w],t()>.5,t()>.5,t()>.5))}const rt={2:3,3:5,4:9,5:9,6:9},ot={min:1,mid:3,max:10},ht="min"===y?w:V*K*ot[y];if(H)for(let e=0;e<it.length;e+=1){const i=void 0;let s;s=t()>.5?e%2==0?P:1:P,s=2===w?2:s,st.push(c(...it[e],s,Q,T,u,P<4))}else for(let t=0;t<ht;t+=1){let t;t="full"===L?f(1,rt[w]):"mid"===L?f(Math.ceil(rt[w]/2),rt[w]):rt[w],P&&(t=P),st.push(c(...u(it),t,Q,T,u))}const lt=u([5,10,20]),nt=u([1,2,4]);F=st.map(((e,s)=>{const{finalPoints:l,centers:n,arcs:c}=p(e,Z,tt);let f=t()>.5,a=!f&&t()>.4;(b||s>st.length-3)&&(f=!1,a=!1);let g=t()>.1;s<st.length-3&&s>st.length-6&&(g=!0);let k=!1;v&&s>st.length-ot[y]*w&&(k=!0);const m=u([i,r,o,h]);let F=t()>.5,x=!F&&t()>.5,z=!x&&!F&&t()>.5;S&&(F=!0,x=!1),C&&(F=!1,x=!0),f||a||(g=!1),A&&(a=!1);const W=PI*Z,M=W/lt,P=M*nt,B=t()*W*n.length;return new d(Y,J,K,l,c,n,G[u([1,2])],E,u([D,E]),f,k,g,F,x,z,a&&m,et[w],t()>.9,!a&&t()>.6,u,R,M,P,B,I)})),background(z),W.forEach((t=>{t.background(z)}));const ct=void 0,ft=et[w]*n;for(let t=Y;t<Math.ceil(width-Y-1);t+=j)for(let e=J;e<Math.ceil(height-J-1);e+=j)i.push(),i.noFill(),i.strokeWeight(2.5*ft/(U/2)),i.stroke(E),i.rect(t,e,j,j),i.pop();for(let t=Y;t<Math.ceil(width-Y-1);t+=j/2)for(let e=J;e<Math.ceil(height-J-1);e+=j/2)r.push(),r.noFill(),r.strokeWeight(1.25*ft/(U/2)),r.stroke(E),r.rect(t,e,j,j),r.pop();for(let e=Y;e<Math.ceil(width-Y-1);e+=j/.5)for(let i=J;i<Math.ceil(height-J-1);i+=j/.5)O&&(o.push(),o.fill(G[2]),o.strokeWeight(5*ft/(U/2)),o.stroke(E),o.rect(e,i,2*j,2*j),o.pop()),t()>.95&&(o.push(),o.noStroke(),o.strokeWeight(5*ft/(U/2)),o.stroke(O?z:D),o.fill(E),o.circle(e+j,i+_,j),o.pop());for(let e=Y;e<Math.ceil(width-Y-j);e+=j/.5)for(let i=J;i<Math.ceil(height-J-j);i+=j/.5)N&&(h.push(),h.fill(G[1]),h.strokeWeight(5*ft/(U/2)),h.stroke(E),h.rect(e,i,2*j,2*j),h.pop()),t()>.95&&(h.push(),h.noStroke(),h.strokeWeight(5*ft/(U/2)),h.stroke(E),h.fill(D),h.circle(e+j,i+_,j),h.pop());x.forEach((t=>{t.draw()})),F.forEach((t=>{t.draw(M)})),image(M,0,0)},b()}1*window.innerHeight>=window.innerWidth?(S=window.innerWidth,C=window.innerWidth/1):(C=window.innerHeight,S=1*window.innerHeight);let A=!0;const P=[1,2,3,4,5,6,7,8,9];function windowResized(){const t=void 0,e=v.canvas.style;let i,s;1*window.innerHeight>=window.innerWidth?(i=window.innerWidth,s=window.innerWidth/1):(s=window.innerHeight,i=1*window.innerHeight),e.position="absolute",e.display="block",e.top=e.left=e.right=e.structure="0",e.width=`${i}px`,e.height=`${s}px`}window.addEventListener("keydown",(t=>{P.includes(Number(t.key))&&(pixelDensity(Number(t.key)),b()),"s"===t.key&&saveCanvas(tokenData.hash,"png")}));