Allen Bevans

From BioV
Revision as of 18:06, 8 October 2008 by ABevans (talk | contribs)
Jump to navigation Jump to search

Assignment #1

A1-01: Draw three lines.

A1-02: Draw five lines.

A1-03: Draw three ellipses.

A1-04: Control the position of two lines with one variable.

A1-05: Control the position and size of two lines with two variables.

A1-06: Control the properties of two shapes with two variables.

A1-07: Create a simple, regular pattern with six lines.

A1-08: Program your pattern from Assignment 1-07 using while().

A1-09: Draw a layered form with two new loops.

A1-10: Redo Assignment 1-05 using mouseX and mouseY as the variables.

A1-11: Draw two visual elements that each move in relation to the mouse in a different way.

A1-12: Draw three visual elements that each move in relation to the mouse in a different way.

A1-13: Move a visual element across the screen. When it disappears off the edge, move it back into the frame.

A1-14: Draw a visual element that moves in relation to the mouse, but with a different relation when the mouse is pressed.

A1-15: Using if and else, make the mouse perform different actions when in different parts of the window.

A1-16: Develop a kinetic image which responds to the mouse.

Comments

Holy smokes, Allen! Nice job. JR

I agree - #16 is amazing! Shannon

Way too cool. Perhaps... psychedelic? (ah)

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-14: Create a subclass of one of the asteroids classes that adds a new capability...

Project #1

Planck Time PSA: Display the progress of time in a non-traditional way.

Project #2

proposal - pSpace

pSpace will be an applet built in processing which enables the dynamic creation and refinement of particle systems in 3D space. There will be 2 major interaction modes:

- First, the viewport mode, which displays the "live" 3D space and active particles within the space. This mode will enable navigation within the space by using the mouse and keyboard to alter the position and attitude of various cameras viewing the scene. The interaction design for this mode will emphasize using the viewport as a performative/aesthetic tool, including features such as redraw switching, camera orbit and path cycling, and generative camera motion.
- Second, control mode will overlay an interface composed of various panels. Through these panels, users can add particle systems to the space and alter their characteristics. These characteristics include spawn amount, age, particle geometry, sprite type, sprite color, attraction, mass, etc.

If time allows, controls for the creation of non-particulate objects will be implemented, such as 3d L-systems, spline nests, and other recursive or parametric objects.

Key libraries: traer.physics, Obsessive Camera Direction, controlP5 Optional libraries: surfaceLib, vector3d

Note to Instructor: Project goals that go beyond implementing the core functionality for this project will be accomplished on time-available basis. The stuff that isn't implementable by the deadline is mostly included for my own purposes, which will probably go beyond this assignment.