changeset 27:a5504f7d1487

Merge
author Becky Stewart <rebecca.stewart@eecs.qmul.ac.uk>
date Thu, 17 Feb 2011 18:08:51 +0000
parents 70dc11487078 (current diff) dae2a0d963d5 (diff)
children a3656215878b
files Ableton Project/osc_input.amxd of/frabk.ttf
diffstat 7 files changed, 650 insertions(+), 87 deletions(-) [+]
line wrap: on
line diff
Binary file Ableton Project/Ableton.als has changed
Binary file Ableton Project/osc_input.amxd has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Abletons max connection.maxpat	Thu Feb 17 18:08:51 2011 +0000
@@ -0,0 +1,619 @@
+{
+	"patcher" : 	{
+		"fileversion" : 1,
+		"rect" : [ 204.0, 44.0, 988.0, 691.0 ],
+		"bglocked" : 0,
+		"defrect" : [ 204.0, 44.0, 988.0, 691.0 ],
+		"openrect" : [ 0.0, 0.0, 0.0, 0.0 ],
+		"openinpresentation" : 0,
+		"default_fontsize" : 12.0,
+		"default_fontface" : 0,
+		"default_fontname" : "Arial",
+		"gridonopen" : 0,
+		"gridsize" : [ 15.0, 15.0 ],
+		"gridsnaponopen" : 0,
+		"toolbarvisible" : 1,
+		"boxanimatetime" : 200,
+		"imprint" : 0,
+		"enablehscroll" : 1,
+		"enablevscroll" : 1,
+		"devicewidth" : 0.0,
+		"boxes" : [ 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "udpsend localhost 12344",
+					"id" : "obj-32",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 0,
+					"patching_rect" : [ 747.0, 573.0, 144.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "prepend /person",
+					"id" : "obj-31",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 1,
+					"outlettype" : [ "" ],
+					"patching_rect" : [ 736.0, 533.0, 98.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "pak i f f f",
+					"id" : "obj-30",
+					"fontname" : "Arial",
+					"numinlets" : 4,
+					"fontsize" : 12.0,
+					"numoutlets" : 1,
+					"outlettype" : [ "" ],
+					"patching_rect" : [ 728.0, 454.0, 59.5, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "flonum",
+					"id" : "obj-29",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "float", "bang" ],
+					"patching_rect" : [ 866.0, 403.0, 80.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "flonum",
+					"id" : "obj-27",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "float", "bang" ],
+					"patching_rect" : [ 794.0, 403.0, 50.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "flonum",
+					"id" : "obj-25",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "float", "bang" ],
+					"patching_rect" : [ 723.0, 399.0, 50.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "number",
+					"id" : "obj-23",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "int", "bang" ],
+					"patching_rect" : [ 653.0, 403.0, 50.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "button",
+					"id" : "obj-21",
+					"numinlets" : 1,
+					"numoutlets" : 1,
+					"outlettype" : [ "bang" ],
+					"patching_rect" : [ 175.0, 322.0, 20.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "button",
+					"id" : "obj-19",
+					"numinlets" : 1,
+					"numoutlets" : 1,
+					"outlettype" : [ "bang" ],
+					"patching_rect" : [ 385.0, 319.0, 20.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "flush",
+					"id" : "obj-17",
+					"fontname" : "Arial",
+					"numinlets" : 2,
+					"fontsize" : 12.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "int", "int" ],
+					"patching_rect" : [ 313.0, 356.0, 36.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "message",
+					"text" : "/chord",
+					"id" : "obj-16",
+					"fontname" : "Arial",
+					"numinlets" : 2,
+					"fontsize" : 12.0,
+					"numoutlets" : 1,
+					"outlettype" : [ "" ],
+					"patching_rect" : [ 358.0, 433.0, 44.0, 18.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "udpsend 169.254.5.9 12345",
+					"id" : "obj-10",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 0,
+					"patching_rect" : [ 353.0, 538.0, 160.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "message",
+					"text" : "/pitch_vel_chan \"82 127 2\"",
+					"linecount" : 4,
+					"id" : "obj-9",
+					"fontname" : "Arial",
+					"numinlets" : 2,
+					"fontsize" : 12.0,
+					"presentation_rect" : [ 200.0, 127.0, 0.0, 0.0 ],
+					"numoutlets" : 1,
+					"outlettype" : [ "" ],
+					"patching_rect" : [ 222.0, 86.0, 50.0, 60.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "unpack 0 0 0",
+					"id" : "obj-7",
+					"fontname" : "Arial",
+					"numinlets" : 1,
+					"fontsize" : 12.0,
+					"numoutlets" : 3,
+					"outlettype" : [ "int", "int", "int" ],
+					"patching_rect" : [ 306.0, 272.0, 79.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "message",
+					"text" : "82 127 2",
+					"linecount" : 2,
+					"id" : "obj-6",
+					"fontname" : "Arial",
+					"numinlets" : 2,
+					"fontsize" : 12.0,
+					"numoutlets" : 1,
+					"outlettype" : [ "" ],
+					"patching_rect" : [ 403.0, 253.0, 50.0, 32.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "ctlout a",
+					"id" : "obj-2",
+					"fontname" : "Arial",
+					"numinlets" : 3,
+					"fontsize" : 12.0,
+					"numoutlets" : 0,
+					"patching_rect" : [ 569.0, 243.0, 49.0, 20.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "comment",
+					"text" : "OSC input is routed to instruments 1-3.",
+					"linecount" : 2,
+					"id" : "obj-54",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 16.935125,
+					"numoutlets" : 0,
+					"patching_rect" : [ 433.0, 31.91593, 176.0, 45.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "comment",
+					"text" : "value, CC number, channel",
+					"id" : "obj-43",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 8.046342,
+					"numoutlets" : 0,
+					"patching_rect" : [ 613.0, 160.0, 117.0, 16.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "zl rev",
+					"id" : "obj-39",
+					"fontname" : "Arial Bold",
+					"numinlets" : 2,
+					"fontsize" : 10.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "", "" ],
+					"patching_rect" : [ 569.0, 157.0, 36.0, 18.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "comment",
+					"text" : "Route MIDI data from Joe to the three instruments.",
+					"linecount" : 5,
+					"id" : "obj-35",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 10.0,
+					"numoutlets" : 0,
+					"patching_rect" : [ 228.0, 293.0, 71.0, 64.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "fromsymbol",
+					"id" : "obj-15",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 10.0,
+					"numoutlets" : 1,
+					"outlettype" : [ "" ],
+					"patching_rect" : [ 306.0, 218.0, 68.0, 18.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "print unhandled_osc",
+					"id" : "obj-14",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 10.0,
+					"numoutlets" : 0,
+					"patching_rect" : [ 400.0, 157.0, 109.0, 18.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "comment",
+					"text" : "From tim's Grid mapping.\nIn form: channel, CC number, value",
+					"linecount" : 2,
+					"id" : "obj-13",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 8.381793,
+					"numoutlets" : 0,
+					"patching_rect" : [ 577.0, 100.959999, 152.0, 26.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "comment",
+					"text" : "From Joe as one big string",
+					"id" : "obj-11",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 7.352522,
+					"numoutlets" : 0,
+					"patching_rect" : [ 322.0, 116.231461, 105.0, 15.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "route /cc",
+					"id" : "obj-8",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 10.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "", "" ],
+					"patching_rect" : [ 569.0, 133.0, 52.0, 18.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "route /pitch_vel_chan",
+					"id" : "obj-5",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 10.0,
+					"numoutlets" : 2,
+					"outlettype" : [ "", "" ],
+					"patching_rect" : [ 306.0, 133.0, 113.0, 18.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "udpreceive 12346",
+					"id" : "obj-3",
+					"fontname" : "Arial Bold",
+					"numinlets" : 1,
+					"fontsize" : 10.0,
+					"numoutlets" : 1,
+					"outlettype" : [ "" ],
+					"patching_rect" : [ 304.0, 42.0, 94.0, 18.0 ]
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "newobj",
+					"text" : "noteout a",
+					"id" : "obj-1",
+					"fontname" : "Arial",
+					"numinlets" : 3,
+					"fontsize" : 12.0,
+					"numoutlets" : 0,
+					"patching_rect" : [ 306.0, 404.0, 61.0, 20.0 ]
+				}
+
+			}
+ ],
+		"lines" : [ 			{
+				"patchline" : 				{
+					"source" : [ "obj-29", 0 ],
+					"destination" : [ "obj-30", 3 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-27", 0 ],
+					"destination" : [ "obj-30", 2 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-25", 0 ],
+					"destination" : [ "obj-30", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-23", 0 ],
+					"destination" : [ "obj-30", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-30", 0 ],
+					"destination" : [ "obj-31", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-31", 0 ],
+					"destination" : [ "obj-32", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-21", 0 ],
+					"destination" : [ "obj-17", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-17", 1 ],
+					"destination" : [ "obj-1", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-19", 0 ],
+					"destination" : [ "obj-17", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-19", 0 ],
+					"destination" : [ "obj-16", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-17", 0 ],
+					"destination" : [ "obj-1", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-7", 0 ],
+					"destination" : [ "obj-17", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-7", 1 ],
+					"destination" : [ "obj-17", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-16", 0 ],
+					"destination" : [ "obj-10", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-3", 0 ],
+					"destination" : [ "obj-9", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-7", 2 ],
+					"destination" : [ "obj-1", 2 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-15", 0 ],
+					"destination" : [ "obj-7", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-15", 0 ],
+					"destination" : [ "obj-6", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-39", 0 ],
+					"destination" : [ "obj-2", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-8", 0 ],
+					"destination" : [ "obj-39", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-3", 0 ],
+					"destination" : [ "obj-8", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-3", 0 ],
+					"destination" : [ "obj-5", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-5", 0 ],
+					"destination" : [ "obj-15", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-5", 1 ],
+					"destination" : [ "obj-14", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+ ]
+	}
+
+}
Binary file of/frabk.ttf has changed
--- a/of/testApp.cpp	Thu Feb 17 18:08:19 2011 +0000
+++ b/of/testApp.cpp	Thu Feb 17 18:08:51 2011 +0000
@@ -20,9 +20,6 @@
    	ofBackground(238,238,224);
    	ofEnableAlphaBlending();
    	ofSetLineWidth(12);
-
-franklinBook.loadFont("frabk.ttf", 32);
-	
 }
 
 //--------------------------------------------------------------
@@ -32,22 +29,6 @@
 	// update the open ni context and user tracker
 	context.update();
 	user.update();
-	
-}
-
-
-void testApp::getCoordinates(ofxTrackedUser* tracked, int userID){
-	//tracked = user.getTrackedUser(i);
-	
-	head[userID][0] = tracked->neck.begin.x;
-	head[userID][1] = tracked->neck.begin.y;
-	head[userID][2] = tracked->neck.begin.z;
-	
-	ofSetColor(0x00FF00);
-	outputString = "HeadX : ";
-	outputString += ofToString(head[0][0]);
-	franklinBook.drawString(outputString, 100,600);
-
 }
 
 //--------------------------------------------------------------
@@ -70,60 +51,30 @@
 	for(int i = 0; i < user.getNumTrackedUsers(); ++i) {
 		ofxTrackedUser* tracked = user.getTrackedUser(i);
 		if(tracked != NULL) {
-			
-			//getCoordinates(tracked, i);
-		//andrews code
-			int userID = i;
-
-			if (userID < 6){
-			
-			head[userID][0] = tracked->neck.begin.x;
-			head[userID][1] = tracked->neck.begin.y;
-			head[userID][2] = tracked->neck.begin.z;
-			
-			ofSetColor(0x000000);
-				outputString = "HeadX : ";
-				outputString += ofToString(head[userID][0]);
-				outputString += "  HeadY : ";
-				outputString += ofToString(head[userID][1]);
-				outputString += "  HeadZ : ";
-				outputString += ofToString(head[userID][2]);
-				
-				//outputString += ofToString(head[0][0]);
-				franklinBook.drawString(outputString, 100,600+userID*40);
-				
-			}
-			
-			//end andrew
-			
 			info << i << " neck pos: "
 				 << tracked->left_lower_arm.end.x << " " 
 				 << tracked->left_lower_arm.end.y << " "
 				 << tracked->neck.begin.z << endl; 
-			if (tracked->neck.begin.x != 0)
+if (tracked->neck.begin.x != 0)
 
-			ofSetColor(139,0,0,100);
-			ofNoFill();
-			float w = ofGetWidth();
-			float h = ofGetHeight();
-
-		ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->left_lower_arm.begin.x,tracked->left_lower_arm.begin.y,tracked->left_lower_arm.end.x,/*tracked->left_lower_arm.end.y*/ w);
-		ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->right_lower_arm.begin.x,tracked->right_lower_arm.begin.y,tracked->right_lower_arm.end.x,/*tracked->right_lower_arm.end.y*/ w);
-		ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->left_lower_leg.begin.x,tracked->left_lower_leg.begin.y,tracked->left_lower_leg.end.x,/*tracked->left_lower_leg.end.y*/ h);
-		ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->right_lower_leg.begin.x,tracked->right_lower_leg.begin.y,tracked->right_lower_leg.end.x,/*tracked->right_lower_leg.end.y*/ h);
-
-			
-		ofFill();
-		ofSetColor(255,255,100);
-		ofCircle(tracked->neck.begin.x,tracked->neck.begin.y,30);
-		ofSetColor(0);
-		ofCircle(tracked->neck.begin.x,tracked->neck.begin.y,35);
-		ofSetColor(255,255,100);
-		ofCircle(tracked->neck.begin.x,tracked->neck.begin.y,30);
-		ofSetColor(0);
-		ofCircle(tracked->neck.begin.x+10.0f,tracked->neck.begin.y,6);
-		ofCircle(tracked->neck.begin.x-10.0f,tracked->neck.begin.y,6);
-		
+ofSetColor(139,0,0,100);
+	ofNoFill();
+	float w = ofGetWidth();
+	float h = ofGetHeight();
+ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->left_lower_arm.begin.x,tracked->left_lower_arm.begin.y,tracked->left_lower_arm.end.x,/*tracked->left_lower_arm.end.y*/ w);
+ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->right_lower_arm.begin.x,tracked->right_lower_arm.begin.y,tracked->right_lower_arm.end.x,/*tracked->right_lower_arm.end.y*/ w);
+ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->left_lower_leg.begin.x,tracked->left_lower_leg.begin.y,tracked->left_lower_leg.end.x,/*tracked->left_lower_leg.end.y*/ h);
+ofBezier(tracked->neck.begin.x,tracked->neck.begin.y,tracked->neck.end.x,tracked->neck.end.y,tracked->right_lower_leg.begin.x,tracked->right_lower_leg.begin.y,tracked->right_lower_leg.end.x,/*tracked->right_lower_leg.end.y*/ h);
+ofFill();
+ofSetColor(255,255,100);
+	ofCircle(tracked->neck.begin.x,tracked->neck.begin.y,30);
+ofSetColor(0);
+ofCircle(tracked->neck.begin.x,tracked->neck.begin.y,35);
+ofSetColor(255,255,100);
+	ofCircle(tracked->neck.begin.x,tracked->neck.begin.y,30);
+	ofSetColor(0);
+ofCircle(tracked->neck.begin.x+10.0f,tracked->neck.begin.y,6);
+ofCircle(tracked->neck.begin.x-10.0f,tracked->neck.begin.y,6);
 		}
 	}
 	ofFill();
--- a/of/testApp.h	Thu Feb 17 18:08:19 2011 +0000
+++ b/of/testApp.h	Thu Feb 17 18:08:51 2011 +0000
@@ -14,8 +14,6 @@
 		void update();
 		void draw();
 
-	void getCoordinates(ofxTrackedUser* tracked, int userID);
-	
 		void keyPressed  (int key);
 		void keyReleased(int key);
 		void mouseMoved(int x, int y );
@@ -29,14 +27,6 @@
 		ofxImageGenerator image;
 		//ofImage Davy;
 		bool drawIt;
-
-		int head[6][3];//x,y,and z of the head
-		
-	ofTrueTypeFont franklinBook;
-	string outputString;
 };
 
-
-
-
 #endif
--- a/tim_grid_mapper/grid_mapper.py	Thu Feb 17 18:08:19 2011 +0000
+++ b/tim_grid_mapper/grid_mapper.py	Thu Feb 17 18:08:51 2011 +0000
@@ -17,8 +17,8 @@
 
 #### OSC OPTIONS - THESE NEED TO BE SET MANUALLY ####
 my_port = 12344 # to receive OSC messages
-joe     = ('localhost', "THIS_MUST_BE_SET")
-ableton = ('localhost', "THIS_MUST_BE_SET")
+joe     = ('localhost', 12345)
+ableton = ('localhost', 12346)
 
 ### Constants for grid mapping:
 # The range of values that the input coordinates and output values may take:
@@ -30,6 +30,7 @@
 	'pitch'	: 0,
 	'cc1'   : 0,
 	'cc2'   : 0,
+	'velocity' : 0,
 }
 MAX = {
 	'x'     : 1.,
@@ -38,6 +39,7 @@
 	'pitch' : 15,
 	'cc1'   : 127,
 	'cc2'   : 127,
+	'velocity' : 127,
 }
 
 
@@ -64,7 +66,7 @@
 def send_to_joe(data, address='/test'):
 	'''Sends `data` to Joe directly as an OSC message.
 	'''
-	message = OSCMesssage(address)
+	message = OSCMessage(address)
 	message.extend(data)
 	client.sendto(message, joe)
 	print_d('==OSC Output to Joe %s:==\n    %s' % (joe, data))
@@ -79,10 +81,10 @@
 		send_to_joe([
 			'Turn off note %i on channel %i' % (pitch, channel), 
 			    # first string is ignored
-			pitch,       # pitch to turn off
+			int(pitch),       # pitch to turn off
 			0,                                # 0 to turn note off
 			127,                # doesn't matter for note-off (but never send 0)
-			channel,
+			int(channel),
 		])
 
 
@@ -91,7 +93,8 @@
 	
 	`data` should be in form [person_id, x, y, z]
 	'''
-	pitch, velocity, channel, cc1, cc2 = grid_map(data)
+	pitch, velocity, channel, cc1, cc2 = grid_map(*data)
+	
 	
 	## Format data for Joe - done using Specification.txt on 2011-02-15
 	
@@ -109,10 +112,10 @@
 		send_to_joe([
 			'Turn on note %i on channel %i' % (pitch, channel),
 				# first value is string which is ignored
-			pitch,    
+			int(pitch),    
 			1,        # 1 to turn note on
-			velocity, 
-			channel
+			int(velocity), 
+			int(channel)
 		])