100x100 Computational Design Challenge

Throughout 2020 I created 100 computational designs in 100 days as a way to learn creative coding and explore generative art

Day 55 - Bursts of Small Doses

burst-6.png

So, here’s a fun thing I learned making today’s sketch - I don’t like drawing! I much prefer when the computer does it for me and I can decide “yep, I like that” or “nope, not a fan”. I recall a few months ago I was chatting with Adam Morse and asked him how I can create more control in my sketches and he was kind of like…”why would you want to do that?!”. Now I get it, Adam.

Finishing up with the last Ruth Asawa piece I’ll attempt to recreate with another of her Double Sheet prints. It’s also the last in my It’s OK/Small Doses series. And yes, just realizing now that Ruth’s print looks remarkably like COVID-19, how fitting! Thanks for sticking with me as I take on these weekly themes - having to choose a totally new direction for each sketch is hard! Today’s presented a few new challenges - how to radiate text around a common point, how to flip that text horizontally, how to vary the spacing of the text within the bursts, and how to get the text bursts on the screen. Phew. I started by relying on MANY user inputs and quickly realized I was being too picky and precious and tried to eliminate them where I could and let the computer do the thinking. I can pretty confidently say that, if I was using a real rubber stamp like Ruth did, I would likely never end up with a piece I like! I much prefer the digital medium.

Sketch:

https://editor.p5js.org/chelseamwatson/present/NgzOe8-vk

  • On Click: Burst is drawn, holding longer will make it more opaque

  • Key 1: Lines of text are less spaced out

  • Key 2: Lines of text are more spaced out

  • Key Enter/Return: Resets canvas

  • Key s/S: Downloads image

Double Sheet, Ruth Asawa

Double Sheet, Ruth Asawa


DRAWINGS:


Code:

lines = 10;
space = 0;
rot = 0;
count = 0;

function setup() {
  createCanvas(700, 700);
  background(237, 230, 216);
  textFont('futura');
  textStyle(BOLD);
  textSize(12);

}

function draw() {
  fill(237, 0, 115, 10);
  if (mouseIsPressed) {

    for (x = 0; x < 360; x = x + (lines)) {
      push();
      translate(mouseX, mouseY);
      rotate(radians(x) + rot);
      text("SMALL DOSES", space, 0);
      pop();
    }
  }
}

function keyReleased() {
  if (keyCode == ENTER || keyCode == RETURN) background(237, 230, 216);
  if (key == '1') lines = 10;
  if (key == '2') lines = 30;
  if (key == 's' || key == 'S') saveCanvas();
}

function mouseReleased() {
  rot = random(0, 360); 
  count = count + 1;
  oddOrEven = (count % 2);
  if (oddOrEven == 1) {
    space = -90;
  } else {
    space = 0;
  }
}

Chelsea Watson