0% found this document useful (0 votes)
50 views

Creative Programming - Workshop 02: Mathias Funk (ID DI), Fall 2012

This document provides an overview of an introductory creative programming workshop focusing on shapes, colors, coordinates, and animating shapes in Processing. The workshop covers drawing basic shapes like rectangles, triangles, and ellipses using different drawing modes. It also discusses the RGB color model and how to specify colors. Additionally, it demonstrates transformations like translate, scale, and rotate as well as reversing transformations. The document concludes by introducing animation concepts like declaring variables to change values over time and moving a rectangle across the screen from frame to frame.

Uploaded by

Nic
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views

Creative Programming - Workshop 02: Mathias Funk (ID DI), Fall 2012

This document provides an overview of an introductory creative programming workshop focusing on shapes, colors, coordinates, and animating shapes in Processing. The workshop covers drawing basic shapes like rectangles, triangles, and ellipses using different drawing modes. It also discusses the RGB color model and how to specify colors. Additionally, it demonstrates transformations like translate, scale, and rotate as well as reversing transformations. The document concludes by introducing animation concepts like declaring variables to change values over time and moving a rectangle across the screen from frame to frame.

Uploaded by

Nic
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Creative Programming workshop 02

Mathias Funk (ID DI), Fall 2012

What we do today

Shapes
Colors +
Coordinates

Transforming
shapes
Animating
shapes

Shapes

First running sketch

Coordinate system
size(200, 200);

(0,0)

(50,150)
(200,200)
6

Shapes
Triangle

triangle(x1, y1, x2, y2, x3, y3);


Quad

quad(x1, y1, x2, y2, x3, y3, x4, y4);


Rectangle

rect(x, y, width, height);


Ellipse

ellipse(x, y, width, height);

Rectangle Drawing Mode


rectMode(CORNER);

rectMode(CORNERS);

rectMode(CENTER);

rectMode(RADIUS);

Ellipse Drawing Mode


ellipseMode(CORNER);

ellipseMode(CORNERS);

ellipseMode(CENTER);

ellipseMode(RADIUS);

Colors

10

How colors work in Processing


Color rendering in Processing works in the additive color model: RGB
fill (<RED>, <GREEN>, <BLUE>); // all values from 0 - 255 possible

fill(255, 0, 0); // pure red


fill(0, 0, 130); // dark blue
How to get yellow?

When all values are same you will get grayscale colors (or white or black).
fill(120) is a shortcut for fill(120, 120, 120)

11

Colors...

12

Colors, really

13

Outline aka Border aka Stroke

noStroke();

stroke(0,255,0);
14

Smoothing aka Anti-Aliasing

smooth();

noSmooth();
15

Transforming shapes

16

Transformations?
translate

scale

rotate

17

Translate

18

Scale

19

Rotate

Hint: rotate(radians(30));

20

Transformation UNDO

21

Polygon shapes

22

23

Dynamics animating shapes

24

void setup( ) {
size(200, 200);
}

just once
on start up

every frame,
this happens
void draw( ) {
// erase background
background(0);
// draw some stuff
// ...
}

by the way: every


frame starts without
any transformations
25

// declare variable and set start value


int x = 0;

void setup( ) {
size(400, 400);
}

void draw( ) {
// erase background
background(0);
// add 1 to variable
x = x + 1;
// draw a rectangle of 20 by 20 pixels
rect(x, x, 20, 20);
}

just once
on start up

every frame
this happens

26

Exercises

Rotate a rectangle around the center of the window


Rotate two rectangles around each other
Bounce a rectangle o the screens borders
Bounce a rectangle ... and change the color on every bounce
Grow a rectangle and fade it out

27

Books
Must-have
Getting Started with Processing, by By Casey Reas, Ben Fry
e-Book and hard copy available from O'Reilly

Recommended-to-have
Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction
Daniel Shiffman.
Published August 2008, Morgan Kaufmann. 450 pages. Paperback.
Available from LUCID, or from Amazon
Programming Interactivity: A Designer's Guide to Processing, Arduino, and openFrameworks (Paperback) by Joshua Noble
(Author). Very good one, covers many topics in Competency II.
Available from LUCID. Also see http://programminginteractivity.com
Processing: Creative Coding and Computational Art (Foundation)
Ira Greenberg (Foreword by Keith Peters).
Published 28 May 2007, Friends of Ed. 840 pages. Hardcover.
Available from LUCID
Making Things Talk: Practical Methods for Connecting Physical Objects
Tom Igoe.
Published 28 September 2007, O'Reilly. 428 pages. Paperback.
Available from LUCID

28

More help...

http://wiki.id.tue.nl/creapro/

29

You might also like