Input States

public void updateobj()

//respond to the user input

if (isTouched && !wasTouched )
//first touch
//change the color
fColor = color(255,0,0);
//remember the velocity 
lastXVel = xVel;
lastYVel = yVel;

//stop the velocity
xVel = 0;
yVel = 0;

println("first touch");
else if ( isTouched && wasTouched )
//start dragging or something
//change the color
fColor = color(255,0,0);
xVel = 0;
yVel = 0;
println("continue to touch");

else if (!isTouched && wasTouched )
//change the color to green
fColor = color(0,255,0);

//apply normal velocity
xVel = lastXVel;
yVel = lastYVel;

println("first not touch after a touch");
//i haven't been interacted with in some time
//im bored, let me do something else

{ //on some interval, change direction
ticks = 0;

println("not touched && wasnt touched");

//respond to the environment
 //bounce off the edge
//collide with something else

//update position based on velocity
xLoc += xVel;
yLoc += yVel;


Sandboxed (no-kinect) version of Final Project for Prototyping

Download the non-kinect version of the final project point of departure.  The four classes, GroupManager, InputInf, SampleGroupObject, SampleObject are all identical, literally the same file.  The only change is to the root sketch which removes the kinect functionality altogether, and replaces its input with the mouse.  This should enable you to do all of your work and test it with the mouse without hassle.

Final Project . version 1

Today in class we will do a walk through of the core framework you will be provided with for the generation of final projects.  The files have been documented to provide you with a sample and an initial body of coments to guide you to the start.  I will continue to work on the framework to provide additional functionality for the groups as it is needed. 

It is not required, but highly recommended that you partner with a fellow classmate.  Pair programming can be an optimal way to catch bugs and work through logic problems more rapidly than by yourself.  Of course the scope of the projects should reflect two minds and bodies.

The project will use the Microsoft Kinect hardware for input and will be projected at a large scale.  We will talk through working on the project in absence of having a Kinect unit.  Of course if you are interested an able or already have a Kinect you can follow the installation instructions to run the device on your own computer.  Even if you are not running the kinect hardware on your computer you should follow the same instructions to install the libraries, etc. so that the processing code will properly compile. 

If you are working out of the lab, we will discuss other methods for developing your final projects.

Final Project Files

an apple a day ..

I have a Dr appointment this morning at 8:30.  Most likely I will be on time but there is a chance with slow traffic that I might be a few minutes late.  In that case, please prepare your assignment 4’s for review.  I would like to do a live debug session for broken or incorrectly operating sketches in class today.

Assignment 4 – Interacting with objects

Download Assignment 4 files here.  In the comments of the code you will find a series of “TODO->” messages.  These explain the scope of the assignment.  In short, add new parameters to the data file, adjust the variables and constructor arguments of the CustomClass object definition, parse the xml accordingly, adjust the updateme function in the CustomClass to create animated variable values, interact with the mouse in some way. In each case there is the commented example from the walkthrough in class today.