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 54 - It's OK in Small Doses

ok-small-doses-1.png

Continuing on what’s apparently become Ruth Asawa week, I tried to merge the OK and Small Doses “stamps” from the last few designs in today’s sketch. The OK background helped create the newsprint effect of Ruth’s original print, while Small Doses is layered on top differently each time it’s run to create pattern and texture.

Sketch:

https://editor.p5js.org/chelseamwatson/present/K8XG_rUQ8K

Ruth Asawa, Untitled (BMC 120, Double Sheet on newsprint), ca. 1946-1949


Drawings:


Code:

off = 0;
y1 = 0;
x1 = -200;
y2 = 0;
x2 = 100;

function setup() {
  createCanvas(700, 700);
  background(237, 230, 216);
  textFont('futura');
  textStyle(BOLD);
  textSize(5);
  for (x = -5; x <= width; x = x + (10)) {
    for (y = 0; y <= height; y = y + (8)) {
      r = random(50, 100);
      fill(0, r);
      text("OK", x, y);
    }
  }
}

function draw() {

  textSize(12);
  r = random(150, 250);
  fill(237, 0, 115, r);

  off = off + 0.8;
  let nx = noise(off) * 10;

  if (y1 < 100 || y1 > 180 && y1 < 280 || y1 > 360 && y1 < 460 || y1 > 540 && y1 < 640) {
    x1 = x1 + 8
  } else {
    x1 = x1 - 8
  }

  text("SMALL DOSES", x1 + nx, y1 + nx);
  y1 = y1 + 10;

  if (y1 < 100 || y1 > 180 && y1 < 280 || y1 > 360 && y1 < 460 || y1 > 540 && y1 < 640) {
    x2 = x2 - 8
  } else {
    x2 = x2 + 8
  }

  push();
  rotate(PI);
  text("SMALL DOSES", x2 - nx, y2 - nx);
  pop();
  y2 = y2 - 10;

  if (y1 >= height) {
    r1 = random(100, 300);
    x1 = x1 + r1;
    y1 = 0;
  }
  if (y2 <= -height) {
    r2 = random(100, 300);
    x2 = x2 - r2;
    y2 = 0;
  }

}

Chelsea Watson