Outer Boundary 002
Policy: 07d598...3974
Owner:
Metadata:
{ "name": "Outer Boundary 002", "seed": 5391765, "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-1))}'),FoE=Q('For(0,v.length,(i,", "t)=>a(v[i],i,t))'),cR=Q('`rgba(${v},${a},${b},${c})`'),cH=Q('`hs", "la(${v},${a}%25 ,${b}%25 ,${c})`'),cM=Q('cR(v,v,v,a)'),cHx=e=>'r", "gb('+((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", ":rect:GT:getTransform:DI:drawImage:FT:fillText:EL:ellipse:BP:beg", "inPath:CP:closePath:MT:moveTo:LT:lineTo:BC:bezierCurveTo:ST:stro", "ke:VS:save:VR:restore:TR:setTransform:XT:translate:XS:scale:XR:r", "otate:FR:fillRect:RE:rect:FL:fill'),P('a','=a','SBr:shadowBlur:L", "W:lineWidth:TA:textAlign:TB:textBaseline:SC:shadowColor:SS:strok", "eStyle:GC:globalCompositeOperation:FS:fillStyle');const DEF=(e,C", ")=>{e=e??CANV,C=C??_R,CTR(C,0,0,C,0,0),CFS(e),CSS(e),CTA('center", "'),CSB(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,C,...t", ")=>{CFS(e),FNT(C),CFT(...t)},ELI=(e,...C)=>{CFS(e),CBP(),CEL(...", "C),CFL()},ADD=e=>CGC('screen'),MUL=e=>CGC('source-over'),CWH=(e,", "C,t)=>{e.width=C,e.height=t||C},BG=e=>RECT(e,0,0,_W,_H),RECT=(e,", "...C)=>{CBP(),CFS(e),CFR(...C),CFL()},AA=(e,C)=>e.imageSmoothing", "Enabled=e.mozImageSmoothingEnabled=e.webkitImageSmoothingEnabled", "=C;function v2(e,C){var t=this,r=(e,C)=>(t.x=e||0,t.y=C||0,t);r(", "e,C),Object.assign(t,{set:r,circ(e){return r(sin(e),-cos(e))},pe", "rp(e){return r(t.y,-t.x)},len(e){return sqrt(t.x*t.x+t.y*t.y)},d", "ot(e){return t.x*e.x+t.y*e.y},norm(e){return t.div(t.len())},rad", "(e){return atan2(t.x,-t.y)},add(e){return r(t.x+e.x,t.y+e.y)},su", "b(e){return r(t.x-e.x,t.y-e.y)},mv(e){return r(t.x*e.x,t.y*e.y)}", ",inc(e){return r(t.x+e,t.y+e)},mul(e){return r(t.x*e,t.y*e)},div", "(e){return r(t.x/e,t.y/e)},cpy(e){return V2(t.x,t.y)}})}V2=Q('ne", "w 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", ";class RNG{constructor(e){var C=this,t=4294967295,r=123456789+e&", "t,l=987654321-e&t,n=65535;C.r=e=>(((l=36969*(l&n)+(l>>>16)&t)<<1", "6)+((r=18e3*(r&n)+(r>>>16)&t)&n)>>>0)/(t+1),C.f=(e,t)=>e+C.r()*(", "t-e),C.i=(e,t)=>floor(C.f(e,t)),C.c=e=>C.r()<e,C.item=e=>e[C.i(0", ",e.length)]}}CANV=cM(220,1),WALL=cHx('f57411'),SHDW=cHx('0f0a06'", "),FPS=60;const SEED=5391765,TAG='C-02-002',PX=1e3,HX=PX/2,uS=(e,", "C,t,r,l)=>{let n=V2(HX,HX),c='evenodd',a=(e,C)=>For(0,e,C),o=e=>", "RECT(e,0,0,PX,PX),i=(e,C,t,r)=>{let l=ctx.createRadialGradient(e", ",C,0,e,C,t);return FoE(r,(e=>l.addColorStop(...e))),l},S=V2(),T=", "(e,C,t,r,l,n=[20,30,3])=>{let[c,o,i]=n,S=e.f(100,300),T=V2(),X=V", "2(),s=V2();a(c,((n,c)=>{T.circ(TAU*e.r());let u=e.i(30,S);a(o,((", "n,c)=>{X.circ(e.r()*c).mul(.35).add(T).mul(e.f(0,u)).add(C);let ", "o=2+r+10*pow(e.r(),3)*c;l(X.x,X.y,2*o,t,0),o>4&&a(i,((C,r)=>{s.c", "irc(e.r()*TAU).mul(o).add(X),l(X.x,X.y,o,t,1)}))}))}))};var X,s,", "u,P,E,d;SIGN=(E=(P=e=>{var C=[];for(u=0;u<e.length;u++)C.push('a", "bcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'.i", "ndexOf(e[u])-31);return C})('EEBBBCABAAABBCCDEGLNKJJKKKLLLKLKKJJ", "HCBEEEEEFEEEFFFFKSPIrpmoqxQVXXTLKJJIIHGGFFDDCCCCCDDFFGHIIIIHHGGE", "FEFFGGIHIHHHGGFGFGIN'),d=P('ldwPPSUWYYYYXWTT07UCvwtrpnnlmlmnoqsu", "a7RUWXZZZZYXUSPTnhnDIJKJMEEBytspljjlnszGNSX1232ZWRLEuojhikpxHSZ4", "31SIxokhjovHSZ31VLm'),(e,C,t,r)=>{for(u=0;u<E.length;u++)r(e,C,e", "+(X=E[u]*t),C+(s=d[u]*t)),e+=X,C+=s});var v=(e,C,t)=>{CBP(),SIGN", "(e,C,t,((e,C,t,r)=>{CLT(t,r)})),CST()};_RL=6;let[F,R]=[[1207,221", ".29,12,36.583,213.125,23.217,70.281,209,63,-23,246,-1.611,206.03", "9],[0,0,0,0,0,0,0,0,0,0,0,1]],[x,h,m]=[[0,671,333,-335,.1,6,12,1", ",0,6,0,1],[.9,.07,.09,.08,.06,0,.05,1,1,1,1,0],[0,0,0,0,1,1,1,1,", "1,1,1,1]],H=[...x],A=[{lo:0,hi:3,decimals:3},{lo:0,hi:1e3},{lo:0", ",hi:1e3},{lo:-500,hi:500},{lo:.1,hi:5,decimals:2},{lo:1,hi:20},{", "lo:1,hi:100},{lo:0,hi:1,bool:1},{lo:0,hi:1,bool:1},{lo:3,hi:10},", "{lo:0,hi:1,bool:1},{lo:0,hi:1,bool:1}];FoE(H,((C,t)=>{let r=m[t]", ",l=x[t],n=h[t],{lo:c,hi:a,dec:o}=A[t],i=(a-c)*n;For(0,2,e.r),l=e", ".f(max(c,l-i),min(a,l+i)),r||(H[t]=((e,C)=>round(e*pow(10,C))/po", "w(10,C))(l,o??0))})),cH(30,10,50,1);let p,L,y=cM(230,1),V=cM(0,.", "5),B=cM(0,.5),b=cM(0,.3),g=cM(255,.2),M=(cH(30,100,2,1),(e,C)=>(", "p[e]=p[e]??[]).push(C)),_=[];return(e=>{let C=()=>{(e=>{p={},L=[", "];let[C,t,r,l,X,s,u,P,E,d,R,x,h]=F,[m,A]=((e,C,...t)=>{let r,l=(", "e,t,r,l,n,c,o,i,S,T,X)=>{let s=new Path2D,u=n*c,P={x:HX,y:HX,X:H", "X,Y:HX},E=(e,C,t=0)=>{P={x:min(P.x,e-t),y:min(P.y,C-t),X:max(P.X", ",e+t),Y:max(P.Y,C+t)}};return a(u,((n,X)=>{X=n/u;let P=(1.01+cos", "(TAU*X*(u/c)))/2;P=pow(P,l)*r;let d=i?TAU/(2*S):0,v=X*TAU,F=V2()", ".circ(X*TAU).mul((e+P)*C).inc(HX);if(o){let e=V2();a(S,((r,l)=>{", "l=r/S,T?e.circ(d+v+l*TAU).mul(t*C).add(F):e.circ(d+l*TAU).mul(t*", "C).add(F),r?s.lineTo(e.x,e.y):s.moveTo(e.x,e.y),E(e.x,e.y,0)})),", "s.closePath()}else{let e=t*C;s.moveTo(F.x+e,F.y),s.ellipse(F.x,F", ".y,e,e,0,0,TAU),E(F.x,F.y,e)}})),s.ext=P,s.cntr=V2((P.X+P.x)/2,(", "P.Y+P.y)/2),s};if(t[10]){C=1,r=l(...t);let n=r.ext;C=e/max(n.X-n", ".x,n.Y-n.y)}return r=l(...t),[r,r.cntr]})(850,...H);n=A.cpy().in", "c(-HX).mul(-1),A.set(HX,HX).add(n);let _=A.x,f=A.y,D=new RNG(SEE", "D+2);M(50,(()=>{((e,C,t)=>{n.y+=10;let r=e=>{e=300*-(e-1),CXT(0,", "e)};CVS(),CXT(n.x,n.y),a(10,((C,t)=>{let l=!C,n=9==C;CVS();let o", "=Mapf(t,0,1,1,1.05);r(o),l&&(CVS(),CSC(b),CFS(CANV),a(5,((C,t)=>", "{CSB(round(5+25*t)),CFL(e,c)})),CSC(g),a(5,((C,t)=>{CSB(round(1+", "8*t)),CFL(e,c)})),CVR()),ctx.clip(e,c),CLW(2),CSC(B),CSS(V),l&&C", "SS('black'),n&&(CFS(y),CFL(e,c),FoE(L,(C=>C(e))),CLW(1.5),CSC(B)", ",CSS('black')),CSB(5),CST(e),CSB(0),CVR(),n&&(CVS(),r(o),CLW(.25", "),CSS('black'),CST(e),CVR())})),CVR()})(m)})),(()=>{let e=[t,r,l", "],C=[X,s,u],n=abs(d),c=[P,E,n],S=i(_,f,700,[[.2,cH(...c,0)],[1,c", "H(...c,d>0?1:n/100)]]),T=(e=>{let C=[];return For(0,100,((t,r)=>", "C[t]=[r,e(r)])),C})((e=>cM(x<0?0:255,pow(Clamp(Mapf(e,.6,1.1,0,1", "),0,1),1.5)*abs(x)))),F=i(_,f,PX,T);WALL=cH(t,r/3,min(100,l+.5*(", "100-l)),1),CANV=cH(...e,1),M(0,(()=>{o(CANV),o(F)})),L.push((e=>", "{CVS(),o(cH(...C,1)),CVR()})),M(89,(e=>{d>0&&ADD(),o(S)})),a(1,(", "C=>M(C?79:99,(t=>{return r=C,l=cH(...e,1),n=cM(h,1),CLW(1.5),r&&", "(CSC(l),CSS(CANV),a(10,((e,C)=>{CSB(3*e),v(965,950,.12)}))),CSS(", "n),v(965,950,.12),void CSB(0);var r,l,n}))))})(...F),((e=1,C=1.0", "5,t=5,r=199)=>{M(10,(()=>{CXT(_,f),CXS(.3,.3),CBP(),ADD(),a(r,((", "r,l)=>{CXR(.1*e),CXS(C,C),CEL(t,t,15,15,0,0,TAU),CCP()})),CFS(cM", "(255,.05)),CFL(c)}))})(2),M(10,(e=>((e,C,t=4,r=2,l=cM(255,.3))=>", "{a(1,((n,c)=>{let o=n?-600:0;a(140,((n,c)=>{CBP();let a=1200*c,i", "=1.5+sin(c*TAU*t)*r;CEL(e,C+o,a,a,0,0,TAU),CLW(i),CSS(l),CST()})", ")}))})(_,f,3,1))),((...e)=>{M(30,(C=>((e=0,C=1,t=40,r)=>{let l=(", "(e=200,C=8,t=2)=>{let r=[],l=0;return V2(),a(C,(n=>{r[C-1-n]=[e/", "=2,l+=1.5*e/2,t*=.9]})),(e,C,t,l)=>{t=round(min(log2(max(t,1)),r", ".length-1));let[n,c,o]=r[t],i=sin(TAU/3)*n,T=1.5*n,X=round(e/i),", "s=round((C+c)/T),u=(X+s)%25 2,P=T/6;((e,C,t,r,l,n)=>{CBP(),a(3,(", "(e,n)=>{S.circ(r+TAU*(e/3)).mul(l),(e?CLT:CMT)(S.x+C,S.y+t)})),C", "SS(e),CCP(),CLW(n),CST()})(l,X*i,s*T+(u?-P:P)-c,u?PI:0,n,o)}})()", ";a(t,((t,n)=>{let c=V2().circ(TAU*n).mul(380).add(A);if(e){let e", "=r?r():cH(D.i(0,360),100,50,.2);T(D,c,e,1,((e,t,r,n,c)=>{l(e,t,r", "*C,n),c&&(CFS(n),CFL())}))}else{let e=r?r():cH(D.i(0,360),100,50", ",1);CBP(),CFS(e),T(D,c,e,1,((e,t,r,l,n)=>{r*=C,CMT(e,t),CEL(e,t,", "r,r,0,0,TAU),CCP()})),CFL()}}))})(...e)))})(0,.1)})(),((...e)=>{", "a(100,((C,t)=>{(t=p[C])&&FoE(t,(C=>{CVS(),C(...e),CVR()}))}))})(", ")};if(_=[],_R<4)C();else{let e=_R/2;CBP(),a(e,((C,t)=>{let r=1-(", "t=C/e);CRE(HX*t,HX*t,PX*r,PX*r),CRE(HX*r,HX*t,PX*t,PX*r),CRE(HX*", "t,HX*r,PX*r,PX*t)})),CSS(cM(255,.1)),CLW(2),CST(),CLW(20),CSS(cM", "(0,.01)),CST(),TXT('black',15,`Print quality - ${_R*PX}x${_R*PX}", "`,HX,285),a(e,((t,r)=>{a(e,((r,l)=>{let n=PX*(r/e),c=PX*(t/e),a=", "PX/e,o=PX/e;_.push((()=>{CVS(),CBP(),CRE(n,c,a,o),ctx.clip(),C()", ",CVR()})),_.push((()=>{CBP(),CRE(n+10,c+10,a-20,o-20),CLW(15),CS", "S(cM(0,.1)),CST()}))}))}))}})(),e=>(_.length&&_.pop()(),0)};func", "tion I(){cnv=document.getElementById('tc'),ctx=CTX=cnv.getContex", "t('2d');const e=(e,C,r,l,n,c)=>{var a,o,i,S=V2(e,C);return t.pus", "h((e=>{o&&c(n)})),(t,n)=>{a=V2(_X,_Y).mul(-1).add(S),o=a.len()<1", ".7*r,i=o?2:5,t&&(ELI(o||n?'white':'grey',e,C,r+i,r+i,0,0,TAU),CT", "A('center'),CFS('black'),FNT(r-3),CFT(l,e,C+6))}};let C={Piece:'", "2',Name:'Outer Boundary 002',Description:'This artwork explores ", "interference patterns using the interplay|between strong geometr", "ic shapes'.split('|'),Properties:'Iso, Realm 6, Pale Midnight, 4", "0, SR2',Medium:'Fully On-Chain BlockGen.Art Canvas',Artist:'Char", "les Machin - @CM_GenArt',Seed:SEED};var t=[],r=[],l=0,n=[1,2,4,8", ",16],c=0,a=e=>{l=e,_R=n[e],art=o(_R),cer=i(min(_R,4))},o=e=>{c=0", ";var C,t=DCE('canvas'),r=t.getContext('2d'),l=cM(150,1),n=()=>{D", "EF(),TXT(l,1==e?10:8,TAG,967,993)};return CWH(t,e*PX),CCX(r),AA(", "t,1),DEF(),C=uS(new RNG(SEED),r,t,e,n),n(),()=>(CCX(r),DEF(),c||", "(c=C())&&n(),CCX(),t)},i=e=>{let t=DCE('canvas'),r=new RNG(SEED)", ",l='black',n=[0,0,PX,PX],c=(e,C)=>For(0,e,C);CWH(t,PX*e),CCX(t.g", "etContext('2d')),DEF(null,e),RECT(cH(0,2,80,.6),2,2,PX-4,PX-4),C", "BP(),CRT(4,4,PX-8,PX-8),CTC(),RECT(cH(0,2,80,1),...n);let a,o,i=", "(e,C,t)=>{c(6,((r,l)=>{l=r/6;let n=V2().circ(t+l*TAU).mul(C);CMT", "(n.x+e,n.y),CEL(n.x,n.y,e,e,0,0,TAU),CCP()}))},S=(e=l,C=0,t=1)=>", "{CBP(),((e=0)=>{i(25+e,60,PI/6),i(14+e,100,0),i(12+e,132,PI/6),i", "(10+e,162,0),i(7+e,180,PI/6)})(C),CSS(e),CLW(t),CST()};var T,X;f", "or(var[T,s]of(CVS(),CXT(HX,200),CXS(.3,.3),c(20,((e,C)=>{S(cM(e%", "25 2?0:255,pow(1-C,3)*(e%25 2?.2:.7)),200*C,3)})),S('white',0,6)", ",CFS(cH(230,60,30,1)),CFL(),CVR(),CVS(),CXT(HX,820),CXS(.2,.2),C", "XR(PI/4),c(7,((e,C)=>{CBP();let t=50+50*e,r=12+12*e;CRE(-r,-r,t,", "t);let n=_RL-1==e;1==_RL&&n&&(CFS(cH(40,80,50,1)),CFL()),CLW(n?6", ":2),CSS(l),CST()})),CVR(),c(50,((e,C)=>{c(80,((e,t)=>{CVS(),CXT(", "PX*C,PX*t),CXR(TAU*r.i(0,6)/3),RECT(cM(155,.05),-100,-2,200,1),R", "ECT(cM(255,.05),-100,-1,200,1),CVR()}))})),CSC(l),CSBr(30*e),CBP", "(),CRE(...n),CSS(cHx('dbccb8')),CLW(102),CST(),CBP(),CRE(...n),C", "SS(cHx('9d8c78')),CLW(92),CST(),CSBr(6*e),CSS(CANV),CLW(30),CST(", "),DEF(null,e),TXT(cM(0,.1),18,'CM GEN ART',HX,40),TXT(cM(0,.6),1", "3,TAG,HX,970),a=HX,o=290,Object.entries(C)))o+=34,TXT(cM(0,.8),1", "4,T,a,o),o+=24,X=cM(0,.5),Array.isArray(s)?FoE(s,(e=>{TXT(X,20,e", ",a,o),o+=22})):TXT(X,20,s,a,o);return DEF(),CCX(),e=>t},S=()=>{s", "etTimeout((e=>{window.requestAnimationFrame(S);var C=0,t=PX;CCX(", "),T(.97,WALL),CSC(SHDW),CSBr(55),RECT(CANV,0,0,t,t),CSB(0),CVS()", ",_P&&(CXT(PX,0),CXS(-1,1)),CDI(art(),0,0,t,t),CVR(),_P&&CDI(cer(", "),0,0,t,t),FoE(r,(e=>{e(_P,l==C),C++}))}),1e3/FPS)},T=(e,C)=>{va", "r t=window,r=t.innerWidth,l=t.innerHeight,n=r!=_W||l!=_H,c=min(r", ",l)*e,a=c/PX,o=min(2,max(devicePixelRatio??1,1));n&&(cnv.width=_", "W=r*o,cnv.height=_H=l*o),CTR(1,0,0,1,0,0),BG(C),CXT((r-c)/2,(l-c", ")/2),CXS(a,a)};AA(ctx,1),(()=>{a(0);var l,c,o=n.length,i='touch'", ",T='mouse',X=e=>{e.preventDefault();var C=e.changedTouches[0];re", "turn e.clientX=C.pageX,e.clientY=C.pageY,e},s=e=>{var C=cnv.getB", "oundingClientRect(),t=CGT().invertSelf();c=e.clientX-C.left,y=e.", "clientY-C.top,_X=c*t.a+y*t.c+t.e,_Y=c*t.b+y*t.d+t.f};for(p=e=>{_", "M=1,s(e),(e=>{e.preventDefault(),e.stopPropagation()})(e),_P=_I(", "_X,_Y)},u=e=>{_P&&FoE(t,(e=>e())),_M=_P=0,s(e)},FoE([[i+'start',", "e=>{p(X(e))}],[i+'move',e=>{s(X(e))}],[i+'end',e=>{u(X(e))}],[T+", "'down',p],[T+'move',s],[T+'up',u]],(e=>cnv.addEventListener(...e", "))),l=0;l<o;l++)r.push(e(130,c=HX-80*o/2+80*(l+.5),22,n[l]+'k',l", ",a));r.push(e(130,800,25,CHAR(8595),0,(e=>{return(t=DCE('a')).do", "wnload=C.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></", "canvas></body></html>" ], "name": "Outer Boundary 002", "mediaType": "text/html" } ], "image": "ipfs://QmQSKw9dEcmCE8bSBJsSQwm6wizc6kwFWBp3JzSe7ciCRL", "piece": 2, "artist": "Charles Machin - @CM_GenArt", "medium": "Fully On-Chain BlockGen.Art Canvas", "vendor": "BlockGen.art", "authNFT": "asset1ca3myxgejq8cpw0vvxm6uwae64uprqutqhntj2", "mediaType": "image/png", "properties": { "BG": "SR2", "Mix": "Pale Midnight", "Type": "Realm 6", "Depth": "Iso", "Pattern": "40" }, "description": [ "This artwork explores interference patterns using the interplay", "between strong geometric shapes" ] }