Outer Boundary 004
Policy: 07d598...3974
Owner:
Metadata:
{ "name": "Outer Boundary 004", "seed": 924235, "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,n=987654321-e&t,a=65535;C.r=e=>(((n=36969*(n&a)+(n>>>16)&t)<<1", "6)+((r=18e3*(r&a)+(r>>>16)&t)&a)>>>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=924235,TAG='C-02-004',PX=1e3,HX=PX/2,uS=(e,C", ",t,r,n)=>{let a=V2(HX,HX),c='evenodd',l=(e,C)=>For(0,e,C),o=e=>R", "ECT(e,0,0,PX,PX),i=e=>{let C=[];return For(0,100,((t,r)=>C[t]=[r", ",e(r)])),C},S=(e,C,t,r)=>{let n=ctx.createRadialGradient(e,C,0,e", ",C,t);return FoE(r,(e=>n.addColorStop(...e))),n};var X,T,s,P,E,u", ";V2(),SIGN=(E=(P=e=>{var C=[];for(s=0;s<e.length;s++)C.push('abc", "defghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'.ind", "exOf(e[s])-31);return C})('EEBBBCABAAABBCCDEGLNKJJKKKLLLKLKKJJHC", "BEEEEEFEEEFFFFKSPIrpmoqxQVXXTLKJJIIHGGFFDDCCCCCDDFFGHIIIIHHGGEFE", "FFGGIHIHHHGGFGFGIN'),u=P('ldwPPSUWYYYYXWTT07UCvwtrpnnlmlmnoqsua7", "RUWXZZZZYXUSPTnhnDIJKJMEEBytspljjlnszGNSX1232ZWRLEuojhikpxHSZ431", "SIxokhjovHSZ31VLm'),(e,C,t,r)=>{for(s=0;s<E.length;s++)r(e,C,e+(", "X=E[s]*t),C+(T=u[s]*t)),e+=X,C+=T});var v=(e,C,t)=>{CBP(),SIGN(e", ",C,t,((e,C,t,r)=>{CLT(t,r)})),CST()};_RL=7;let[H,R]=[[7128,104.3", "47,5.049,100,135,1.966,69.596,253,0,0,206,-.645,33.526],[0,0,0,0", ",0,0,0,0,0,0,0,1]],[F,h,d]=[[.954,141,347,-207,4,5,8,1,0,5,0,1],", "[0,.04,.04,.08,0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,1,1,1,1,1]],x=[..", ".F],m=[{lo:0,hi:3,decimals:3},{lo:0,hi:1e3},{lo:0,hi:1e3},{lo:-5", "00,hi:500},{lo:.1,hi:5,decimals:2},{lo:1,hi:20},{lo:1,hi:100},{l", "o: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(x,((C,t)=>{let r=d[t],n=F[t],a=h[t],", "{lo:c,hi:l,dec:o}=m[t],i=(l-c)*a;For(0,2,e.r),n=e.f(max(c,n-i),m", "in(l,n+i)),r||(x[t]=((e,C)=>round(e*pow(10,C))/pow(10,C))(n,o??0", "))})),cH(30,10,50,1);let p,A,L=cM(230,1),y=cM(0,.5),b=cM(0,.5),B", "=cM(0,.3),V=cM(255,.2),D=(cH(30,100,2,1),(e,C)=>(p[e]=p[e]??[]).", "push(C)),_=e=>A.push((C=>{CVS(),e(),CVR()})),g=[];return(e=>{let", " C=()=>{(e=>{p={},A=[];let[C,t,r,n,X,T,s,P,E,u,R,F,h]=H,[d,m]=((", "e,C,...t)=>{let r,n=(e,t,r,n,a,c,o,i,S,X,T)=>{let s=new Path2D,P", "=a*c,E={x:HX,y:HX,X:HX,Y:HX},u=(e,C,t=0)=>{E={x:min(E.x,e-t),y:m", "in(E.y,C-t),X:max(E.X,e+t),Y:max(E.Y,C+t)}};return l(P,((a,T)=>{", "T=a/P;let E=(1.01+cos(TAU*T*(P/c)))/2;E=pow(E,n)*r;let v=i?TAU/(", "2*S):0,H=T*TAU,R=V2().circ(T*TAU).mul((e+E)*C).inc(HX);if(o){let", " e=V2();l(S,((r,n)=>{n=r/S,X?e.circ(v+H+n*TAU).mul(t*C).add(R):e", ".circ(v+n*TAU).mul(t*C).add(R),r?s.lineTo(e.x,e.y):s.moveTo(e.x,", "e.y),u(e.x,e.y,0)})),s.closePath()}else{let e=t*C;s.moveTo(R.x+e", ",R.y),s.ellipse(R.x,R.y,e,e,0,0,TAU),u(R.x,R.y,e)}})),s.ext=E,s.", "cntr=V2((E.X+E.x)/2,(E.Y+E.y)/2),s};if(t[10]){C=1,r=n(...t);let ", "a=r.ext;C=e/max(a.X-a.x,a.Y-a.y)}return r=n(...t),[r,r.cntr]})(8", "50,...x);a=m.cpy().inc(-HX).mul(-1),m.set(HX,HX).add(a);let g=m.", "x,M=m.y,f=new RNG(SEED+2),I=(e,C,t,r,n)=>_((a=>{CXT(t,r),CSS(e),", "CLW(C),n&&ADD(),CST(d)}));D(50,(()=>{((e,C,t)=>{let r=e=>{CXT(HX", ",HX),CXS(e,e),CXT(-HX,-HX)};CVS(),CXT(a.x,a.y),l(10,((C,t)=>{let", " n=!C,a=9==C;CVS();let o=Mapf(t,0,1,1,1.05);r(o),n&&(CVS(),CSC(B", "),CFS(CANV),l(5,((C,t)=>{CSB(round(5+25*t)),CFL(e,c)})),CSC(V),l", "(5,((C,t)=>{CSB(round(1+8*t)),CFL(e,c)})),CVR()),ctx.clip(e,c),C", "LW(2),CSC(b),CSS(y),n&&CSS('black'),a&&(CFS(L),CFL(e,c),FoE(A,(C", "=>C(e))),CLW(1.5),CSC(b),CSS('black')),CSB(5),CST(e),CSB(0),CVR(", "),a&&(CVS(),r(o),CLW(.25),CSS('black'),CST(e),CVR())})),CVR()})(", "d)})),(()=>{let e=[t,r,n],C=[X,T,s],a=abs(u),c=[P,E,a],H=S(g,M,7", "00,[[.2,cH(...c,0)],[1,cH(...c,u>0?1:a/100)]]),R=i((e=>cM(F<0?0:", "255,pow(Clamp(Mapf(e,.6,1.1,0,1),0,1),1.5)*abs(F)))),d=S(g,M,PX,", "R);WALL=cH(t,r/3,min(100,n+.5*(100-n)),1),CANV=cH(...e,1),D(0,((", ")=>{o(CANV),o(d)})),_((e=>o(cH(...C,1)))),D(89,(e=>{u>0&&ADD(),o", "(H)})),l(1,(C=>D(C?79:99,(t=>{return r=C,n=cH(...e,1),a=cM(h,1),", "CLW(1.5),r&&(CSC(n),CSS(CANV),l(10,((e,C)=>{CSB(3*e),v(965,950,.", "12)}))),CSS(a),v(965,950,.12),void CSB(0);var r,n,a}))))})(...H)", ",((e=1,C=1.05,t=5,r=199)=>{D(10,(()=>{CXT(g,M),CXS(.3,.3),CBP(),", "ADD(),l(r,((r,n)=>{CXR(.1*e),CXS(C,C),CEL(t,t,15,15,0,0,TAU),CCP", "()})),CFS(cM(255,.05)),CFL(c)}))})(2),((e=100,C=1,t=0,r=-150,n=4", ")=>{_((a=>{ADD(),o(S(g+t,M+r,e,i((e=>cH(X,T,100*pow(1-e,n),C))))", ")}))})(200,.2,0,f.i(-50,-250)),((e=20,C=5,t=.6)=>{I(cH(X+e,T,1.5", "*s,t),C,0,-1),I(cH(X-e,T,s/2,t/2),C,0,1)})(0,3,.5)})(),((...e)=>", "{l(100,((C,t)=>{(t=p[C])&&FoE(t,(C=>{CVS(),C(...e),CVR()}))}))})", "()};if(g=[],_R<4)C();else{let e=_R/2;CBP(),l(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(c", "M(0,.01)),CST(),TXT('black',15,`Print quality - ${_R*PX}x${_R*PX", "}`,HX,285),l(e,((t,r)=>{l(e,((r,n)=>{let a=PX*(r/e),c=PX*(t/e),l", "=PX/e,o=PX/e;g.push((()=>{CVS(),CBP(),CRE(a,c,l,o),ctx.clip(),C(", "),CVR()})),g.push((()=>{CBP(),CRE(a+10,c+10,l-20,o-20),CLW(15),C", "SS(cM(0,.1)),CST()}))}))}))}})(),e=>(g.length&&g.pop()(),0)};fun", "ction I(){cnv=document.getElementById('tc'),ctx=CTX=cnv.getConte", "xt('2d');const e=(e,C,r,n,a,c)=>{var l,o,i,S=V2(e,C);return t.pu", "sh((e=>{o&&c(a)})),(t,a)=>{l=V2(_X,_Y).mul(-1).add(S),o=l.len()<", "1.7*r,i=o?2:5,t&&(ELI(o||a?'white':'grey',e,C,r+i,r+i,0,0,TAU),C", "TA('center'),CFS('black'),FNT(r-3),CFT(n,e,C+6))}};let C={Piece:", "'4',Name:'Outer Boundary 004',Description:'This artwork explores", " interference patterns using the interplay|between strong geomet", "ric shapes'.split('|'),Properties:'Persp, Realm 7, Titanium Whit", "e, 1, S3',Medium:'Fully On-Chain BlockGen.Art Canvas',Artist:'Ch", "arles Machin - @CM_GenArt',Seed:SEED};var t=[],r=[],n=0,a=[1,2,4", ",8,16],c=0,l=e=>{n=e,_R=a[e],art=o(_R),cer=i(min(_R,4))},o=e=>{c", "=0;var C,t=DCE('canvas'),r=t.getContext('2d'),n=cM(150,1),a=()=>", "{DEF(),TXT(n,1==e?10:8,TAG,967,993)};return CWH(t,e*PX),CCX(r),A", "A(t,1),DEF(),C=uS(new RNG(SEED),r,t,e,a),a(),()=>(CCX(r),DEF(),c", "||(c=C())&&a(),CCX(),t)},i=e=>{let t=DCE('canvas'),r=new RNG(SEE", "D),n='black',a=[0,0,PX,PX],c=(e,C)=>For(0,e,C);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),...a);let l,o,", "i=(e,C,t)=>{c(6,((r,n)=>{n=r/6;let a=V2().circ(t+n*TAU).mul(C);C", "MT(a.x+e,a.y),CEL(a.x,a.y,e,e,0,0,TAU),CCP()}))},S=(e=n,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 X,T", ";for(var[X,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)", ",CXR(PI/4),c(7,((e,C)=>{CBP();let t=50+50*e,r=12+12*e;CRE(-r,-r,", "t,t);let a=_RL-1==e;1==_RL&&a&&(CFS(cH(40,80,50,1)),CFL()),CLW(a", "?6:2),CSS(n),CST()})),CVR(),c(50,((e,C)=>{c(80,((e,t)=>{CVS(),CX", "T(PX*C,PX*t),CXR(TAU*r.i(0,6)/3),RECT(cM(155,.05),-100,-2,200,1)", ",RECT(cM(255,.05),-100,-1,200,1),CVR()}))})),CSC(n),CSBr(30*e),C", "BP(),CRE(...a),CSS(cHx('dbccb8')),CLW(102),CST(),CBP(),CRE(...a)", ",CSS(cHx('9d8c78')),CLW(92),CST(),CSBr(6*e),CSS(CANV),CLW(30),CS", "T(),DEF(null,e),TXT(cM(0,.1),18,'CM GEN ART',HX,40),TXT(cM(0,.6)", ",13,TAG,HX,970),l=HX,o=290,Object.entries(C)))o+=34,TXT(cM(0,.8)", ",14,X,l,o),o+=24,T=cM(0,.5),Array.isArray(s)?FoE(s,(e=>{TXT(T,20", ",e,l,o),o+=22})):TXT(T,20,s,l,o);return DEF(),CCX(),e=>t},S=()=>", "{setTimeout((e=>{window.requestAnimationFrame(S);var C=0,t=PX;CC", "X(),X(.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(ce", "r(),0,0,t,t),FoE(r,(e=>{e(_P,n==C),C++}))}),1e3/FPS)},X=(e,C)=>{", "var t=window,r=t.innerWidth,n=t.innerHeight,a=r!=_W||n!=_H,c=min", "(r,n)*e,l=c/PX,o=min(2,max(devicePixelRatio??1,1));a&&(cnv.width", "=_W=r*o,cnv.height=_H=n*o),CTR(1,0,0,1,0,0),BG(C),CXT((r-c)/2,(n", "-c)/2),CXS(l,l)};AA(ctx,1),(()=>{l(0);var n,c,o=a.length,i='touc", "h',X='mouse',T=e=>{e.preventDefault();var C=e.changedTouches[0];", "return e.clientX=C.pageX,e.clientY=C.pageY,e},s=e=>{var C=cnv.ge", "tBoundingClientRect(),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(T(e))}],[i+'move',e=>{s(T(e))}],[i+'end',e=>{u(T(e))}],[", "X+'down',p],[X+'move',s],[X+'up',u]],(e=>cnv.addEventListener(..", ".e))),n=0;n<o;n++)r.push(e(130,c=HX-80*o/2+80*(n+.5),22,a[n]+'k'", ",n,l));r.push(e(130,800,25,CHAR(8595),0,(e=>{return(t=DCE('a')).", "download=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 004", "mediaType": "text/html" } ], "image": "ipfs://Qmf44iJkHAkcErF1meENUVfPKZ1V6eYnqN9FtsGoWTnK8a", "piece": 4, "artist": "Charles Machin - @CM_GenArt", "medium": "Fully On-Chain BlockGen.Art Canvas", "vendor": "BlockGen.art", "authNFT": "asset1ca3myxgejq8cpw0vvxm6uwae64uprqutqhntj2", "mediaType": "image/png", "properties": { "BG": "S3", "Mix": "Titanium White", "Type": "Realm 7", "Depth": "Persp", "Pattern": "1" }, "description": [ "This artwork explores interference patterns using the interplay", "between strong geometric shapes" ] }