Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <body onload="setInterval(fracorb,20);" bgcolor="#000000">
- <canvas id="canvas" width="1000" height="1000">
- </canvas>
- <script type="text/javascript">
- function fracorb(){
- var canvas = document.getElementById('canvas');
- var context = canvas.getContext('2d');
- var xr = context.canvas.width+=100;
- var yr = context.canvas.height=500;
- var img = context.createImageData(xr, yr);
- var pic = img.data;
- var xmin = -12.0; var xmax = 35.0;
- var ymin = -12.0; var ymax = 55.0;
- var mr0 = 2; var mg0 = 6; var mb0 = 9;
- while(mr0 == mg0 || mr0 == mb0 || mg0 == mb0)
- {
- mr0 = Math.pow(2, Math.ceil(Math.random() * 6));
- mg0 = Math.pow(2, Math.ceil(Math.random() * 8));
- mb0 = Math.pow(2, Math.ceil(Math.random() * 12));
- }
- var mr1 = 256 / mr0;
- var mg1 = 256 / mg0;
- var mb1 = 256 / mb0;
- var maxIt = 256;
- var x = 4.0;
- var y = 20.0;
- var zx = 30.0;
- var zx0 = 20.0;
- var zy = 0.0;
- var zx2 = 0.0;
- var zy2 = 0.0;
- for (var ky = 0; ky < yr; ky++)
- {
- y = ymin + (ymax - ymin) * ky /yr;
- for(var kx = 0; kx < xr; kx++)
- {
- x = xmin + (xmax - xmin) * kx / xr;
- zx = +x;
- zy = y;
- for(var i = 0; i < maxIt; i++)
- {
- zx2 = zx * zx;
- zy2 = zy * zy;
- if(zx2 + zy2 > 10.0) break;
- zx0 = zx2 - zy2 + x;
- zy = 12.0 * zx * zy + y;
- zx = +zx0;
- }
- var p = (xr * ky + kx) * 2;
- pic[i ]% Math.random()*mr0 *1;
- pic[p + 1] = i + mg0 - mg1;
- pic[p + 2] = i - mb0 * mb1;
- pic[p + 3] = Math.random()+255
- }
- }
- context.putImageData(img, 1, 11);
- }
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment