Zen Flow 009
Policy: e40ca7...940b
Owner:
Metadata:
{
"name": "Zen Flow 009",
"seed": 97916,
"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=97916,TAG='PG-03-009',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,u,v,T=(u=(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<u.length;i",
"++)a(e,t,e+(o=u[i]*r),t+(c=v[i]*r)),e+=o,t+=c});let S=()=>{CSB(1",
"0),CSC(CANV),CSS('lightgrey'),CBP(),T(463,445,.15,((e,t,r,a)=>{C",
"LT(r,a)})),CST()},m=(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,[50,.5],[30,3]],s:[100,[20,2],[10,5]],v:[50,[20,2],[10",
",5]],a:[1]}),X=(e,t)=>m(e,t),h=V2();CANV='black',WALL='white',SH",
"DW='grey',RECT(CANV,0,0,PX,PX),CXT(HX,HX);let d=[],E=[],F=new cl",
"ass{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),V",
"2();var s=(e,t,r,a)=>a.set(t.x,t.y).sub(r).mul(e).add(r);a.get=(",
"a,u)=>{for(l.set(),e=0;e<C.length;e++){var v=(t=C[e])[0],T=t[1],",
"S=t[2];c.set(a,u).sub(v);var m=S/(2*c.len());i.set(T.x,T.y).perp",
"();var X=c.norm().dot(i),h=X>0?1:-1;s(1-abs(X),T,c.norm().perp()",
".mul(h),o),l.add(o.norm().mul(m))}for(e=0;e<n.length;e++)c.set(a",
"-(t=n[e])[0],u-t[1]),r=t[4]/c.len(),c.norm(),i.set(c.x,c.y).perp",
"(),l.add(c.mul(t[3]).add(i.mul(t[2])).mul(r));return l}}},p=(f=d",
",P=E,e=>{For(0,e,(e=>{f.length&&P.push(f.shift())}))});var f,P;l",
"et g=HX,x=HX;var A=e.f(1,2);For(0,30,((t,r)=>{var a=V2().circ(r*",
"TAU*2).mul(550*r).inc(500),n=V2().circ(r*TAU*2).mul(500*r).inc(5",
"00),C=e.f(.1,2);F.eff(a.x-g,a.y-x,0,A,C),F.eff(n.x-g,n.y-x,-0,-A",
",C)}));let H=e.i(5,14);For(0,5e3/H,((e,t)=>{For(0,H,((e,r)=>{d.p",
"ush([V2().circ(t*TAU).mul(30+570*r),V2().circ(t*TAU),V2(1,1)])})",
")})),FoE(d,((e,t)=>{!(t%25 55)&&e[2].mul(3)}));let y=((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)})(E,(e=>{CBP(),CSB(0);let t=",
".011*e;CSB(15),CSC(X(t,.15)),CFS(X(t,1))}),(e=>{CFL(),CSB(0)}),(",
"(...e)=>t=>{for(let 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=F,(e,t,r)=>",
"(t.mul(.9).add(l.set().add(b.get(e.x,e.y)).mul(.1)),0)),((e,t,r)",
"=>{e.add(l.set(t.x,t.y).norm().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++)h.circ(e/6*TAU).mul",
"(r.x*a),(e?CLT:CMT)(h.x+n,h.y+C);return CCP(),0})));var b;let R=",
"1;return S(),e=>{if(CXT(HX,HX),p(8),ADD(),For(0,1,y),MUL(),R=max",
"(E.length,d.length),n(),0==R)return CXT(500,500),S(),1}};functio",
"n 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],art=c(_R),cer=i(min(_R,4))",
"},o={Piece:'9',Name:'Zen Flow 009',Description:'Tranquil and med",
"itative, this art collection of mesmerizing|flowfields mimics na",
"tural patterns with soothing colors,|providing a therapeutic atm",
"osphere'.split('|'),Properties:'P2, W2, Flow Spiral, Radial, Wid",
"e, Etheric, Hexagon, Weak, Natural',Medium:'Fully On-Chain Block",
"Gen.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),C",
"CX(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),C",
"BP(),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(),v(.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)",
"},v=(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),BG(t),CX",
"T((a-l)/2,(n-l)/2),CXS(o,o)};AA(ctx,1),(()=>{l(0);var a,C,c=n.le",
"ngth,i='touch',v='mouse',T=e=>{e.preventDefault();var t=e.change",
"dTouches[0];return e.clientX=t.pageX,e.clientY=t.pageY,e},S=e=>{",
"var t=cnv.getBoundingClientRect(),r=CGT().invertSelf();C=e.clien",
"tX-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,S(e),(e=>{e.preventDefault(),e.stopPropagation",
"()})(e),_P=_I(_X,_Y)},u=e=>{_P&&FoE(t,(e=>e())),_M=_P=0,S(e)},Fo",
"E([[i+'start',e=>{p(T(e))}],[i+'move',e=>{S(T(e))}],[i+'end',e=>",
"{u(T(e))}],[v+'down',p],[v+'move',S],[v+'up',u]],(e=>cnv.addEven",
"tListener(...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.clic",
"k();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 009",
"mediaType": "text/html"
}
],
"image": "ipfs://QmfBHkPwN9wM6AA2uaz4dmCaT3frcauwKeZ2LFX6vixjC1",
"piece": 9,
"artist": "Charles Machin - @CM_GenArt",
"medium": "Fully On-Chain BlockGen.Art Canvas",
"vendor": "BlockGen.art",
"authNFT": "asset13as3a4t954ru7vhzy6pldse3qu8e7la2xgsr7u",
"mediaType": "image/png",
"properties": {
"Draw": "Hexagon",
"Form": "Flow Spiral",
"Rows": "Wide",
"Waves": "W2",
"Agents": "Radial",
"Filter": "Etheric",
"Palette": "P2",
"Coupling": "Weak",
"Crytaline": "Natural"
},
"description": [
"Tranquil and meditative, this art collection of mesmerizing",
"flowfields mimics natural patterns with soothing colors,",
"providing a therapeutic atmosphere"
]
}








