Zen Flow 010
Policy: e40ca7...940b
Owner:
Metadata:
{
"name": "Zen Flow 010",
"seed": 10263,
"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=10263,TAG='PG-03-010',PX=1e3,HX=PX/2,uS=(e,t,r,a",
",n)=>{var C=(e,t)=>r=>{var a,n=e[0];for(a=1;a<e.length;a++)n+=si",
"n(r*e[a][1])*e[a][0];return t?floor(n):n};(e=>{V2(),V2();let t=[",
"];For(0,3,((e,r)=>t.push(V2().circ(r*TAU).mul(200))))})();let l=",
"V2();var o,c,i,s,f,v,u=(f=(s=e=>{var t=[];for(i=0;i<e.length;i++",
")t.push('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123",
"4567890'.indexOf(e[i])-31);return t})('EEBBBCABAAABBCCDEGLNKJJKK",
"KLLLKLKKJJHCBEEEEEFEEEFFFFKSPIrpmoqxQVXXTLKJJIIHGGFFDDCCCCCDDFFG",
"HIIIIHHGGEFEFFGGIHIHHHGGFGFGIN'),v=s('ldwPPSUWYYYYXWTT07UCvwtrpn",
"nlmlmnoqsua7RUWXZZZZYXUSPTnhnDIJKJMEEBytspljjlnszGNSX1232ZWRLEuo",
"jhikpxHSZ431SIxokhjovHSZ31VLm'),(e,t,r,a)=>{for(i=0;i<f.length;i",
"++)a(e,t,e+(o=f[i]*r),t+(c=v[i]*r)),e+=o,t+=c});let T=()=>{CSB(1",
"0),CSC(CANV),CSS('lightgrey'),CBP(),u(463,445,.15,((e,t,r,a)=>{C",
"LT(r,a)})),CST()},X=(e=>{var t=C,r=t(e.h,1),a=t(e.s,1),n=t(e.v,1",
"),l=t(e.a,0);return(e,t)=>cH(Wrap(r(e),0,360),a(e),n(e),l(e)*t)}",
")({h:[130,[40,.6],[20,4]],s:[100,[20,2],[10,5]],v:[50,[20,2],[10",
",5]],a:[.6]}),S=(e,t)=>X(e,t),d=V2();CANV='black',WALL='white',S",
"HDW='grey',RECT(CANV,0,0,PX,PX),CXT(HX,HX);let h=[],m=[],E=new c",
"lass{constructor(){var e,t,r,a=this,n=[],C=[],l=V2(),o=V2(),c=V2",
"(),i=V2();a.eff=(...e)=>n.push([...e]),a.meff=(...e)=>C.push(e),",
"V2();var s=(e,t,r,a)=>a.set(t.x,t.y).sub(r).mul(e).add(r);a.get=",
"(a,f)=>{for(l.set(),e=0;e<C.length;e++){var v=(t=C[e])[0],u=t[1]",
",T=t[2];c.set(a,f).sub(v);var X=T/(2*c.len());i.set(u.x,u.y).per",
"p();var S=c.norm().dot(i),d=S>0?1:-1;s(1-abs(S),u,c.norm().perp(",
").mul(d),o),l.add(o.norm().mul(X))}for(e=0;e<n.length;e++)c.set(",
"a-(t=n[e])[0],f-t[1]),r=t[4]/c.len(),c.norm(),i.set(c.x,c.y).per",
"p(),l.add(c.mul(t[3]).add(i.mul(t[2])).mul(r));return l}}},F=(P=",
"h,p=m,e=>{For(0,e,(e=>{P.length&&p.push(P.shift())}))});var P,p;",
"let g=HX,x=HX;E.eff(340-g,220-x,1,-.2,1.5),E.eff(660-g,220-x,-1,",
"-.2,1.5),E.eff(440-g,190-x,0,-1,.5),E.eff(560-g,190-x,0,-1,.5),E",
".eff(500-g,500-x,0,1,1),E.eff(500-g,550-x,0,-1,.5),E.eff(500-g,6",
"50-x,0,2,1),E.eff(0-g,800-x,1,1,2),E.eff(1e3-g,800-x,-1,1,2),E.e",
"ff(350-g,550-x,-1,-1,1),E.eff(650-g,550-x,1,-1,1),E.eff(400-g,65",
"0-x,1,-1,1),E.eff(600-g,650-x,-1,-1,1),E.eff(420-g,750-x,-1,1,1)",
",E.eff(460-g,750-x,0,1,1),E.eff(500-g,750-x,0,1,1),E.eff(540-g,7",
"50-x,0,1,1),E.eff(570-g,750-x,1,1,1);let H=floor(sqrt(5e3));For(",
"0,H,((e,t)=>{For(0,H,((e,r)=>{h.push([V2(PX*r,PX*t).inc(-HX).mul",
"(1.1),V2(0,1),V2(1,1)])}))}));let A=((e,t,r,a,n=0)=>()=>{let C=e",
".length;if(!C)return 1;n++,t(n);for(let t=C-1;t>=0;t--)a(e[t])&&",
"e.splice(t,1);r(n)})(m,(e=>{CBP(),CSB(0);let t=.011*e;CSB(15),CS",
"C(S(t,.15)),CFS(S(t,1))}),(e=>{CFL(),CSB(0)}),((...e)=>t=>{for(l",
"et r=0;r<e.length;r++)if(e[r](...t))return 1})(((e,t,r)=>(e.l=(e",
".l??0)+1,e.t=1-e.l/200,e.l>200)),(b=E,(e,t,r)=>(t.mul(0).add(l.s",
"et().add(b.get(e.x,e.y)).mul(1)),0)),((e,t,r)=>{var a,n;e.add(l.",
"circ((a=t.rad(),n=TAU,0+round((a-0)/(n-0)*9)*(n-0)/9)).mul(1))})",
",((e,t,r)=>{let a=.8*((l=e.t)>.7?Mapf(l,.7,1,1,0):l>.3?Mapf(l,.3",
",.7,1.5,1):Mapf(l,0,.3,0,1.5)),n=e.x,C=e.y;var l;for(let e=0;e<6",
";e++)d.circ(e/6*TAU).mul(r.x*a),(e?CLT:CMT)(d.x+n,d.y+C);return ",
"CCP(),0})));var b;let B=1;return T(),e=>{if(CXT(HX,HX),F(8),ADD(",
"),For(0,1,A),MUL(),B=max(m.length,h.length),n(),0==B)return CXT(",
"500,500),T(),1}};function I(){cnv=document.getElementById('tc'),",
"ctx=CTX=cnv.getContext('2d');const e=(e,r,a,n,C,l)=>{var o,c,i,s",
"=V2(e,r);return t.push((e=>{c&&l(C)})),(t,C)=>{o=V2(_X,_Y).mul(-",
"1).add(s),c=o.len()<1.7*a,i=c?2:5,t&&(ELI(c||C?'white':'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,l=e=>{a=e,_R=n[e],ar",
"t=c(_R),cer=i(min(_R,4))},o={Piece:'10',Name:'Zen Flow 010',Desc",
"ription:'Tranquil and meditative, this art collection of mesmeri",
"zing|flowfields mimics natural patterns with soothing colors,|pr",
"oviding a therapeutic atmosphere'.split('|'),Properties:'P2, W3,",
" Llama, Grid, Etheric, Hexagon, Bound, C9',Medium:'Fully On-Chai",
"n BlockGen.Art Canvas',Artist:'Charles Machin - @CM_GenArt',Seed",
":SEED},c=e=>{C=0;var t,r=DCE('canvas'),a=r.getContext('2d'),n=cM",
"(150,1),l=()=>{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,l),l(),()=>(",
"CCX(a),DEF(),C||(C=t())&&l(),CCX(),r)},i=e=>{var t=DCE('canvas')",
";let r,a;var n,C;for(var[n,l]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(null,e),TXT(cM(0,.1),24,'BLOCKGEN.ART',",
"HX,40),TXT(cM(0,.6),13,TAG,HX,970),r=HX,a=290,Object.entries(o))",
")a+=34,TXT(cM(0,.8),14,n,r,a),a+=24,C=cM(0,.5),Array.isArray(l)?",
"FoE(l,(e=>{TXT(C,20,e,r,a),a+=22})):TXT(C,20,l,r,a);return DEF()",
",CCX(),e=>t},s=()=>{setTimeout((e=>{window.requestAnimationFrame",
"(s);var t=0,n=PX;CCX(),f(.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++}))}),1",
"e3/FPS)},f=(e,t)=>{var r=window,a=r.innerWidth,n=r.innerHeight,C",
"=a!=_W||n!=_H,l=min(a,n)*e,o=l/PX,c=min(2,max(devicePixelRatio??",
"1,1));C&&(cnv.width=_W=a*c,cnv.height=_H=n*c),CTR(1,0,0,1,0,0),B",
"G(t),CXT((a-l)/2,(n-l)/2),CXS(o,o)};AA(ctx,1),(()=>{l(0);var a,C",
",c=n.length,i='touch',f='mouse',v=e=>{e.preventDefault();var t=e",
".changedTouches[0];return e.clientX=t.pageX,e.clientY=t.pageY,e}",
",T=e=>{var t=cnv.getBoundingClientRect(),r=CGT().invertSelf();C=",
"e.clientX-t.left,y=e.clientY-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,T(e),(e=>{e.preventDefault(),e.stopProp",
"agation()})(e),_P=_I(_X,_Y)},u=e=>{_P&&FoE(t,(e=>e())),_M=_P=0,T",
"(e)},FoE([[i+'start',e=>{p(v(e))}],[i+'move',e=>{T(v(e))}],[i+'e",
"nd',e=>{u(v(e))}],[f+'down',p],[f+'move',T],[f+'up',u]],(e=>cnv.",
"addEventListener(...e))),a=0;a<c;a++)r.push(e(130,C=HX-80*c/2+80",
"*(a+.5),22,n[a]+'k',a,l));r.push(e(130,800,25,CHAR(8595),0,(e=>{",
"return(t=DCE('a')).download=o.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": "Zen Flow 010",
"mediaType": "text/html"
}
],
"image": "ipfs://QmYvuv9nYBSkj119LGd9SFmzpSZf2ATGMcVvxckTu3bxAX",
"piece": 10,
"artist": "Charles Machin - @CM_GenArt",
"medium": "Fully On-Chain BlockGen.Art Canvas",
"vendor": "BlockGen.art",
"authNFT": "asset13as3a4t954ru7vhzy6pldse3qu8e7la2xgsr7u",
"mediaType": "image/png",
"properties": {
"Draw": "Hexagon",
"Form": "Llama",
"Waves": "W3",
"Agents": "Grid",
"Filter": "Etheric",
"Palette": "P2",
"Coupling": "Bound",
"Crytaline": "C9"
},
"description": [
"Tranquil and meditative, this art collection of mesmerizing",
"flowfields mimics natural patterns with soothing colors,",
"providing a therapeutic atmosphere"
]
}








