Between the Currents
Policy: d620dc...343c
Owner:
Metadata:
{ "x": "@CM_GenArt", "name": "Between the Currents", "files": [ { "src": [ "data:text/html;utf8,<!DOCTYPE html><html><body><style>html,body{", "height:100%25 ;overflow:hidden;display:flex;justify-content:cent", "er;align-items:center;}canvas{position:absolute;object-fit:conta", "in;background-size:contain;box-sizing:border-box;}</style><canva", "s id='tc'></canvas><canvas></canvas><script>const e=globalThis,t", "=window,r=document,l=Object,a=l.assign,n=(e,t,r)=>{for(;e<t;e++)", "r(e,e/(t-1),e/t)},i=(e,t,r)=>n(0,e.length,((r,l)=>t(e[r],r,l))),", "o=(e,t)=>n(0,e,t),s=(e,t,r,l)=>`hsla(${e},${t}%25 ,${r}%25 ,${", "l})`,g=(e,t)=>((e,t,r,l)=>`rgba(${e},${t},${r},${l})`)(e,e,e,t);", "i(['LClineCap:SbshadowBlur:LWlineWidth:TAtextAlign:TBtextBaselin", "e:SCshadowColor:SSstrokeStyle:FSfillStyle'.split(':'),'LPclip:RT", "rect:GTgetTransform:DIdrawImage:FTfillText:ELellipse:BPbeginPath", ":CPclosePath:MTmoveTo:LTlineTo:STstroke:VSsave:VRrestore:TRsetTr", "ansform:XTtranslate:XSscale:XRrotate:FRfillRect:RErect:FLfill'.s", "plit(':')],((t,r)=>i(t,(t=>{let[,l,a]=t.match(/(..)(.+)/);e['C'+", "l]=r?(...e)=>M[a](...e):e=>M[a]=e})))),i(l.getOwnPropertyNames(M", "ath),(t=>e[t]=Math[t]));const h=2*PI,u=(e,t,r)=>(1-e)*t+e*r,C=(e", ",t=0,r=1)=>e<t?t:min(r,e),c=(e,t,r)=>e<t?r-(t-e)%25 (r-t):t+(e-t", ")%25 (r-t),d=(e,t,r,l,a)=>r-t==0?l:l+(e-t)/(r-t)*(a-l),m=(e,t,..", ".r)=>{CFS(e),(e=>{M.font=e+'px Arial'})(t),CFT(...r)},p=(e,t,r,l", ")=>((e,...t)=>{CFS(e),CBP(),CEL(...t),CFL()})(e,t,r,l,l,0,0,h),y", "=e=>(CTA(_),CTB(F)),x=(e,t,r,l,a)=>(CLC(E),S(),b(a),f(e),CMT(t-l", ",r),CLT(t+l,r),T()),w=(e,t=0)=>{CSb(t*le),CSC(e)},S=CBP,f=CSS,v=", "CFS,T=CST,b=CLW,_='center',E='round',F='middle',k=(e,t,r,l)=>(r=", "{set:l=(e=0,t=0)=>('number'!=typeof e&&({x:e,y:t}=e),a(r,{x:e,y:", "t}))},r.dot=e=>r.x*e.x+r.y*e.y,r.norm=e=>r.div(r.len()),r.dist=e", "=>H(r,e),r.rad=e=>atan2(r.x,-r.y),r.len=e=>sqrt(r.x**2+r.y**2),r", ".circ=e=>l(sin(e),-cos(e)),r.perp=e=>l(r.y,-r.x),r.add=e=>l(r.x+", "e.x,r.y+e.y),r.sub=e=>l(r.x-e.x,r.y-e.y),r.mv=e=>l(r.x*e.x,r.y*e", ".y),r.inc=e=>l(r.x+e,r.y+e),r.mul=e=>l(r.x*e,r.y*e),r.div=e=>l(r", ".x/e,r.y/e),r.cpy=e=>k(r.x,r.y),l(e,t)),L=k(),H=(e,t)=>L.set(e.x", ",e.y).sub(t).len(),P=(e,t,r,l=1,a)=>a={H(t){return e=c(e+t,0,360", "),a},S(e){return t=C(t*e,0,100),a},V(e){return r=C(r*e,0,100),a}", ",C(e){return((e,t,r,l)=>((...e)=>`rgba(${e.join(',')})`)(...((e,", "t,r)=>{if(r=r/100*255,0==(t/=100))return[r,r,r];const l=r/255*t*", "255,a=l*(1-abs(e/60%25 2-1)),n=r-l;return(e<60?[l,a,0]:e<120?[a,", "l,0]:e<180?[0,l,a]:e<240?[0,a,l]:e<300?[a,0,l]:[l,0,a]).map((e=>", "round(e+n)))})(e,t,r),l))(...a.HSV(e))},HSV(a=l){return[e,t,r,a]", "},cpy(e){return P(...a.HSV(e))}},B=(e=N)=>{let t=4294967295,r=12", "3456789+e&t,l=65535,a=987654321-e&t,n=e=>(a=36969*(a&l)+(a>>>16)", "&t,r=18e3*(r&l)+(r>>>16)&t,((a<<16)+(r&l)>>>0)/(t+1)),i={r:n,f:(", "e,t)=>e+n()*(t-e),i:(e,t)=>floor(i.f(e,t)),c:e=>n()<e,item:e=>e[", "i.i(0,e.length)]};return i},V=[...r.querySelectorAll('canvas')].", "map((e=>{return[e,(t=e,t.getContext('2d'))];var t})),R=e=>[J,M]=", "e,I=e=>{let r,l;[Z,W]=[t.innerWidth,t.innerHeight],Z/W>z?(l=W-ie", ",r=l*z):(r=Z-ie,l=r/z),ae&&!e&&(le=r/X*min(ne,t.devicePixelRatio", ")),a(J.style,{width:round(r)+'px',height:round(l)+'px'})},G=(e=l", "e)=>CTR(e,0,0,e,0,0),$=(e=1)=>re=e;let J,M,X,A,D,Y,K,q,O,Z,W,z,j", ",N=82869,U=0,Q=0,ee=0,te=k(),re=1,le=1,ae=1,ne=2,ie=0,oe=1,se=30", ",ge=0,he=0,ue=0;const Ce=(e,t)=>(R(V[e]),G(t)),ce=(e=B())=>{Ce(0", "),K=[];var t=(e,t,r,l=k())=>l.set(u(e,t.x,r.x),u(e,t.y,r.y));let", " l=(e,r)=>{let l=(e=>{let t=e=>62*e()+e(),r=e=>k(t(e),t(e)),l=e=", ">a(e,(t=>e())),a=(e,t,r=[])=>{do{r.push(t(e))}while(e(1)>=0);ret", "urn r},n=(e,t)=>{let n=a(e,r);for(;'_'==t();){let r=t();i(l(e),(", "(e,t)=>n[t][r]=e))}return n},o={l:(e,t)=>({t:'l',a:l(e),v:(e(),n", "(e,t))}),f:(e,t)=>({t:'f',a:l(e),v:(e(),n(e,t))})},s=[];return i", "(e.split('$'),((e,t)=>{let[r,l]=((e,t=0)=>[r=>'0123456789abcdefg", "hijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'.indexOf(e[r?t:t++", "]),r=>e[r?t:t++]])(e);s.push(o[l()](r,l))})),s})(e);i(l,(e=>{((e", ",t='black',r=9,l)=>{let a=k(),n=[];CBP(),k(),i(e,((t,i)=>{let o=", "e[max(0,i-1)],s=e[min(e.length-1,i+1)],g=t.s??r;l&&(g*=l(t.x,t.y", "));let h=a.set().add(o).sub(s).norm().perp().cpy().mul(g/3),u=h.", "cpy().mul(-1);(i?CLT:CMT)(h.x+t.x,h.y+t.y),n.unshift(u.add(t))})", "),i(n,((e,t)=>{CLT(e.x,e.y)})),CCP(),CFS(t),CFL()})(((e,r=6)=>{l", "et l=e;return n(0,r,(e=>{l=((e,r='ws')=>{for(var l=[e[0]],a=1;a<", "e.length-1;a++){var n=e[a-1],o=e[a],s=e[a+1];let h=d(o.w??0,0,32", ",0,1);var g=t(.5,n,s);let u=t(h,o,g);i(r,(e=>u[e]=o[e])),l.push(", "u)}return l.push(e[e.length-1]),l})(((e,r='ws')=>{var l,a,n=[];r", "eturn i(e,(e=>{l&&(a=t(.5,l,e),i(r,(t=>a[t]=u(.5,l[t]??10,e[t]??", "10))),n.push(a)),n.push(e),l=e})),n})(l,'ws'))})),l})(e.v,6),r??", "'black',9)}))};var _,E,F,L,N,U;SIGN=(N=(L=e=>{var t=[];for(F=0;F", "<e.length;F++)t.push('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP", "QRSTUVWXYZ1234567890'.indexOf(e[F])-31);return t})('EEBBBCABAAAB", "BCCDEGLNKJJKKKLLLKLKKJJHCBEEEEEFEEEFFFFKSPIrpmoqxQVXXTLKJJIIHGGF", "FDDCCCCCDDFFGHIIIIHHGGEFEFFGGIHIHHHGGFGFGIN'),U=L('ldwPPSUWYYYYX", "WTT07UCvwtrpnnlmlmnoqsua7RUWXZZZZYXUSPTnhnDIJKJMEEBytspljjlnszGN", "SX1232ZWRLEuojhikpxHSZ431SIxokhjovHSZ31VLm'),(e,t,r,l)=>{for(F=0", ";F<N.length;F++)l(e,t,e+(_=N[F]*r),t+(E=U[F]*r)),e+=_,t+=E});let", " Q,ee,re,ne,oe,ge=(e,t,r,l)=>[e+r,t+l,r,l];J.style.boxShadow='bl", "ack 0 3px 30px',r.body.bgColor='grey',Q=2,ee=.002,re=.15,oe=350,", "ne=e.f(.1,.5);let ue=e=>{},ce=((t=1,r=1,l=256)=>{let o={r:r,d:t}", ",s=[],g=(e=0)=>i(s,(t=>a(t,{x:cos(t.r+e),y:sin(t.r+e)})));n(0,l,", "(t=>s[t]={r:e.f(0,h)})),g(0);let C=(e,t,r,a,n)=>{return(r-e)*(n=", "s[(i=e,o=t,37476*i+66826*o&l-1)]).x+(a-t)*n.y;var i,o};o.Ph=g,o.", "At=(e,t,r=1)=>{let l=0,a=1;return n(0,o.d,(n=>{l+=((e,t)=>{e*=o.", "r,t*=o.r;let r=floor(e),l=floor(t),a=u(e-r,C(r,l,e,t),C(r+1,l,e,", "t)),n=u(e-r,C(r,l+1,e,t),C(r+1,l+1,e,t));return u(t-l,a,n)})(e*a", ",t*a)*r,r*=.5,a*=2})),(l+1)/2};let c=k();return o.Dir=(e,t)=>(({", "x:e,y:t}=c.circ(o.At(e,t)*h*2).norm()),[e,t]),o})(2,.002,512);ce", ".Ph(100*e.r());let de=k(),me=[0,0,0],pe=[0,0,0];((e=Z,t=W,r=ie,l", "=[J,M])=>{i(V,((l,a)=>{R(l),D=(X=e)/2,Y=(A=t)/2,z=X/A,ie=r,I();l", "et n=min(le,a?2:20);J.width=X*n,J.height=A*n,G()})),R(l)})(800,1", "200,80);let ye=[],xe=(([e,t]=[6,9],[r,l]=[200,200])=>{let a=[];r", "eturn o(e,((e,n)=>{o(t,((e,t)=>{let i=u(n,r,X-r),o=u(t,l,A-l);a.", "push(k(i,o))}))})),a})(),we=((...e)=>(t,r,l,a)=>(i(e,(e=>[t,r,l,", "a]=e(t,r,l,a))),[t,r,l,a]))(ge,((e,t=1)=>(r,l,a,n,i,o)=>([i,o]=e", ".Dir(r,l),[r,l,u(t,a,i),u(t,n,o)]))(ce,.15),((e=200,t=.5)=>(r,l,", "a,n)=>{let i=r-D,o=l-Y,s=C(d(abs(i),D,D-e,1,0))*sign(i),g=C(d(ab", "s(o),Y,Y-e,1,0))*sign(o);return[r,l,a-s*t,n-g*t]})(200,.5)),Se=(", "e,t,r,l,a)=>{let{x:n,y:i}=a.circ(l*h);return[n,i,n,i]};i(xe,((e,", "t)=>{ye.push(((e,t,r=100,l=r,a=k())=>n=>r<0?0:(i(e,((e,r)=>{let[", "l,n]=e(t);de.set(l,n).dist(a)>2&&(r=0),(r?CLT:CMT)(l,n),a.set(l,", "n)})),max(0,r--/l)))((({x:e,y:t},r=500,l)=>{let a=[];return o(r,", "((r,n)=>{let[i,o,s,g]=l(e,t,r,n,de);a.push(((e,t,r,l)=>(a=ge)=>[", "e,t,r,l]=a(e,t,r,l))(e+i,t+o,s,g))})),a})(e,500,Se),we,350))}));", "let fe,ve,Te=e.i(0,360);me=[c(Te+50,0,360),50,10],me.V=[-8,.95,1", ".05],pe=[c(Te+0,0,360),10,10],pe.V=[8,1.07,1.05],fe=P(...me),ve=", "P(...pe);let be=s(60,20,75,1);ue=()=>{fe=P(...me),ve=P(...pe),_e", "||((e,t=0,r=0,l=X,a=A)=>{CFS(e),CFR(t,r,l,a)})(be);let[e,t,r]=me", ".V,[a,n,o]=pe.V,g=0;var h,u,C;return i(ye,((l,i)=>{if(!(_e<4*i))", "if(_e-4*i){CBP();let e=l();e>0&&(g=1),CSS(ve.H(a).S(n).V(o).C(e)", "),CLW(2*e**2),CST()}else{let l=xe[i];p(fe.H(e).S(t).V(r).C(1),l.", "x,l.y,4),p(ve.H(a).S(n).V(o).C(1),l.x,l.y,2)}})),round(4.4*ye.le", "ngth)==_e&&(h=X-150,u=A-140,C=s(60,20,40,1),CVS(),CXT(h,u),CXS(.", "3,.3),CXT(-D,-Y),l('l0_3N2r3P2u3O2w_w00g_s022$l0_6j8T6n8T6p8J6o8", "e5U995xaW64ba6la06R8B6N8i6G8r6AaR6Y9Z6ma85Yao6Iaf6W9T788k6RaH7c8", "k74av7c9x7i907i9y7fah7s9X_w11f8mokvh1g8bg2gge4g48a9dd_s468745a44", "94a66a5586a5679a6$l0_6YaM74aD79aO6Vb177aU7faX_w1hh8hh_s444344$l0", "_7paG7jaJ7caH7caS7iaO7qaQ7mb379b0_w1h00hhhh_s44444444',C),CVR())", ",he>4&&!g},new function(e,t){var r=this;r.go=t=>e=t,r.upd=(...l)", "=>{e&&(r.e&&r.e(),t[e]&&t[e](r),r.S=e,e=null),r.u&&r.u(...l),e&&", "r.upd(...l)}}('follow',{follow(e){e.ev=(e,t)=>{},e.u=()=>{},e.e=", "()=>{}}});let _e=0;se=60;let Ee,Fe,ke=((e=B())=>{Ce(1,j=min(le,2", "));let a=A-150,h=X-120,u=A-75,C=D,c=a+65,d=k(75,a),_=k(X-75,a),E", "=e=>round(X*e)+' x '+round(A*e)+' px',F=(e,r,l,a,n,i,s,g)=>(K.pu", "sh((e=>s>=0&&i(s,s=-1))),i=>(g=9**9,i=-1,o(l,((l,o)=>{let h=t(o,", "e,r),u=H(te,h),C=u<a&&g>u;C&&(i=l,g=u),n(h,l,C&&s==l)})),s=i)),L", "=min(X,A)/800*.9;g(50,.8),g(100,.6),CVS(),S(),CRE(3,3,X-6,A-6),C", "LP(void 0),b(50),f('black'),v('white'),CFL(),w('grey',10),T();le", "t R=P(...me??[0,0,0]);l('l0_1C2c1K2c1Q20231U2L273e213x1y2Q2j2g2S", "1X2Z1U2N2T3a482Z_w06qgggggggggg_s0622224226220$l0_302y2S2H362E3g", "2t3p2y3g2t362B3g2C3q2t342N2P3a2M34372K3n2G3v2v3n2O3C2v3s2L3M2y3D", "2H3U2E3Z2v482z3Y2v3R2I432A4n2k4o2e4b2p3Y2I4g2B_w0gggggmg0egggg0v", "2v0giiiiiiiiiaa_s4222222222220222222222222222220$l0_3N2r3P2u3O2w", "_w00g_s022$l0_342s352u332w_w0sg_s022$l0_4H254P1Y5i1F5P286I1M6H23", "5O2f6g2d6z2B5A3g4z2E5a2e5J2t5D2J_wc2sgeg0oqggggg_s08222624222224", "$l0_512J5e2G5P2i6y1B6a245H2i_w2vg6g0_s042220$l0_6w2w782f722b6B2p", "6o2R6E2E6Q2z6H2E6O2J6V2D6O2x6X2C742z6Y2z6Y2K762F722z7c2F7i2x7e2E", "7m2u7m2D7q2s7q2K7E2A_w0vgqio0igsgggggg0g00g0gm2_s222222222202222", "2222222220$l0_7x227M1L8C2l9O1M8J1H7n338S2Z9h2B9n2E9k2C9c2M9l2M9n", "2H9l2E9x2J9C2w9Z2ma62d9D2s9o2R9A2P9R2zag2kaj2c9o2Y9W2Ka42Eab2B9Y", "2C9Z2Mam2Fal2ya62Mar2GaO2iak2Iac2Y_w0egggkgkggvig0oivmieq8ggvgog", "ggrgig0rg_s0622222222222220222220222202020222222$l0_b92maT2qao2k", "ad2s_w0ggg_s0220$l0_aA2Cau2JaE2JaP2CaG2KaT2NaV2FaP2DaQ2Db12Ib52v", "aW2Mb82rb62Mbl2E_w0gg0muug0gg8ugg_s222222022222222$l0_aH2waE2zaJ", "2z_w0g0_s020',R.V(.5).C(1)),CXT(D,Y),CXS(L,L),y();let I=P(...me)", ";w(I.C(.5),10),I.S(.75),m(I.V(.75).C(1),30,'Between the Currents", "',0,-90),m(I.S(.5).V(1.2).C(1),18,'Jan 2025 ',0,-55),m(I.C(1),18", ",'Standalone 16kb html/js code art',0,-30),R.S(.4).V(1.4),m(R.C(", "1),25,'Charles Machin (b. 1979) ',0,70),i('This body of work is ", "part of a larger exploration into the|expressive potential of fo", "rm and motion within the mark-making|process. Through the use of", " highly compact algorithms, each|piece serves as a study in how ", "digital strokes can evoke|emotion, gesture, and rhythm. These wo", "rks act as precursors to|my forthcoming Form Collection, where t", "he elegant contours of|the female figure emerge through meticulo", "usly guided lines.|Influenced by mathematical noise and flow fie", "lds.'.split('|'),((e,t)=>m(R.C(1),20,e,0,180+28*t))),CVR();let G", "=F(d,_,13,55,(({x:e,y:t},r,l)=>{let a=r?r==le:0==r&&ae,n=0==r||1", "2==r||a||l;p(a?'gold':'white',e,t,28),((e,t,r,l,a,n)=>{p(e,t,r,l", "),a&&(b(a),f('black'),T())})(l?'green':'white',e,t,n?22:7,n?2:1)", ",y(),n&&m(l?'white':'black',18,r?'x'+r:'1:1',e,t),l&&m('green',2", "0,r?E(r):'Display mode',C,c)}),(e=>{ae=!e,le=max(1,e),$()})),J=F", "(k(h-30,u),k(h+30,u),9,33,(e=>0),(e=>((e,t=(e=>r.createElement('", "a'))())=>{t.download=e,t.href=V[0][0].toDataURL(),t.click()})('B", "etween the Currents')));return y(),m('black',20,E(le),C,c+30),i(", "[['right',X-28,'ccv3'],['left',28,'C-05-028']],(([e,t,r])=>{CTA(", "e),m(s(40,70,70,.35),10,r,t,17)})),()=>{let e=J()>=0;return n(0,", "2,(t=>x(t&&e?'white':'black',h,u,40,50-4*t))),m(e?'black':'white", "',18,'Save',h,u),x('white',C,c,90,30),G(),0}})();q=()=>{!Ee&&(Ce", "(0),Ee=(()=>{let e=ue();return _e++,e})()),O&&(Ce(1,j),!Fe)&&(Fe", "=ke())}},de=(e,t=requestAnimationFrame)=>{e>=oe?(oe+=1e3/se,oe<e", "&&(oe=e+10),(!q||re&&1==re--)&&(ce(),ge=he=0),he=ge++*(ue=1/se),", "q?.(),setTimeout((e=>t(de)),10)):t(de)};de(0);{let e='touch',r='", "mouse',l='clientX',a='clientY',n={passive:!1},s=e=>0,g=e=>e.stop", "Propagation(),h=(e,t)=>(s(e),e[l]=(t=e.changedTouches[0]).pageX,", "e[a]=t.pageY,e),u=(e,t=J.getBoundingClientRect())=>te.set(U=d(e[", "l],t.left,t.right,0,X),Q=d(e[a],t.top,t.bottom,0,A)),C=e=>{V[1][", "0].style.display=e?'block':'none'},c=e=>{ee=1,u(e),C(O=1),s(e),g", "(e)},m=e=>{u(e),O&&i(K,(e=>e())),C(ee=O=0)};i([[e+'start',e=>c(h", "(e))],[e+'move',e=>u(h(e))],[e+'end',e=>m(h(e))],[r+'down',c],[r", "+'move',u],[r+'up',m],['resize',e=>(o(2,(e=>(Ce(e),I(1)))),ae&&$", "(9))]],(([e,r])=>((e,t,r=J,l)=>r.addEventListener(e,t,l))(e,r,t,", "n))),C()}</script></body></html>" ], "name": "Between the Currents", "mediaType": "text/html" } ], "image": "ipfs://QmUJN5jPVZ5gw25xhaFaEcseyynwMETCnJ9VoNkgV5wqx7", "artist": "Charles Machin", "medium": "Fully On-Chain BlockGen.Art Canvas", "vendor": "BlockGen.art", "authNFT": "asset1jvwdlgvmkehfm294dpnyjryhqhvpw0s3v83njy", "mediaType": "image/png", "description": [ "This body of work is part of a larger exploration into the", "expressive potential of form and motion within the mark-making", "process. Through the use of highly compact algorithms, each", "piece serves as a study in how digital strokes can evoke", "emotion, gesture, and rhythm. These works act as precursors to", "my forthcoming Form Collection, where the elegant contours of", "the female figure emerge through meticulously guided lines.", "Influenced by mathematical noise and flow fields." ] }