week 2 – response

What I found interesting about the talk is that it shows a compelling exploration of the intersection between order and chaos in art. The idea that the role of an artist is to maintain order in the face of nature’s chaos resonates with my own experiences in creative work. I have often found that the introduction of random elements can lead to unexpected and exciting results, as in the example of Reas’ tissue work, inspired by Valentino Braitenberg’s hypothetical vehicles. This approach of using biological references and physical properties as a basis for artistic exploration challenges me to reconsider my creative process. How could I incorporate more natural and chaotic elements into my work without losing a sense of artistic control?

Moreover, the concept of using randomness as a starting point, for example in John Cage’s chance-based compositions, raises questions about the nature of creativity itself. I wonder about the ethical implications of using AI-generated randomness in art: does this introduce a new form of bias or remove human intuition from the equation? Also, the observation that patterns trigger the imagination makes me reflect on how we perceive and interpret randomness. Perhaps what we see as random is simply a pattern we have not yet recognized. This talk made me want to experiment with new approaches that balance control and unpredictability in my work.

Week 2 – Loops

In this project, I created a flower using functions, loops, and trigonometry to achieve a visually appealing result. I researched how to use trigonometric functions (cos and sin) using Perplexity to calculate the positions of the petals, ensuring they were evenly spaced around the center. The drawFlower function generates a layered petal effect with a color gradient,  and drawGrass adds randomness for a more natural look.

The most challenging part of the code was implementing the gradient petal effect.

// Draw the petals with a gradient effect
for (let i = 0; i < 3; i++) { // Three layers for depth
fill(255 - i * 40, 0, 0); // Darker red inner petals
stroke(0);
for (let angle = 0; angle < TWO_PI; angle += PI / 4) { // 8 petals
let petalX = x + cos(angle) * (size - i * 8);
let petalY = y + sin(angle) * (size - i * 8);
ellipse(petalX, petalY, size, size * 1.2);
}
}

This loop places 8 petals in a circular pattern around the flower’s center.

  • TWO_PI represents a full circle (360 degrees), and PI / 4 (45 degrees) is the step between each petal, so 8 petals are drawn (because TWO_PI / PI/4 = 8).

I had to carefully adjust the loop logic to reduce petal size in each layer while darkening the color for a realistic depth effect. Additionally, balancing the size, spacing, and positioning of the petals required multiple adjustments to avoid overlapping or misalignment. Another challenge was creating a natural-looking stem and leaves, ensuring they were well-proportioned with the flower.

Self-Portrait – Swan

The purpose of this assignment is to make a self-portrait using p5.js, I chose to create a visual representation of a swan. I wanted the sketch to portray a serene scene where a swan floats on water and the light blue background acts as the sky; using basic shapes such as circles, triangles, and rectangles to create a nice illustration.

I find the following part of the code the most interesting because I had to try many positions to fit the image I wanted to achieve on the swan’s head

// Beak fill('orange'); triangle(190, 180, 210, 180, 200, 170);

The layering of elements, such as the neck and head on the body, effectively mimics a real swan, while the colors chosen – light blue for the background, dark blue for the water, and white for the swan – create the harmonious visual effect I was hoping to achieve.

I plan to introduce several improvements to increase realism, such as adding shading or gradients to the swan’s body and neck to enhance depth and incorporating ripples in the water to give it a more dynamic look. Animations could also be a great idea to make the swan float smoothly on the water or move its neck gracefully.