iProcessing LUCKYBITE

About iProcessing

** IMPORTANT NOTE ** Spaces within the path to the project folder can result in build errors (e.g. "error: SomeFile.h: No such file or directory"). If you are having problems building your project check that there are no spaces in the project path.

iProcessing is an open programming framework to help people develop native iPhone applications using the Processing language. It is an integration of the Processing.js library and a Javascript application framework for iPhone. The iProcessing download consists of a set of example XCode projects that demonstrate many of the Basic Examples from the Processing web site (originally written by Casey Reas and Ben Fry unless otherwise stated) as well a number that demonstrate the use of various iPhone features such as multitouch, accelerometer, orientation, location, sound play/record, app state saving and so on. It is in development and is currently used by Luckybite and other designers and students for prototyping. You are welcome to use it and if you have any comments feel free to email us here. It is unknown as to whether apps created using the framework will be approved if submitted to the App Store. The software is provided "as is" and without warranty of any kind. iProcessing was created by Tom Hulbert at Luckybite in 2009.

Processing.js is a port of the Processing langauge to Javascript by John Resig and is intended for people who want to program images, animation, and interactions for the web in Processing without the use of Java applets. Processing.js uses Javascript to draw shapes and manipulate images on the HTML5 Canvas element.

The Processing language was created by Ben Fry and Casey Reas. It evolved from ideas explored in the Aesthetics and Computation Group at the MIT Media Lab and was originally intended to be used in a Java run-time environment.

Download iProcessing for iOS 4 (0008 | 2011 02 24)

Download iProcessing for iOS 3 (0004 | 2010 02 15)

Video

Example apps using iProcessing: Chain, iPhoneGesture (source code below left), iPhoneOrientation and BirdBox prototype

Example

To the top right of the page is a video showing some examples of iProcessing apps. Below is the source code for one of these examples, iPhoneGesture. It demonstrates using the gesture functions to scale and rotate a shape.


float angle;
float startAngle;
float percent;
float startPercent;

void setup()
{
  size(320,460);
  noStroke();
  fill(255);
  frameRate(30);
  angle = 0;
  percent = 1.0;
}

void draw()
{
  background(0);

  translate(width/2, height/2);
  rotate(radians(angle));
  scale(percent);
  rectMode(CENTER);
  rect(0, 0, 115, 115);   
}

void gestureStarted() {
  startAngle = angle;
  startPercent = percent;
}

void gestureChanged() {
  angle = startAngle + gestureRotation;
  percent = startPercent * gestureScale;
  if (angle > 360) {
    angle = angle - 360;
  }
  if (angle < 0) {
    angle = 360 + angle;
  }
}

void gestureStopped() {
  startAngle = angle;
  startPercent = percent;
}

BirdBox

BirdBox is a free app by Luckybite that was prototyped using iProcessing. Luckybite developed the framework to enable them to quickly create prototype apps for the iPhone. BirdBox turns your iPhone or iPod Touch into a physical nesting box alarm clock. Tap the screen anytime to see the nesting birds inside and charge your iPhone while you sleep to wake up with the birds!