diff --git a/Build/Pixel.js b/Build/Pixel.js index a95a68b..a047f66 100644 --- a/Build/Pixel.js +++ b/Build/Pixel.js @@ -3,43 +3,43 @@ new f(2);return a[0]=d,a[1]=l,a},copy:function(d,l){return d[0]=l[0],d[1]=l[1],d},set:function(d,l,a){return d[0]=l,d[1]=a,d},add:function(d,l,a){return d[0]=l[0]+a[0],d[1]=l[1]+a[1],d},subtract:function(d,l,a){return d[0]=l[0]-a[0],d[1]=l[1]-a[1],d}};k.sub=k.subtract;k.multiply=function(d,l,a){return d[0]=l[0]*a[0],d[1]=l[1]*a[1],d};k.mul=k.multiply;k.divide=function(d,l,a){return d[0]=l[0]/a[0],d[1]=l[1]/a[1],d};k.div=k.divide;k.min=function(d,l,a){return d[0]=Math.min(l[0],a[0]),d[1]=Math.min(l[1], a[1]),d};k.max=function(d,l,a){return d[0]=Math.max(l[0],a[0]),d[1]=Math.max(l[1],a[1]),d};k.scale=function(d,l,a){return d[0]=l[0]*a,d[1]=l[1]*a,d};k.distance=function(d,l){var a=l[0]-d[0],c=l[1]-d[1];return Math.sqrt(a*a+c*c)};k.dist=k.distance;k.squaredDistance=function(d,l){var a=l[0]-d[0],c=l[1]-d[1];return a*a+c*c};k.sqrDist=k.squaredDistance;k.length=function(d){var l=d[0];d=d[1];return Math.sqrt(l*l+d*d)};k.len=k.length;k.squaredLength=function(d){var l=d[0];d=d[1];return l*l+d*d};k.sqrLen= k.squaredLength;k.negate=function(d,l){return d[0]=-l[0],d[1]=-l[1],d};k.normalize=function(d,l){var a=l[0],c=l[1],a=a*a+c*c;return 0Math.abs(u)? -(a[0]=0.5*h+0.5*p,a[1]=0.5*k+0.5*v,a[2]=0.5*m+0.5*e,a[3]=0.5*n+0.5*w,a):(x=Math.sin((1-f)*F)/u,y=Math.sin(f*F)/u,a[0]=h*x+p*y,a[1]=k*x+v*y,a[2]=m*x+e*y,a[3]=n*x+w*y,a))};h.invert=function(a,c){var e=c[0],f=c[1],h=c[2],k=c[3],m=e*e+f*f+h*h+k*k,m=m?1/m:0;return a[0]=-e*m,a[1]=-f*m,a[2]=-h*m,a[3]=k*m,a};h.conjugate=function(a,c){return a[0]=-c[0],a[1]=-c[1],a[2]=-c[2],a[3]=c[3],a};h.length=m.length;h.len=h.length;h.squaredLength=m.squaredLength;h.sqrLen=h.squaredLength;h.normalize=m.normalize;h.str= +f=a[5];d[1]=a[3];d[2]=a[6];d[3]=c;d[5]=a[7];d[6]=e;d[7]=f}else d[0]=a[0],d[1]=a[3],d[2]=a[6],d[3]=a[1],d[4]=a[4],d[5]=a[7],d[6]=a[2],d[7]=a[5],d[8]=a[8];return d};h.invert=function(d,a){var c=a[0],e=a[1],f=a[2],h=a[3],p=a[4],I=a[5],r=a[6],k=a[7],w=a[8],s=w*p-I*k,m=-w*h+I*r,t=k*h-p*r,x=c*s+e*m+f*t;return x?(x=1/x,d[0]=s*x,d[1]=(-w*e+f*k)*x,d[2]=(I*e-f*p)*x,d[3]=m*x,d[4]=(w*c-f*r)*x,d[5]=(-I*c+f*h)*x,d[6]=t*x,d[7]=(-k*c+e*r)*x,d[8]=(p*c-e*h)*x,d):null};h.adjoint=function(d,a){var c=a[0],e=a[1],f=a[2], +h=a[3],p=a[4],k=a[5],r=a[6],v=a[7],w=a[8];return d[0]=p*w-k*v,d[1]=f*v-e*w,d[2]=e*k-f*p,d[3]=k*r-h*w,d[4]=c*w-f*r,d[5]=f*h-c*k,d[6]=h*v-p*r,d[7]=e*r-c*v,d[8]=c*p-e*h,d};h.determinant=function(d){var a=d[3],c=d[4],e=d[5],f=d[6],h=d[7],p=d[8];return d[0]*(p*c-e*h)+d[1]*(-p*a+e*f)+d[2]*(h*a-c*f)};h.multiply=function(d,a,c){var e=a[0],f=a[1],h=a[2],p=a[3],k=a[4],r=a[5],v=a[6],w=a[7];a=a[8];var s=c[0],m=c[1],t=c[2],x=c[3],n=c[4],q=c[5],A=c[6],B=c[7];c=c[8];return d[0]=s*e+m*p+t*v,d[1]=s*f+m*k+t*w,d[2]= +s*h+m*r+t*a,d[3]=x*e+n*p+q*v,d[4]=x*f+n*k+q*w,d[5]=x*h+n*r+q*a,d[6]=A*e+B*p+c*v,d[7]=A*f+B*k+c*w,d[8]=A*h+B*r+c*a,d};h.mul=h.multiply;h.str=function(d){return"mat3("+d[0]+", "+d[1]+", "+d[2]+", "+d[3]+", "+d[4]+", "+d[5]+", "+d[6]+", "+d[7]+", "+d[8]+")"};"undefined"!=typeof a&&(a.mat3=h);var q={};new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);q.create=function(){var d=new f(16);return d[0]=1,d[1]=0,d[2]=0,d[3]=0,d[4]=0,d[5]=1,d[6]=0,d[7]=0,d[8]=0,d[9]=0,d[10]=1,d[11]=0,d[12]=0,d[13]=0,d[14]= +0,d[15]=1,d};q.clone=function(d){var a=new f(16);return a[0]=d[0],a[1]=d[1],a[2]=d[2],a[3]=d[3],a[4]=d[4],a[5]=d[5],a[6]=d[6],a[7]=d[7],a[8]=d[8],a[9]=d[9],a[10]=d[10],a[11]=d[11],a[12]=d[12],a[13]=d[13],a[14]=d[14],a[15]=d[15],a};q.copy=function(a,c){return a[0]=c[0],a[1]=c[1],a[2]=c[2],a[3]=c[3],a[4]=c[4],a[5]=c[5],a[6]=c[6],a[7]=c[7],a[8]=c[8],a[9]=c[9],a[10]=c[10],a[11]=c[11],a[12]=c[12],a[13]=c[13],a[14]=c[14],a[15]=c[15],a};q.identity=function(a){return a[0]=1,a[1]=0,a[2]=0,a[3]=0,a[4]=0,a[5]= +1,a[6]=0,a[7]=0,a[8]=0,a[9]=0,a[10]=1,a[11]=0,a[12]=0,a[13]=0,a[14]=0,a[15]=1,a};q.transpose=function(a,c){if(a===c){var e=c[1],f=c[2],h=c[3],u=c[6],p=c[7],k=c[11];a[1]=c[4];a[2]=c[8];a[3]=c[12];a[4]=e;a[6]=c[9];a[7]=c[13];a[8]=f;a[9]=u;a[11]=c[14];a[12]=h;a[13]=p;a[14]=k}else a[0]=c[0],a[1]=c[4],a[2]=c[8],a[3]=c[12],a[4]=c[1],a[5]=c[5],a[6]=c[9],a[7]=c[13],a[8]=c[2],a[9]=c[6],a[10]=c[10],a[11]=c[14],a[12]=c[3],a[13]=c[7],a[14]=c[11],a[15]=c[15];return a};q.invert=function(a,c){var e=c[0],f=c[1], +h=c[2],u=c[3],p=c[4],k=c[5],r=c[6],v=c[7],w=c[8],s=c[9],m=c[10],t=c[11],n=c[12],q=c[13],z=c[14],A=c[15],B=e*k-f*p,C=e*r-h*p,D=e*v-u*p,E=f*r-h*k,J=f*v-u*k,K=h*v-u*r,L=w*q-s*n,M=w*z-m*n,N=w*A-t*n,O=s*z-m*q,P=s*A-t*q,Q=m*A-t*z,G=B*Q-C*P+D*O+E*N-J*M+K*L;return G?(G=1/G,a[0]=(k*Q-r*P+v*O)*G,a[1]=(h*P-f*Q-u*O)*G,a[2]=(q*K-z*J+A*E)*G,a[3]=(m*J-s*K-t*E)*G,a[4]=(r*N-p*Q-v*M)*G,a[5]=(e*Q-h*N+u*M)*G,a[6]=(z*D-n*K-A*C)*G,a[7]=(w*K-m*D+t*C)*G,a[8]=(p*P-k*N+v*L)*G,a[9]=(f*N-e*P-u*L)*G,a[10]=(n*J-q*D+A*B)*G,a[11]= +(s*D-w*J-t*B)*G,a[12]=(k*M-p*O-r*L)*G,a[13]=(e*O-f*M+h*L)*G,a[14]=(q*C-n*E-z*B)*G,a[15]=(w*E-s*C+m*B)*G,a):null};q.adjoint=function(a,c){var e=c[0],f=c[1],h=c[2],u=c[3],p=c[4],k=c[5],r=c[6],v=c[7],m=c[8],s=c[9],n=c[10],t=c[11],q=c[12],y=c[13],z=c[14],A=c[15];return a[0]=k*(n*A-t*z)-s*(r*A-v*z)+y*(r*t-v*n),a[1]=-(f*(n*A-t*z)-s*(h*A-u*z)+y*(h*t-u*n)),a[2]=f*(r*A-v*z)-k*(h*A-u*z)+y*(h*v-u*r),a[3]=-(f*(r*t-v*n)-k*(h*t-u*n)+s*(h*v-u*r)),a[4]=-(p*(n*A-t*z)-m*(r*A-v*z)+q*(r*t-v*n)),a[5]=e*(n*A-t*z)-m*(h* +A-u*z)+q*(h*t-u*n),a[6]=-(e*(r*A-v*z)-p*(h*A-u*z)+q*(h*v-u*r)),a[7]=e*(r*t-v*n)-p*(h*t-u*n)+m*(h*v-u*r),a[8]=p*(s*A-t*y)-m*(k*A-v*y)+q*(k*t-v*s),a[9]=-(e*(s*A-t*y)-m*(f*A-u*y)+q*(f*t-u*s)),a[10]=e*(k*A-v*y)-p*(f*A-u*y)+q*(f*v-u*k),a[11]=-(e*(k*t-v*s)-p*(f*t-u*s)+m*(f*v-u*k)),a[12]=-(p*(s*z-n*y)-m*(k*z-r*y)+q*(k*n-r*s)),a[13]=e*(s*z-n*y)-m*(f*z-h*y)+q*(f*n-h*s),a[14]=-(e*(k*z-r*y)-p*(f*z-h*y)+q*(f*r-h*k)),a[15]=e*(k*n-r*s)-p*(f*n-h*s)+m*(f*r-h*k),a};q.determinant=function(a){var c=a[0],e=a[1],f=a[2], +h=a[3],k=a[4],p=a[5],n=a[6],r=a[7],v=a[8],m=a[9],s=a[10],q=a[11],t=a[12],x=a[13],y=a[14];a=a[15];return(c*p-e*k)*(s*a-q*y)-(c*n-f*k)*(m*a-q*x)+(c*r-h*k)*(m*y-s*x)+(e*n-f*p)*(v*a-q*t)-(e*r-h*p)*(v*y-s*t)+(f*r-h*n)*(v*x-m*t)};q.multiply=function(a,c,e){var f=c[0],h=c[1],k=c[2],p=c[3],n=c[4],r=c[5],m=c[6],q=c[7],s=c[8],F=c[9],t=c[10],x=c[11],y=c[12],z=c[13],A=c[14];c=c[15];var B=e[0],C=e[1],D=e[2],E=e[3];return a[0]=B*f+C*n+D*s+E*y,a[1]=B*h+C*r+D*F+E*z,a[2]=B*k+C*m+D*t+E*A,a[3]=B*p+C*q+D*x+E*c,B=e[4], +C=e[5],D=e[6],E=e[7],a[4]=B*f+C*n+D*s+E*y,a[5]=B*h+C*r+D*F+E*z,a[6]=B*k+C*m+D*t+E*A,a[7]=B*p+C*q+D*x+E*c,B=e[8],C=e[9],D=e[10],E=e[11],a[8]=B*f+C*n+D*s+E*y,a[9]=B*h+C*r+D*F+E*z,a[10]=B*k+C*m+D*t+E*A,a[11]=B*p+C*q+D*x+E*c,B=e[12],C=e[13],D=e[14],E=e[15],a[12]=B*f+C*n+D*s+E*y,a[13]=B*h+C*r+D*F+E*z,a[14]=B*k+C*m+D*t+E*A,a[15]=B*p+C*q+D*x+E*c,a};q.mul=q.multiply;q.translate=function(a,c,e){var f=e[0],h=e[1];e=e[2];var k,p,n,r,m,q,s,F,t,x,y,z;return c===a?(a[12]=c[0]*f+c[4]*h+c[8]*e+c[12],a[13]=c[1]*f+ +c[5]*h+c[9]*e+c[13],a[14]=c[2]*f+c[6]*h+c[10]*e+c[14],a[15]=c[3]*f+c[7]*h+c[11]*e+c[15]):(k=c[0],p=c[1],n=c[2],r=c[3],m=c[4],q=c[5],s=c[6],F=c[7],t=c[8],x=c[9],y=c[10],z=c[11],a[0]=k,a[1]=p,a[2]=n,a[3]=r,a[4]=m,a[5]=q,a[6]=s,a[7]=F,a[8]=t,a[9]=x,a[10]=y,a[11]=z,a[12]=k*f+m*h+t*e+c[12],a[13]=p*f+q*h+x*e+c[13],a[14]=n*f+s*h+y*e+c[14],a[15]=r*f+F*h+z*e+c[15]),a};q.scale=function(a,c,e){var f=e[0],h=e[1];e=e[2];return a[0]=c[0]*f,a[1]=c[1]*f,a[2]=c[2]*f,a[3]=c[3]*f,a[4]=c[4]*h,a[5]=c[5]*h,a[6]=c[6]*h, +a[7]=c[7]*h,a[8]=c[8]*e,a[9]=c[9]*e,a[10]=c[10]*e,a[11]=c[11]*e,a[12]=c[12],a[13]=c[13],a[14]=c[14],a[15]=c[15],a};q.rotate=function(a,c,f,h){var k=h[0],u=h[1];h=h[2];var p=Math.sqrt(k*k+u*u+h*h),n,r,m,q,s,F,t,x,y,z,A,B,C,D,E,J,K,L,M,N,O,P,Q,G;return Math.abs(p)Math.abs(t)? +(a[0]=0.5*h+0.5*q,a[1]=0.5*k+0.5*v,a[2]=0.5*m+0.5*e,a[3]=0.5*n+0.5*w,a):(x=Math.sin((1-f)*F)/t,y=Math.sin(f*F)/t,a[0]=h*x+q*y,a[1]=k*x+v*y,a[2]=m*x+e*y,a[3]=n*x+w*y,a))};h.invert=function(a,c){var e=c[0],f=c[1],h=c[2],k=c[3],m=e*e+f*f+h*h+k*k,m=m?1/m:0;return a[0]=-e*m,a[1]=-f*m,a[2]=-h*m,a[3]=k*m,a};h.conjugate=function(a,c){return a[0]=-c[0],a[1]=-c[1],a[2]=-c[2],a[3]=c[3],a};h.length=m.length;h.len=h.length;h.squaredLength=m.squaredLength;h.sqrLen=h.squaredLength;h.normalize=m.normalize;h.str= function(a){return"quat("+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+")"};"undefined"!=typeof a&&(a.quat=h)})(a)})();Pixel.BROWSER_TYPE_CHROME="chrome";Pixel.BROWSER_TYPE_SAFARI="safari";Pixel.BROWSER_TYPE_FIREFOX="firefox";Pixel.BROWSER_TYPE_IPHONE="iphone";Pixel.RENDERER_2D=0;Pixel.RENDERER_WEBGL=1;Pixel.LINE_CAP_NORMAL=0;Pixel.LINE_CAP_ROUND=1;Pixel.LINE_CAP_SQUARE=2;Pixel.TEXT_ALIGN_LEFT=0;Pixel.TEXT_ALIGN_CENTER=1;Pixel.TEXT_ALIGN_RIGHT=2;Pixel.TEXT_BASELINE_TOP=0;Pixel.TEXT_BASELINE_HANGING=1; Pixel.TEXT_BASELINE_MIDDLE=2;Pixel.TEXT_BASELINE_BOTTOM=3;Pixel.OBJECT_SHAPE_RECT=0;Pixel.OBJECT_SHAPE_CIRCLE=1;Pixel.ALIGNMENT_LEFT_TOP=0;Pixel.ALIGNMENT_LEFT_CENTER=1;Pixel.ALIGNMENT_LEFT_BOTTOM=2;Pixel.ALIGNMENT_RIGHT_TOP=3;Pixel.ALIGNMENT_RIGHT_CENTER=4;Pixel.ALIGNMENT_RIGHT_BOTTOM=5;Pixel.ALIGNMENT_CENTER_TOP=6;Pixel.ALIGNMENT_CENTER_BOTTOM=7;Pixel.ALIGNMENT_CENTER_CENTER=8;Pixel.MOUSE_DOWN_EVENT="PIXEL_MOUSE_DOWN_EVENT";Pixel.MOUSE_DOWN_INSIDE_EVENT="PIXEL_MOUSE_DOWN_INSIDE_EVENT"; Pixel.MOUSE_MOVE_EVENT="PIXEL_MOUSE_MOVE_EVENT";Pixel.MOUSE_UP_EVENT="PIXEL_MOUSE_UP_EVENT";Pixel.MOUSE_UP_INSIDE_EVENT="PIXEL_MOUSE_UP_INSIDE_EVENT";Pixel.KEY_DOWN_EVENT="PIXEL_KEY_DOWN_EVENT";Pixel.KEY_PRESS_EVENT="PIXEL_KEY_PRESS_EVENT";Pixel.KEY_UP_EVENT="PIXEL_KEY_UP_EVENT";Pixel.log=function(a){console.log("PixelJS: "+a)};Pixel.isTouchDevice=function(){return"ontouchstart"in window};Pixel.getDeviceScale=function(){return window.devicePixelRatio}; @@ -58,7 +58,7 @@ Pixel.Color.prototype.toRGBAString=function(){return Pixel.getColorAsRGBAString( Pixel.rgbToHsl=function(a,c,e){a/=255;c/=255;e/=255;var f=Math.max(a,c,e),h=Math.min(a,c,e),k,n=(f+h)/2;if(f==h)k=h=0;else{var m=f-h,h=0.5e&&(e+=1);1e?c:e<2/3?a+6*(c-a)*(2/3-e):a},h=0.5>e?e*(1+c):e+c-e*c,k=2*e-h;e=f(k,h,a+1/3);c=f(k,h,a);a=f(k,h,a-1/3)}return{r:255*e,g:255*c,b:255*a}}; Pixel.rgbToHsv=function(a,c,e){a/=255;c/=255;e/=255;var f=Math.max(a,c,e),h=Math.min(a,c,e),k,n=f-h;if(f==h)k=0;else{switch(f){case a:k=(c-e)/n+(ca&&f>c||e=c},m=function(a,c){return Math.min(a,c)},p=function(a,c){return Math.max(a,c)},d={thereYet:n,cap:m},n={thereYet:n,cap:m};0=c},m=function(a,c){return Math.min(a,c)},q=function(a,c){return Math.max(a,c)},d={thereYet:n,cap:m},n={thereYet:n,cap:m};0