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"
]
}








