BrU32

JS Particle Acceleration Simulator SRC!!!!!

Sep 3rd, 2016
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. <body onload="setInterval(fracorb,20);" bgcolor="#000000">
  2. <canvas id="canvas" width="1000" height="1000">
  3.  
  4. </canvas>
  5.  
  6. <script type="text/javascript">
  7. function fracorb(){
  8. var canvas = document.getElementById('canvas');
  9. var context = canvas.getContext('2d');
  10. var xr = context.canvas.width+=100;
  11. var yr = context.canvas.height=500;
  12. var img = context.createImageData(xr, yr);
  13. var pic = img.data;
  14.  
  15. var xmin = -12.0; var xmax = 35.0;
  16. var ymin = -12.0; var ymax = 55.0;
  17.  
  18. var mr0 = 2; var mg0 = 6; var mb0 = 9;
  19. while(mr0 == mg0 || mr0 == mb0 || mg0 == mb0)
  20. {
  21. mr0 = Math.pow(2, Math.ceil(Math.random() * 6));
  22. mg0 = Math.pow(2, Math.ceil(Math.random() * 8));
  23. mb0 = Math.pow(2, Math.ceil(Math.random() * 12));
  24. }
  25. var mr1 = 256 / mr0;
  26. var mg1 = 256 / mg0;
  27. var mb1 = 256 / mb0;
  28.  
  29. var maxIt = 256;
  30. var x = 4.0;
  31. var y = 20.0;
  32. var zx = 30.0;
  33. var zx0 = 20.0;
  34. var zy = 0.0;
  35. var zx2 = 0.0;
  36. var zy2 = 0.0;
  37.  
  38. for (var ky = 0; ky < yr; ky++)
  39. {
  40. y = ymin + (ymax - ymin) * ky /yr;
  41. for(var kx = 0; kx < xr; kx++)
  42. {
  43. x = xmin + (xmax - xmin) * kx / xr;
  44. zx = +x;
  45. zy = y;
  46. for(var i = 0; i < maxIt; i++)
  47. {
  48. zx2 = zx * zx;
  49. zy2 = zy * zy;
  50. if(zx2 + zy2 > 10.0) break;
  51. zx0 = zx2 - zy2 + x;
  52. zy = 12.0 * zx * zy + y;
  53. zx = +zx0;
  54. }
  55. var p = (xr * ky + kx) * 2;
  56. pic[i ]% Math.random()*mr0 *1;
  57. pic[p + 1] = i + mg0 - mg1;
  58. pic[p + 2] = i - mb0 * mb1;
  59. pic[p + 3] = Math.random()+255
  60. }
  61. }
  62.  
  63. context.putImageData(img, 1, 11);
  64. }
  65. </script>
  66. </body>
  67. </html>
Advertisement
Add Comment
Please, Sign In to add comment