-
Live
Here is a link to my Final Project round 2.
http://www.yourbrandisyourimage.com/new/login.php
http://www.yourbrandisyourimage.com/new/index.php
Here is a link to my Final Project round 1.
http://itp.nyu.edu/~dr1248/web/week5.php
Here is a link to my Final Presentation mock-up
http://yourbrandisyourimage.com/Presentation.jpg
A one-minute sand timer or any sort of timer is used to compel players to rapidly complete their drawing and guessing.
Presentation live web
So kristin and myself created a little game for the class to play. So that you can get to know your fellow ITP classmates.
This application was created in Flash using the media server and an xml file for the images. There are two files hitting the server one in which has a button ( Kristin and I will control) and the other in which the class is going to use. Here is the MASTER control
// import the caurina tweener library
import caurina.transitions.Tweener;
import caurina.transitions.Equations;// Declare a SharedObject object
var sharedObject:SharedObject;// Declare a NetConnection Object
var netConnection:NetConnection;//var mcbutton:MovieClip = new MovieClip();
roll_btn.addEventListener(MouseEvent.CLICK, roll);// Declare a TextField
/* var textField:TextField;
// Create the textField
textField = new TextField();// Make the textField an input field
textField.type = TextFieldType.INPUT;// Set it’s position and dimensions
textField.x = 10;
textField.y = 10;
textField.width = 100;
textField.height = 100;// Set it’s starting text
textField.text = “hi”;
var tf:TextFormat= new TextFormat (“Healvetica Bold”, 20);// Add it to the display
addChild(textField);
*/// Add event listener
textField.addEventListener(TextEvent.TEXT_INPUT, textEventCallBack);trace(“starting”);
// String with URL to app on FMS
var rtmpURL:String = “rtmp://itp-flash.es.its.nyu.edu/sve204/WhiteBoard“;// Instantiate NetConnection
netConnection = new NetConnection();// Event listener, calls netStatusCallBack when a NetStatusEvent is fired
netConnection.addEventListener(NetStatusEvent.NET_STATUS,netStatusCallBack);// Connect to the application on the server
netConnection.connect(rtmpURL);
//netConnection.client = this;//sendData(startX,startY,endX,endY);
function roll(event:MouseEvent)
{
// rotate that movvieclip
var randomnumber:Number = Math.random()*360;
sharedObject.send(“rollAmount”,randomnumber);
}function rollAmount(randomnumber:Number)
{
//die_mc.gotoAndStop(getRandomNumber(1,40)));
// die_mc.rotation = randomnumber;Tweener.addTween(die_mc, {rotation:360*2+randomnumber, time:4, delay:0, transition:”linear”});
}
function textEventCallBack(textEvent:TextEvent):void
{
trace(textEvent.text);// If the text == a space
if (textEvent.text == ” “)
{
// send it
sendData(textField.text);
}
}// send the data
function sendData(dataToSend:String):void
{
sharedObject.send(“newText”,dataToSend);
}function newText(thenewdata:String):void
{
trace(thenewdata);
textField.text = thenewdata;
}// NetStatusEvent Callback
function netStatusCallBack(nsEvent:NetStatusEvent):void
{
// If we connected successfully
if (nsEvent.info.code == “NetConnection.Connect.Success”)
{
// Set up the shared object
// We’ll call it WhiteBoard, pass in the app url and not make it persistent
sharedObject = SharedObject.getRemote(“WhiteBoard”,netConnection.uri,false);
// So that when we use “send” it calls a function in this object
sharedObject.client = this;// Connect the shared object to our netConnection
sharedObject.connect(netConnection);}
else
{
// Didn’t connect
trace(“Sorry connection failed”);
}
}/// spinning pic stuff
var pHeight:Number = 200;
var pWidth:Number = 200;var listLoader:URLLoader = new URLLoader( new URLRequest(“filelist.xml”) );
var picLoader:Loader = new Loader();listLoader.addEventListener(Event.COMPLETE, gotList);
var xmlData:XML;
var numImages:Number;function gotList(evt:Event):void {
xmlData = XML(listLoader.data);
numImages = xmlData.pix.length();var stImage:String = xmlData.pix[Math.floor(numImages*Math.random())].toString();
picLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, gotPic);
picLoader.load( new URLRequest(stImage) );listLoader.removeEventListener(Event.COMPLETE, gotList);
}var thisBmp:Bitmap;
function gotPic(evt:Event):void {
thisBmp = Bitmap(picLoader.content);trace (“loaded”);
thisBmp.x = 700;
thisBmp.y = 100;var thisWidth:Number = thisBmp.width;
var thisHeight:Number = thisBmp.height;thisBmp.scaleX = pWidth/thisWidth;
thisBmp.scaleY = pHeight/thisHeight;
addChildAt(thisBmp,0);picLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE, gotPic);
btnAnother.visible = true;
}btnAnother.addEventListener(MouseEvent.CLICK, anotherPic);
function anotherPic(mevt:MouseEvent):void {
btnAnother.visible = false;
// tell the other clients that they need to display a new pic
var randomnumber = Math.floor(numImages*Math.random());
sharedObject.send(“displayPic”,randomnumber);
}function displayPic(randomnumber:int)
{
removeChild(thisBmp);textField.text = “HI:” + randomnumber;
trace (“got here with ” + randomnumber);picLoader = new Loader();
var stImage:String = xmlData.pix[randomnumber].toString();
picLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, gotPic);
picLoader.load( new URLRequest(stImage) );
}
Live Web Midterm
This project uses java and Ustream to create a community artwork over live video. This piece isn’t finished.
Mid Term: Creating Live web community art work, with text or images on a particular live location.
I am very much interested in creating art or graffiti on live feed locations. Whether it be times square or the Eiffel Tower or someones dorm room. But an emphasis will be placed on the community artwork where you can save the work that you have created or you can take a screen shot of it.
Decorate my apartment
You the community will have to decorate my room with images that you upload. There will be a live chat room so that you can comment or leave responses on the images.
Develop a page with a Flash or QuickTime embed of a live Icecast stream. Perhaps add a chat interface and have some people come and have a listen
The following assignment leverages components from the second assignment. This time a media player is added as well as live audio streaming
live web audio streaming
Web Chat Room
The assignment was to create a create an application which allows you to control and change the content that someone else is viewing on your site.
Here is a very simple web chat room using ajax and php. I also added the features where you can upload an image. Each time the page is refreshed a new image appears.
A public IRC chat room.
I believe that my experience wasn’t what I intended it to be. Firstly I was in a general discussion room, which usually tends to have the most users which was 45. The anonymous nature allowed users to not be held responsible for there comments. Secondly my story was over looked simply because my topic didn’t appeal to the community in which I had joined. If there was a fashion or celebrity siting forum I might have gotten a few responses.
My summer experience
This summer I had a very strange experience. I had just had lunch with a friend from Trinidad whom I haven’t seen in years. As I was walking down Prince street to stay on top of the latest summer men fashion attire, I noticed out of the corner of my eye an individual wearing unusual suspenders. I thought to myself “what fool is this wearing suspenders”. As I looked up to get a full visual, I noticed next to the suspender wearing lad was fashion designer Marc Jacobs. Already shocked to see such an iconic man, I was surprised when he said hello to me specifically. With a smile on my face, I entered the subway station. A woman asked me to swipe my metro card to allow her daughter to pass through as she did not have enough money on her card. Without hesitating, I let the girl use my card. Even though it cost me a metro ride, I have done a good deed for the day. As the woman walked away, I noticed she had one of the popular Marc for Marc Jacobs tote bags. Normally, I wouldn’t notice such a things, but having just seen the designer it stood out to me. Sometimes New York City can be such a small place.




Final Project: For my final project I decided to use black and white imagery. When you move the cursor the tres hold for the imagery changes creating very abstract organic images. The art work that isgenerated is created by the user and the artwork. I also intended on adding the functionality whereby the user can save a jpg of the abstract shapes created.
Midterm 2: For my mid-term I plan on creating a visual game using key iconic structures around the globe. For example the statue of liberty for New York, the pyramids and the Eiffel tower. The imagery will be revealed once the cursor is moved from left to right and the user will have 10 secs to guess the locations.
Midterm 1: The idea of a single beam of light creating various patterns and shapes intrigued me especially this one at the New York Hal of science. So for my mid-term I decided to created a similar experience but a one digital. I decided to use several shapes and patterns to create depth and form. Two images appear on screen, one being a digital shape that is then animated and the second image is using C++ to manipulate the video image.
Week 3: I had to create a painting app, something that applies colors or paint as the user moves the mouse. Here are the images from the program.
- C++ Drawing
Here is the code:
#ifndef _TEST_APP
#define _TEST_APP#include “ofMain.h”
#include “ofAddons.h”class testApp : public ofSimpleApp{
public:
void setup();
void update();
void draw();void keyPressed(int key);
void keyReleased(int key);
void mouseMoved(int x, int y );
void mouseDragged(int x, int y, int button);
void mousePressed(int x, int y, int button);
void mouseReleased();ofTexture myTexture; // openframeworks texture class
int textureWidth, textureHeight; // store width & height
};#endif
#include “testApp.h”
//————————————————————–
void testApp::setup(){// set the texture width & height
textureWidth = 256;
textureHeight = 256;// allocate (create memory) for texture
myTexture.allocate(textureWidth, textureHeight, GL_RGB);// create buffer for texture pixels
unsigned char myTextureData[textureWidth * textureHeight * 3];/*
// set the pixels (solid color)
int pixelCount = textureWidth * textureHeight;
for(int i=0; i<pixelCount; i++){
int pixelPos = i * 3;
myTextureData[pixelPos] = 255; // red
myTextureData[pixelPos+1] = 8; // green
myTextureData[pixelPos+2] = 12; // blue
}*/
// fill the pixels (with a pattern)
for(int x=0; x<textureWidth; x++){
for(int y=0; y<textureHeight; y++){// determine the position in memory for the current pixel
int pixelPos = (y * textureWidth + x) * 3;myTextureData[pixelPos] = x; // dynamic red
myTextureData[pixelPos+1] = 8; // static green
myTextureData[pixelPos+2] = y; // dynamic blue}
}// load the pixels into the texture (send to the graphics card)
myTexture.loadData(myTextureData, textureWidth, textureHeight, GL_RGB);
}//————————————————————–
void testApp::update(){}
//————————————————————–
void testApp::draw(){/*
// draw the texture once
myTexture.draw(0, 0);
*/
// draw the texture to fill the screen
for(int x=0; x<ofGetWidth(); x+=textureWidth){
for(int y=0; y<ofGetHeight(); y+=textureHeight){myTexture.draw(x, y);
}
}
}//————————————————————–
void testApp::keyPressed (int key){}
//————————————————————–
void testApp::keyReleased (int key){}
//————————————————————–
void testApp::mouseMoved(int x, int y ){
}//————————————————————–
void testApp::mouseDragged(int x, int y, int button){
}//————————————————————–
void testApp::mousePressed(int x, int y, int button){
}//————————————————————–
void testApp::mouseReleased(){}
Week 1: Our first assignment was to create an image using non traditional “pixels”, preferably physical or “analog” “Make Pixels”. Whilst eatting some of my favorite cereal Apple Jacks I decided to use it as my pixels. Firstly creating a flower and then a fish.


