For this assignment, we had to find inspiration from old computer graphics. After looking into it and watching some videos, I found the work of a man called John Whitney. He did really cool geometric shapes and designs. Here is a picture of some of his work:

I’m really into geometric design and the movement of linear figures. I found a video on youtube where a guy explained how by using parametric equations on Processing you can create lines that move in a certain manner, and so I decided to expand what he explained into my project. Here is a video of my final product:

I chose to use block colors like black and white because I couldn’t manage to find the pastel aesthetic that Whitney had in his designs. I created three lines that went from x1 and y 1, to x6 and y6. By using the parametric equation, the lines continue to move. I just messed around for a long time with these equations, using random cos and sin within them. Attached is my code:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
static final int NUM_LINES = 15; float t; void setup () { background (30); size (1000, 1000); } void draw(){ background (0); stroke(255); strokeWeight(5); translate(width/2, height/2); for (int i = 0; i < NUM_LINES; i++){ line(x1(t + i), y1(t + i), x2(t + i), y2(t + i)); stroke(255); line(x3(t + i), y3( t + i), x4(t + i), y4(t + i)); stroke(255); line(x5(t + i), y5( t + i), x6(t + i), y6(t + i)); stroke (255); } t++; } float x1(float t){ return sin(t / 10) * 100 + sin(t / 5) * 20; } float y1(float t){ return cos (t / 10) * 100; } float x2(float t){ return sin(t / 10) * 200 + sin(t) * 2; } float y2(float t){ return cos (t / 20) * 200 + cos(t / 12) * 20; } // other group float x3(float t){ return sin(t / 20) * 200 + sin(t / 10) * 40; } float y3(float t){ return cos (t / 20) * 200; } float x4(float t){ return sin(t / 20) * 400 + sin(t) * 4; } float y4(float t){ return cos (t / 40) * 200 + cos(t / 24) * 40; } // other group float x5(float t){ return sin(t / 30) * 300 + sin(t / 10) * 70; } float y5(float t){ return cos (t / 30) * 300; } float x6(float t){ return sin(t / 30) * 700 + sin(t) * 7; } float y6(float t){ return cos (t / 70) * 300 + cos(t / 38) * 70; } |