I am drawn to contemporary artworks that fill the space with layers of vibrant geometric shapes. I now have a deeper understanding of how this type of artwork is created digitally with the use of algorithms, rather than being hand-drawn, and shapes respond to rules, chance, or user interaction. Likewise, play with color, adds depth and layers of light to a 2-D artwork or XR installation. Moreover, computational programming gifts us the ability to generate many series of varied but related works using the same underlying creative coding.
It's possible that I ran rapidly down the rabbit hole with the use of Variables and Conditionals. It was easy to do once I learned just enough to make me dangerous... tweak a number here, add an if and else if, and, or, not.... in addition to the joys of random values. In the images above you can see results from a few of my "experiments". Below you will find screenshots of my code in Processing next to a video of the program running.
During this Week 5 Project, I applied knowledge from previous chapters that I had not practiced in addition to new concepts from Chapter 5 of our assigned text, Learning Processing: A Beginner’s Guide to Programming Images, Animation, and Interaction. In the examples I have included here you will see examples of:
Boolean logic operators and, or, not.
Conditional statements such as if and else.
Constraints based on location
Nested conditionals if and else if.
Mouse hover and click interactions.
Relational operators such as greater and less than.
Polarity with reverse in directions.
Variable speeds.
A bonus PImage that replaces the ellipse and rectangles in the first three examples.
One challenge I faced came with the randomly appearing ellipses and rectangles example which was then updated to show the use of PImages "Flower" and "Bee". Despite having provided Xspeed and Yspeed variables as well as having established width and height, adjustments in the equations did not have the desired effects of changed speed. Finally I decided to top it off with Frame Rate to see if it would slow down the operation. You can see the difference in the comparison I provided for the last example. The first video shows the original speed utilizing the Xspeed, Yspeed, If and Or statements. After making numerous unsuccessful changes to the code, I added a Frame Rate of (5). You will see in the second video on the last row that the appearance of the flowers and bees is much less rushed.
Background divided by X=400, the vertical halfway point; Shapes change when mouseX crosses the invisible line; Circles and rectangles respond to mouse click and drag; Background changes on mouse click, and the shapes clear and begin a new trail.
PImage Bonus
Flowers and bees appearing on screen randomly at a fast rate.
Flowers and bees appearing on screen randomly more slowly with the addition of a frame rate.
Shiffman, Daniel. Learning Processing: A Beginner’s Guide to Programming Images, Animation, and Interaction. 2nd ed., Morgan Kaufmann, 2015. Kindle ed.