Difference between revisions of "Ben Unterman"

From BioV
Jump to navigation Jump to search
(Project 2: Mandala Drawing Tool)
(Assignment 3)
Line 57: Line 57:
  
 
=== Assignment 3 ===
 
=== Assignment 3 ===
 +
 +
A3-01:
 +
 +
Create a subclass of PImage that implements a
 +
 +
mosaic( int blockSize )
 +
 +
method.
 +
 +
The blockSize parameter specifies how big the mosaic block is (e.g. blockSize = 4 would mean the mosaic block size is 4 pixels by 4 pixels). The mosaic method should replace each block of pixels in the image (e.g. if blockSize = 4, each block of 4 by 4 pixels) with the average color value of the pixels in that block. Look at the Pixelate->Mosaic filter in photoshop for an example of what this image operation does. Demonstrate your new class by drawing an image with several different block sizes.
 +
 +
A3-02:
 +
 +
Write a small app that demonstrates kinetic text. Your app should allow the user to type something and move the text around in some way while they type. For example, the user might type text on a line, but slowly the words or letters start drifting apart, or perhaps the line starts bending, or the words and letters flutter to the bottom of the screen, etc. Of course you shouldn't exactly copy any of the typographic in Processing or that you find on the web (though using such examples for inspiration, as a place to start modifying code, etc. is fine).
 +
 
=== Assignment 4 ===
 
=== Assignment 4 ===
 
=== Assignment 5 ===
 
=== Assignment 5 ===

Revision as of 22:10, 31 October 2009

Assignments

Assignment 1: Some simple stuffs

To Pooya and Chris: Sorry for the messy annotations. They're starting to make more sense.

Assignment 2

  • A2-01 - Using beginShape() and endShape(), create a composition with five or more vertices.
  • A2-02 - Using beginShape() and endShape(), create a composition with ten or more vertices.
  • A2-03 - Create an image different from A2-02, but using the same vertex data.
  • A2-04 - Write a function with one parameter and demonstrate it visually.
  • A2-05 - Write a function for drawing triangles and visually demonstrate its flexibility.
  • A2-06 - Write a function with three or more parameters and visually demonstrate its flexibility.
  • A2-07 - Create a dynamic animation using the cos() function as a generator for motion.
  • A2-08 - Create a dynamic animation using the cos() and sin() function as a generator for motion.
  • A2-09 - Move two visual elements across the screen using the random() function as a generator of movement. Give each element a unique nonlinear motion.
  • A2-10 - Create an event that begins when the mouse is pressed and ends when the mouse is released.
  • A2-11 - Create a responsive image that behaves differently when the mouse is moving and the mouse is dragging.
  • A2-12 - Create a button that changes the color of the background when it is clicked.
  • A2-13 - Program your moving elements from A2-09 but use classes to represent the two visual elements.
A2-01 thru A2-13 Due: Tuesday October 6
  • A2-14 - Create a subclass of one of the asteroids classes that adds a new capability. Some examples of what you could do: create a subclass of Rocket (or ArmedRocket) that shoots flame when the thrusters are fired and/or plays a sound when thrusters are fired, create a subclass of Asteroid that know when it's been hit (instead of doing this test in loop()), create a subclass of Asteroid that splits into two smaller Asteroids when it's hit.
A2-14 Due: Thursday October 8

Assignment 3

A3-01:

Create a subclass of PImage that implements a

mosaic( int blockSize )

method.

The blockSize parameter specifies how big the mosaic block is (e.g. blockSize = 4 would mean the mosaic block size is 4 pixels by 4 pixels). The mosaic method should replace each block of pixels in the image (e.g. if blockSize = 4, each block of 4 by 4 pixels) with the average color value of the pixels in that block. Look at the Pixelate->Mosaic filter in photoshop for an example of what this image operation does. Demonstrate your new class by drawing an image with several different block sizes.

A3-02:

Write a small app that demonstrates kinetic text. Your app should allow the user to type something and move the text around in some way while they type. For example, the user might type text on a line, but slowly the words or letters start drifting apart, or perhaps the line starts bending, or the words and letters flutter to the bottom of the screen, etc. Of course you shouldn't exactly copy any of the typographic in Processing or that you find on the web (though using such examples for inspiration, as a place to start modifying code, etc. is fine).

Assignment 4

Assignment 5

Assignment 6

Projects

Project 1: Prime Time

Prime Time is an unusual clock which displays the passage of time using only prime numbers (and 0 and 1). Each numerical representation of time is broken down into its prime factors and displayed on the screen. My intention was to make an unusual clock which was nonetheless easy to read, while playing with notions of the value(s) of time and the different ways we can break down and understand increments of time (in addition to being based on a really bad pun).

Project 2: Mandala Drawing Tool

For the drawing tool assignment, I am creating a drawing tool which allows the user to create mandalas (a mandala is a circular, rotationally symmetrical meditation tool) based on lines that they draw within the interface. A line drawn by the user (while dragging the mouse) will be copied and rotated around a pre-determined centre point to create the pattern for the mandala.

Mandala Drawing Tool

Project 3

Project 4

Project 5

Project 6