Vicci Ho is a writer, film programmer and producer. She has written for Variety and worked for film festivals across the globe, including Toronto International Film Festival, Zurich Film Festival and directed the Hong Kong Lesbian & Gay Film Festival.  She is the President of Janitor Interactive: a production company specializing in games.

This is her personal page.

ICM Week 1 - basic drawing.

This week, my ICM homework is to create a drawing using Processing's 2D primitive shapes and basic colour functions. As a person with no background in design, computer programming and extremely limited knowledge in even using PhotoShop, I came up with a very simple idea. I initially drew this picture of a figure with a soccer ball with most basic functions within the objective:

Figure with a ball

I struggled a lot with the arc function: I wanted to try and do it but couldn't understand the angles: eventually, with some help from fellow ITPers, I discovered I can use negative degrees.

That allowed me to draw the figure with pac-man hands!

final drawing

Things I wished I could do, but couldn't figure out how:

  • build an actual net with lines for the soccer net
  • paint the soccer ball with black and white colour
  • have better control of colours: for the grass and the sky...it would be pretty cool to add different shades, or build some level of progression

Here's the code I wrote to draw the picture size (800, 400); background(153, 204, 255);

//sun fill (255, 170, 45); ellipse (800, 0, 120, 120);

// figure playing soccer fill (165,42,42); rect (210, 150, 40, 70, 6); strokeWeight(2); //neck line (230, 120, 230, 150); strokeWeight(2); //head fill (255,239,213); ellipse (230,110,26,34); stroke(0); strokeWeight(2); line (225,105,225,107); line (235,105,235,107); curve (210,110,225,120,234,120,242,110);

//arms strokeWeight(2); line (210,170, 180,165); line (250,170, 265,160); line (266,160, 272,144); //hands //ellipse (180,165,18,14); //ellipse (271,144,14,18); arc(180,165,18,14,radians(-125),radians(130), PIE); arc(271,142,14,18,radians(-45),radians(240), PIE); //legs strokeWeight(2); line (225, 220, 215,275); line (235, 220, 255,275); // feet strokeWeight (1); fill (34,68,135); triangle (255,275, 255,290, 280,290); triangle (215,275, 215,290, 190,290);

//ball strokeWeight (2); fill(253); ellipse (320, 272, 30,30); // grass noStroke();

fill (0,102,0); rect(0,290, 800, 110);

//net strokeWeight (4); stroke(158); fill (235); quad(650,289, 650,150, 710, 150, 800,289);

Breadboard. Wow.

Subconscious recorder