We Are Block Gen 002
Policy: df79e9...825d
Owner:
Metadata:
{ "name": "We Are Block Gen 002", "seed": 7310, "files": [ { "src": [ "data:text/html;utf8,<html><head><body style='margin:0;overflow:h", "idden'><canvas id='tc' tabindex='1'><a id='link'></a><script>con", "st Q=s=>eval('(v,a,b,c,d)=>'+s),CHAR=e=>String.fromCharCode(e),F", "or=Q('{for(v=v;v<a;v++)b(v,v/a)}'),FoE=Q('For(0,v.length,(i,t)=>", "a(v[i],i,t))'),cR=Q('`rgba(${v},${a},${b},${c})`'),cH=Q('`hsla($", "{v},${a}%25 ,${b}%25 ,${c})`'),cM=Q('cR(v,v,v,a)'),cHx=e=>'rgb('", "+((e=parseInt(e,16))>>16&255)+','+(e>>8&255)+','+(255&e)+')';let", " P=(v,a,b,c)=>{for(b=b.split(':'),c=0;c<b.length;c+=2)eval(`C${b", "[c]}=${v}=>ctx.${b[c+1]}${a}`)},t='(...a)';P(t,t,'TC:clip:RT:rec", "t:GT:getTransform:DI:drawImage:FT:fillText:EL:ellipse:BP:beginPa", "th:CP:closePath:MT:moveTo:LT:lineTo:BC:bezierCurveTo:ST:stroke:V", "S:save:VR:restore:TR:setTransform:XT:translate:XS:scale:XR:rotat", "e:FR:fillRect:RE:rect:FL:fill'),P('a','=a','SBr:shadowBlur:LW:li", "neWidth:TA:textAlign:TB:textBaseline:SC:shadowColor:SS:strokeSty", "le:GC:globalCompositeOperation:FS:fillStyle');const DEF=(e,t)=>{", "e=e??CANV,t=t??_R,CTR(t,0,0,t,0,0),CFS(e),CSS(e),CTA('center'),C", "SB(0),MUL()},CSB=e=>CSBr(e*_R),DCE=e=>document.createElement(e),", "CCX=e=>ctx=e||CTX,FNT=e=>ctx.font=e+'px Arial',TXT=(e,t,...r)=>{", "CFS(e),FNT(t),CFT(...r)},ELI=(e,...t)=>{CFS(e),CBP(),CEL(...t),C", "FL()},ADD=e=>CGC('screen'),MUL=e=>CGC('source-over'),CWH=(e,t,r)", "=>{e.width=t,e.height=r||t},BG=e=>RECT(e,0,0,_W,_H),RECT=(e,...t", ")=>{CBP(),CFS(e),CFR(...t),CFL()},AA=(e,t)=>e.imageSmoothingEnab", "led=e.mozImageSmoothingEnabled=e.webkitImageSmoothingEnabled=t;f", "unction v2(e,t){var r=this,a=(e,t)=>(r.x=e||0,r.y=t||0,r);a(e,t)", ",Object.assign(r,{set:a,circ(e){return a(sin(e),-cos(e))},perp(e", "){return a(r.y,-r.x)},len(e){return sqrt(r.x*r.x+r.y*r.y)},dot(e", "){return r.x*e.x+r.y*e.y},norm(e){return r.div(r.len())},rad(e){", "return atan2(r.x,-r.y)},add(e){return a(r.x+e.x,r.y+e.y)},sub(e)", "{return a(r.x-e.x,r.y-e.y)},mv(e){return a(r.x*e.x,r.y*e.y)},inc", "(e){return a(r.x+e,r.y+e)},mul(e){return a(r.x*e,r.y*e)},div(e){", "return a(r.x/e,r.y/e)},cpy(e){return V2(r.x,r.y)}})}V2=Q('new v2", "(v,a)'),FoE(Object.getOwnPropertyNames(Math),(i=>eval(`${i}=Math", ".${i}`)));const Lerp=Q('(1-v)*a+v*b'),Wrap=Q('v<a?b-(a-v)%25 (b-", "a):a+(v-a)%25 (b-a)'),Mapf=Q('b-a==0?c:c+(((v-a)/(b-a))*(d-c))')", ",Clamp=Q('v<a?a:min(b,v)'),Ease=e=>-(cos(PI*e)-1)/2,TAU=2*PI;cla", "ss RNG{constructor(e){var t=this,r=4294967295,a=123456789+e&r,n=", "987654321-e&r,C=65535;t.r=e=>(((n=36969*(n&C)+(n>>>16)&r)<<16)+(", "(a=18e3*(a&C)+(a>>>16)&r)&C)>>>0)/(r+1),t.f=(e,r)=>e+t.r()*(r-e)", ",t.i=(e,r)=>floor(t.f(e,r)),t.c=e=>t.r()<e,t.item=e=>e[t.i(0,e.l", "ength)]}}CANV=cM(220,1),WALL=cHx('f57411'),SHDW=cHx('0f0a06'),FP", "S=60;const SEED=7310,TAG='PG-02-002',PX=1e3,HX=PX/2,uS=(e,t,r,a,", "n)=>{(e=>{V2(),V2();let t=[];For(0,3,((e,r)=>t.push(V2().circ(r*", "TAU).mul(200))))})();let C=e=>{CBP();let t=e?TAU/6:0;For(0,6,((e", ",r)=>{let a=V2().circ(t+TAU*r).mul(200);(0==e?CMT:CLT)(a.x,a.y)}", ")),CCP(),For(0,3,((e,r)=>{let a=V2().circ(t+TAU*r).mul(200);CLT(", "a.x,a.y),CLT(0,0)})),CST()},c=V2(),l=(t,r)=>(a,n,C)=>(n.circ(n.r", "ad()+t*e.item(r)),0),o=(t,r)=>(...a)=>t>e.r()&&r(...a);CANV='bla", "ck',WALL='black',SHDW='grey',RECT(CANV,0,0,PX,PX);let i=[],s=[],", "u=new class{constructor(){var e,t,r=[],a=V2(),n=V2(),C=V2(),c=V2", "();this.eff=(...e)=>r.push([...e]),V2();var l=(e,t,r,a)=>a.set(t", ".x,t.y).sub(r).mul(e).add(r);this.get=(o,i)=>{for(a.set(),e=0;e<", "r.length;e++){var s=(t=r[e])[0],u=t[1],T=t[2];C.set(o,i).sub(s);", "var v=T/(2*C.len());c.set(u.x,u.y).perp();var d=C.norm().dot(c),", "S=d>0?1:-1;l(1-abs(d),u,C.norm().perp().mul(S),n),a.add(n.norm()", ".mul(v))}return a}}},T=(v=i,d=s,e=>{For(0,e,(e=>{v.length&&d.pus", "h(v.shift())}))});var v,d;u.eff(V2(HX,250),V2(1,1),3),u.eff(V2(H", "X,750),V2(-1,1),3),For(0,50,((e,t)=>{i.push([V2().circ(t*TAU).mu", "l(700),V2().circ(PI+t*TAU),V2(1,1)]),i.push([V2().circ(t*TAU).mu", "l(50),V2().circ(t*TAU),V2(1,1)]),i.push([V2().circ(t*TAU).mul(50", "),V2().circ(PI/4+t*TAU).mul(-1),V2(1,1)])})),V2();let S=(m=s,X=(", "(...e)=>t=>{for(let r=0;r<e.length;r++)if(e[r](...t))return 1})(", "((e,t,r)=>{var a,n;e.add(c.circ((a=t.rad(),n=TAU,0+round((a-0)/(", "n-0)*7)*(n-0)/7)).mul(4))}),((e,t,r)=>(e.l=(e.l??0)+1,e.t=1-e.l/", "150,e.l>150)),(p=u,(e,t,r)=>(t.mul(1-.8).add(c.set().add(p.get(e", ".x,e.y)).mul(.8)),0)),o(.05,l(PI/20,[-3,1,2])),l(PI/60,[-1,-2,-3", ",1,2,3]),(h=o(.1,(P=s,A=(t,r,a)=>{let n=t.cpy(),C=TAU/6*(e.c(.5)", "?-1:1);return n.l=t.l,n.t=t.t,n.n=t.n,[n,V2().circ(r.rad()+C),a.", "cpy()]},(...e)=>(P.push(A(...e)),0))),(e,t,r)=>(!(e.l%25 10)&&h(", "e,t,r),0)),((e,t,r)=>{let a=1+30*e.t;CLW(.4),CBP();let n=e.x,C=e", ".y;CEL(n,C,r.x*a,r.y*a,0,0,TAU),CCP(),a*=.3,CEL(n,C,r.x*a,r.y*a,", "0,0,TAU),CCP();let c=Clamp(2*(1-e.t),0,1);return CFS(cH(200+-1*e", ".l,90,60,.8*c)),CFL(),CSS(cH(200+2*e.l,90,80,c)),CST(),0})),()=>", "{let e=m.length;if(!e)return 1;for(let t=e-1;t>=0;t--)X(m[t])&&m", ".splice(t,1)});var m,X,h,P,A,p;let g=1;return e=>(CXT(HX,HX),CSS", "(CANV),CLW(1),C(0),T(2),For(0,1,S),g=max(s.length,i.length),CSS(", "CANV),CLW(10),C(1),n(),0==g)};function I(){cnv=document.getEleme", "ntById('tc'),ctx=CTX=cnv.getContext('2d');const e=(e,r,a,n,C,c)=", ">{var l,o,i,s=V2(e,r);return t.push((e=>{o&&c(C)})),(t,C)=>{l=V2", "(_X,_Y).mul(-1).add(s),o=l.len()<1.7*a,i=o?2:5,t&&(ELI(o||C?'whi", "te':'grey',e,r,a+i,a+i,0,0,TAU),CTA('center'),CFS('black'),FNT(a", "-3),CFT(n,e,r+6))}};var t=[],r=[],a=0,n=[1,2,4,8,16],C=0,c=e=>{a", "=e,_R=n[e],art=o(_R),cer=i(min(_R,4))},l={Piece:'2',Name:'We Are", " Block Gen 002',Description:'BlockGen.art launch party artwork. ", "Powered by the substrate|algorithm created for Sol-Journey2'.spl", "it('|'),Properties:'Black, Spring, Vivid, Medium, 7, Medium, Lig", "ht thin, double',Medium:'Fully On-Chain BlockGen.Art Canvas',Art", "ist:'Charles Machin - @CM_GenArt',Seed:SEED},o=e=>{C=0;var t,r=D", "CE('canvas'),a=r.getContext('2d'),n=cM(150,1),c=()=>{DEF(),TXT(n", ",1==e?10:8,TAG,967,993)};return CWH(r,e*PX),CCX(a),AA(r,1),DEF()", ",t=uS(new RNG(SEED),a,r,e,c),c(),()=>(CCX(a),DEF(),C||(C=t())&&c", "(),CCX(),r)},i=e=>{var t=DCE('canvas');let r,a;var n,C;for(var[n", ",c]of(CWH(t,PX*e),CCX(t.getContext('2d')),DEF(null,e),RECT(cH(0,", "2,80,.6),2,2,PX-4,PX-4),CBP(),CRT(4,4,PX-8,PX-8),CTC(),RECT(cH(0", ",2,80,1),0,0,PX,PX),CSC('black'),CSBr(30*e),CBP(),CRE(0,0,PX,PX)", ",CSS(cHx('dbccb8')),CLW(102),CST(),CBP(),CRE(0,0,PX,PX),CSS(cHx(", "'9d8c78')),CLW(92),CST(),CSBr(6*e),CSS(CANV),CLW(30),CST(),DEF(n", "ull,e),TXT(cM(0,.1),24,'BLOCKGEN.ART',HX,40),TXT(cM(0,.6),13,TAG", ",HX,970),r=HX,a=290,Object.entries(l)))a+=34,TXT(cM(0,.8),14,n,r", ",a),a+=24,C=cM(0,.5),Array.isArray(c)?FoE(c,(e=>{TXT(C,20,e,r,a)", ",a+=22})):TXT(C,20,c,r,a);return DEF(),CCX(),e=>t},s=()=>{setTim", "eout((e=>{window.requestAnimationFrame(s);var t=0,n=PX;CCX(),T(.", "97,WALL),CSC(SHDW),CSBr(55),RECT(CANV,0,0,n,n),CSB(0),CVS(),_P&&", "(CXT(PX,0),CXS(-1,1)),CDI(art(),0,0,n,n),CVR(),_P&&CDI(cer(),0,0", ",n,n),FoE(r,(e=>{e(_P,a==t),t++}))}),1e3/FPS)},T=(e,t)=>{var r=w", "indow,a=r.innerWidth,n=r.innerHeight,C=a!=_W||n!=_H,c=min(a,n)*e", ",l=c/PX,o=min(2,max(devicePixelRatio??1,1));C&&(cnv.width=_W=a*o", ",cnv.height=_H=n*o),CTR(1,0,0,1,0,0),BG(t),CXT((a-c)/2,(n-c)/2),", "CXS(l,l)};AA(ctx,1),(()=>{c(0);var a,C,o=n.length,i='touch',T='m", "ouse',v=e=>{e.preventDefault();var t=e.changedTouches[0];return ", "e.clientX=t.pageX,e.clientY=t.pageY,e},d=e=>{var t=cnv.getBoundi", "ngClientRect(),r=CGT().invertSelf();C=e.clientX-t.left,y=e.clien", "tY-t.top,_X=C*r.a+y*r.c+r.e,_Y=C*r.b+y*r.d+r.f};for(p=e=>{_M=1,d", "(e),(e=>{e.preventDefault(),e.stopPropagation()})(e),_P=_I(_X,_Y", ")},u=e=>{_P&&FoE(t,(e=>e())),_M=_P=0,d(e)},FoE([[i+'start',e=>{p", "(v(e))}],[i+'move',e=>{d(v(e))}],[i+'end',e=>{u(v(e))}],[T+'down", "',p],[T+'move',d],[T+'up',u]],(e=>cnv.addEventListener(...e))),a", "=0;a<o;a++)r.push(e(130,C=HX-80*o/2+80*(a+.5),22,n[a]+'k',a,c));", "r.push(e(130,800,25,CHAR(8595),0,(e=>{return(t=DCE('a')).downloa", "d=l.Name,t.href=art().toDataURL(),void t.click();var t}))),s()})", "()}_X=_Y=0,_R=1,_P=0,_M=0,_W=0,_H=0,_I=e=>1,I();</script></canva", "s></body></html>" ], "name": "We Are Block Gen 002", "mediaType": "text/html" } ], "image": "ipfs://QmVvDDmhi2FL7UGVdHVwvAyYTJ8CKT2HuusdQqWRxfD31J", "piece": 2, "artist": "Charles Machin - @CM_GenArt", "medium": "Fully On-Chain BlockGen.Art Canvas", "vendor": "BlockGen.art", "authNFT": "asset1tkdqzl8z3fln4l2au8w9dtscaz70n6xtpzzx0a", "mediaType": "image/png", "properties": { "Base": "Black", "Step": "Medium", "draw": "double", "Lines": "Light thin", "Colour": "Spring", "Quantise": "7", "Saturate": "Vivid", "Tendrils": "Medium" }, "description": [ "BlockGen.art launch party artwork. Powered by the substrate", "algorithm created for Sol-Journey2" ] }