Washington Square Arch Through Time

For our final my group, Alan, Xiping, and I, created projection of the Washington Square Arch that can be wiped away by hand to reveal newer images using the programs Isadora and Leap Motion with Processing code. As you wipe away the older image to reveal the new, sounds play that correspond to the time of the photographs. Starting with a projection of the arch in the 1880’s when horse drawn buggies would drive right through the park to current day when the sounds of the city are much different. What we hoped to reveal is how much history architecture can hold.

Although we had some trouble coming up with ideas for the final, partially due to the overwhelming expanse of the subject, it became clear that we had a few themes in mind. Below are the common notes we used when meeting to discuss our ideas:


Language vs Reality

  • The “real world” is to a large extent unconsciously built up in the language habits of the group… We see and hear and otherwise experience very largely as we do because the language habits of our community predispose certain choices of interpretation.
  • Explore how people’s cultural backgrounds affect their most basic cognitive processes: categorization, learning, causal reasoning and even attention and perception.

Online vs Offline Identity

False conceptions of truth based on memories we falsify

Creating something out of nothing

  • an image of a face or something else appears only when the smoke is there.
  • smoke and mirrors : (definition)  the obscuring or embellishing of the truth of a situation with misleading or irrelevant information.
        • What you see isn’t always what you get (also a theme)
        • gaslighting
          • create a temporary piece of art that is destroyed at the end.


  • Language, Culture, Memory


Projection mapping, 3D projection mapping?

Projection to smoke



Use projection mapping of bending a space to set up the scene, and then project voice recognized words onto smoke

Anthony McCall — pioneer works –

Gaslighting: 1. (slang; origin UK) To manipulate someone psychologically such that they question their own sanity. … The phrase “to gaslight” someone (to deliberately drive someone insane by psychologically manipulating their environment and tricking someone into believing that they are insane), was derived from the film.”

    *The term “gaslighting” comes from a 1938 stage play called Gaslight, in which a husband attempts to drive his wife crazy by dimming the lights in their home (which were natural gas-fueled fixtures), then denying that the lights had changed brightness when the wife asks him about it. Link



Immersive interactive experience where a person walks into small space and invited to interact briefly with an object in the dark. They have to say outloud what they think the object they just interacted with was but if they get anything wrong the space around them tightens physically and a flash of light (playing on “gaslighting”) goes off. The more they get wrong the more annoyances happen. (could be something obvious too, for example, bringing someone into a small space and asking them to explain something like a red apple in as many words as they can, and slowly we can tell them they’re wrong in a lot of different ways using noise and light).

3 Types of Memory: Visual, Auditory, and Kinesthetic Memory


A major breakthrough in visual memory research


“When a tiger starts to move towards you, you need to know whether it is something you are actually seeing or whether it’s just something that you remember or have imagined.”

Memory, a fundamental cognitive skill


“Types of Memory: Depending on how long, type of information, and the sensory organ”

Things We Want


A play on memory

Meeting Notes

Good vs bad memories

Ordered memory

Three types of memory:

Sensory Memory.

  • Short-Term (Working) Memory.
  • Long-Term Memory. Declarative (Explicit) and Procedural (Implicit) Memory. Episodic and Semantic Memory. Retrospective and Prospective Memory.

How to create a false memory in the audience?

As you can see from our notes, our ideas were a bit scattered and needed some honing in on. We really wanted to convey the concept of memory and I think our chosen subject of the Washington Square Arch decisively developed the direction toward retrospective memory as a result. The execution of the project consisted of writing the code for Processing and initiating OSC within Isadora in order connect our code. Leap Motion was also included as a library in order to work properly within our Processing script. Using two envelope generators in Isadora, that were set up to trigger every time a key press was initiated, we manually had to press “s” and 3″ in order to change the scenes and to switch the audio tracks correspondingly.

Coding and programming aside, there was a bit of editing work involved too. All of the photos, videos, and sounds were found online through archival libraries and simple searches and then edited in Adobe Creative Cloud.

Washington Square Arch

Processing Code:
Example: Using Syphon and OSC
With Isadora
Created by Andrew Lazarow
Nothing 2018
//import syphon library
import codeanticode.syphon.*;
//Import the oscP5 Library
import oscP5.*;
import netP5.*;
import com.onformative.leap.LeapMotionP5;
LeapMotionP5 leap;
//initiate value to receive from OSC
//Set at 1 which we can say means draw.
int OSCValue=1;
//Declare an instance of OSC, called oscP5
OscP5 oscP5;
//Declare a net address
NetAddress myRemoteLocation;
//Setting up or declaring your 'canvas' - that piece of paper
PGraphics canvas;
//This boolean restores the black background
boolean addBackground=false;
//Declare our Syphon Server
SyphonServer server;
void settings () {
size (360, 480, P3D);
//PJOGL profile = 1;
//This line is needed for older versions of Processing.
void setup () {
//Create our canvas to draw on
canvas = createGraphics(width, height, P3D);
//we want to create our syphon outpout
//Name it MySyphonOutputBlueberries
server = new SyphonServer(this, "MySyphonOutputBlueberries");
Whenever you draw on your canvas you need
to put "canvas." before any drawing call.
So let's set a black background on our canvas.
//Initiate our OSC
oscP5 = new OscP5 (this, 5001);
leap = new LeapMotionP5(this);
myRemoteLocation = new NetAddress("", 1234);
void draw () {
PVector fingerPos = leap.getTip(leap.getFinger(1));
//If Add Background is True. Then restore background
//And leave it black.
if (addBackground==true) {
canvas.fill(0, 10);
canvas.rect(0, 0, width, height);
// If addBackground is false, then draw the white ellipse
else {
//I set the fill's alpha to 80.
//A bit of a feather effect.
canvas.fill(255, 80);
//draw a circle following your mouse
//canvas.ellipse(mouseX, mouseY, 50, 50);
canvas.ellipse(fingerPos.x, fingerPos.y, 100, 100);
println ("finger position x = " + fingerPos.x);
//show our canvas in our processing window
image(canvas, 0, 0);
//send our canvas to syphon
//Your OSC Receiving event:
void oscEvent(OscMessage theOscMessage) {
// get the first value as an integer
OSCValue = theOscMessage.get(0).intValue();
// print out the message
print("OSC Message Received: ");
print(theOscMessage.addrPattern() + " " +
"is sending: ");
//If the OSC Value you get is '1' then let drawing happen
if (OSCValue==1) {
//If the value is anything else restore the black background
else {
void keyPressed() {
OscMessage myMessage = new OscMessage("/From_Processing");
//hitting 'b' restores our background.
//and acts as a toggle to restart drawing
if (key=='b') {
if (key=='s') {
oscP5.send(myMessage, myRemoteLocation);
if (key=='r') {
oscP5.send(myMessage, myRemoteLocation);
if (key=='3') {
oscP5.send(myMessage, myRemoteLocation);

Isadora Screenshots:

Screen Shot 2018-05-13 at 15.09.13

Screen Shot 2018-05-13 at 15.09.24

Sources /  Inspiration:


Downtown Doodler: Hidden History of Washington Square Park in NYC






Leave a Reply

Your email address will not be published. Required fields are marked *