Page 1 of 2 http://shi!man.net/itp/classes/ppaint/ Procedural Painting, Spring 2004 Daniel Shiffman daniel.shiffman@nyu.edu http://www.shiffman.net Office Hours: Tuesday 3-5 sign up for the class list: itp-ppaint@forums.nyu.edu Course Description This introductory level course covers the basics of computer programming within the context of images, drawing and responsive visual forms. The first few weeks will focus on basic programming concepts: variables, arrays, conditional statements, and iteration. The second- half of the course will cover more advanced topics, such as recursion, image processing, and "3D" transformations. Processing ( http://www.proce55ing.net) will be used as the primary development environment for the class. Weekly assignments are required through the first part of the semester. The end of the semester is spent developing an idea for a final project and implementing it using computer programming. Syllabus Week 1 -- 1/23/04 Class Intro What is a programming? What is Processing? Concepts: data, control structures, algorithms Syntax and structure of the language (Processing -- graphic primitives and drawing attributes) handout reading: Processing Defined, Josh Nimoy's Processing Tutorial Week 2 -- 1/30/04 Variables and Conditionals Data Types Scope Truth Tables Control Flow -- selection (Processing -- setting colors and color modes) handout Week 3 -- 2/6/04 Iteration Arrays Loops (for & while) (Processing ! a little more on color, rotation) handout Week 4 -- 2/13/04 Modularity !procedures! & !functions! parameter passing (by value, by reference ! arrays) (Processing ! displaying images) handout 10/20/14, 2:34 PM daniel shi!man -- procedural painting Page 2 of 2 http://shi!man.net/itp/classes/ppaint/ Week 5 -- 2/20/04 Intro to Object Orientation handout Data & Functionality Week 6 -- 2/27/04 NO CLASS Week 7a -- 3/5/04 MIDTERM Week 7b -- 3/6/04 MAKEUP CLASS, SAT 12:30 PM -- Recursion, 2D Arrays handout READING: Computational Beauty of Nature, Flake Week 8 -- 3/12/04 Intro to !3D! Concepts Transfoms The !Stack! ! push/pop handout Reading: How 3-D Graphics Works http://www.cmspro.com/3d_graphics.htm 3D Graphics De-Mystified -- spring break -- Week 9 -- 3/26/04 Intro to Image Processing 2D Arrays cntd. thinking in 1D and 2D at the same time Point operations, Group operations, Creative Visualization handout Reading: Handout from Digital Image Processing, Baxes, 1994 Week 10 -- 4/2/04 Image Processing cntd. working with live video handout Week 11 -- 4/9/04 Propose Final Projects Intro to Computer Vision handout Week 12 -- 4/16/04 Final Projects in Progress Live Video -- background removal handout Week 13 -- 4/23/04 Final Projects in Progress Week 14 -- 4/30/04 Show your work REQUIREMENTS: (no incompletes) weekly assignments final project class participation, on time attendance site stylesheet courtesy of www.style.org