Difference between revisions of "Processing"

From air
Jump to navigation Jump to search
Line 77: Line 77:
 
=Liens=
 
=Liens=
 
* OpenProcessing: site communautaire de scketches Processing http://www.openprocessing.org
 
* OpenProcessing: site communautaire de scketches Processing http://www.openprocessing.org
* Processing.js avec [http://jashkenas.github.com/coffee-script/ CoffeeScript] : http://dry.ly/2011/02/21/coffeescript--processingjs--crazy-delicious/
+
* Processing.js avec [http://jashkenas.github.com/coffee-script/ CoffeeScript] : http://dry.ly/2011/02/21/coffeescript--processingjs--crazy-delicious/ . '''Note pour le debug:''' sous Google-Chrome utiliser Tools/Developper Tools, sous FireFox utiliser l'extension Firebug.
   
 
=Livres=
 
=Livres=

Revision as of 18:25, 10 November 2011

Processing est un environnement de développement d'animation en Java simple à mettre en oeuvre. Processing est très populaire en Art génératif et interactif ou pour de la visualisation interactive de données.

La version 2.0 produit

  • des applications standalones (incluant des screensavers),
  • des apps Android (requiert le SDK Android)
  • et des applications Web en JavaScript (requiert WebGL).

Processing.JS est l'adaptation en Javascript de Processing.

Processing :: Example :: Sphere
Processing :: Example :: Bouncing Bubbles
Processing :: Example :: Menger Sponge
Processing :: Example :: Cubes in Cube



API

De nombreuses bibliotheques ont été adaptés pour Processing : OpenCV, OpenNI, ...

Serial

La communication entre un programme Processing et une carte Arduino s'effectue par l'intermédiaire la liaison série au-dessus de l'USB et s'effectue simplement au travers de l'utilisation de function série (voir les programmes Processing dans File/Examples/Libraries/Serial).

Ci-dessous le programme SerialDuplex qui permet de tester l'envoi et la reception simple de caractère. A complete par un programme correspondant sur l'Arduino

// Programme SerialDuplex 
import processing.serial.*;

Serial myPort;      // The serial port
int whichKey = -1;  // Variable to hold keystoke values
int inByte = -1;    // Incoming serial data

void setup() {
  size(400, 300);
  // create a font with the third font available to the system:
  PFont myFont = createFont(PFont.list()[2], 14);
  textFont(myFont);

  // List all the available serial ports:
  println(Serial.list());

  // I know that the first port in the serial list on my mac
  // is always my  FTDI adaptor, so I open Serial.list()[0].
  // In Windows, this usually opens COM1.
  // Open whatever port is the one you're using.
  String portName = Serial.list()[0];
  myPort = new Serial(this, portName, 9600);
}

void draw() {
  background(0);
  text("Last Received: " + inByte, 10, 130);
  text("Last Sent: " + whichKey, 10, 100);
}

void serialEvent(Serial myPort) {
  inByte = myPort.read();
}

void keyPressed() {
  // Send the keystroke out:
  myPort.write(key);
  whichKey = key;
}


Face tracking

voir Face Tracking with a Pan/Tilt Servo Bracket

avec une webcam, OpenCV et Arduino


Liens

Livres