Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.43 KB | None | 0 0
  1. float DIST = 50; // between blocks
  2. float LINE_LENGTH = 50; // size of a block
  3.  
  4. int BLOCKS_W = 17;
  5. int BLOCKS_H = 17;
  6. void setup() {
  7. size(850, 850);
  8.  
  9. }
  10.  
  11. void draw() {
  12. background(0);
  13. //translate(DIST, DIST);
  14.  
  15. strokeWeight(2);
  16.  
  17. for (int x = 0; x < BLOCKS_W; x++) {
  18. for (int y = 0; y < BLOCKS_H; y++) {
  19. float distCenter = abs(sqrt(pow((floor(BLOCKS_W/2.0)) - x, 2.0) * pow((floor(BLOCKS_H/2.0)) - y, 2.0)));
  20. float distCenterPercent = 1.0 + ((distCenter / BLOCKS_W) * 3.0);
  21. float offsetMul = (sin(millis()/10000.0 + distCenterPercent)+1.0)/2.0;
  22. stroke(255*(0.5 + (offsetMul/2.0)));
  23. translate((LINE_LENGTH * (1.0-offsetMul)) / 2.0, (LINE_LENGTH * (1.0-offsetMul)) / 2.0);
  24. if (x >= BLOCKS_W/2 && y >= BLOCKS_H/2) {
  25. // bottom right
  26. line(
  27. x * DIST,
  28. y * DIST,
  29. x * DIST + LINE_LENGTH * offsetMul,
  30. y * DIST
  31. );
  32.  
  33. line(
  34. x * DIST,
  35. y * DIST,
  36. x * DIST,
  37. y * DIST + LINE_LENGTH * offsetMul
  38. );
  39. }
  40. if (x <= BLOCKS_W/2 && y >= BLOCKS_H/2) {
  41. // bottom left
  42. line(
  43. x * DIST + LINE_LENGTH * offsetMul,
  44. y * DIST,
  45. x * DIST,
  46. y * DIST
  47. );
  48.  
  49. line(
  50. x * DIST + LINE_LENGTH * offsetMul,
  51. y * DIST,
  52. x * DIST + LINE_LENGTH * offsetMul,
  53. y * DIST + LINE_LENGTH * offsetMul
  54. );
  55. }
  56. if (x >= BLOCKS_W/2 && y <= BLOCKS_H/2) {
  57. // top right
  58. line(
  59. x * DIST + LINE_LENGTH * offsetMul,
  60. y * DIST + LINE_LENGTH * offsetMul,
  61. x * DIST,
  62. y * DIST + LINE_LENGTH * offsetMul
  63. );
  64.  
  65. line(
  66. x * DIST,
  67. y * DIST,
  68. x * DIST,
  69. y * DIST + LINE_LENGTH * offsetMul
  70. );
  71. }
  72. if (x <= BLOCKS_W/2 && y <= BLOCKS_H/2) {
  73. // top left
  74. line(
  75. x * DIST,
  76. y * DIST + LINE_LENGTH * offsetMul,
  77. x * DIST + LINE_LENGTH * offsetMul,
  78. y * DIST + LINE_LENGTH * offsetMul
  79. );
  80.  
  81. line(
  82. x * DIST + LINE_LENGTH * offsetMul,
  83. y * DIST,
  84. x * DIST + LINE_LENGTH * offsetMul,
  85. y * DIST + LINE_LENGTH * offsetMul
  86. );
  87. }
  88. translate(-(LINE_LENGTH * (1.0-offsetMul)) / 2.0, -(LINE_LENGTH * (1.0-offsetMul)) / 2.0);
  89. }
  90. }
  91. // save frames for .mov output
  92. //saveFrame("output/lines_####.png");
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement