Attention : ce document est en cours de rédaction.
Merci de me faire part de vos précieuses remarques (fautes, ommissions…).
Processing, d’abord créé par des artistes et pour des artistes, est devenu très populaire dans beaucoup de domaines mais aussi dans l’enseignement. Voir cet article sur Floss Manuals.
Processing peut être utilisé en ligne (il faut alors penser à supprimer l’exemple fourni par défaut) ou installé localement en le téléchargeant ici.
On peut aussi intégrer Processing dans une page web. Voir la section suivante.
Processing peut être très facilement intégré dans une page web (voir la démo). Il suffit :
<script type="text/javascript" src="chemin/vers/Processing.js"></script>
chemin/vers/Processing.js
pointe :<script type="application/processing"></script>
<canvas>
vide pour accueillir
l’animation :<canvas />
.pde
vous voulez interpréter en insérant un
balise :<canvas data-processing-sources="chemin/vers/mon.pde"></canvas>
Pour des raisons de sécurité, l’accès par Javascript à des fichiers locaux est
restreint. Si vous vouler utiliser un .pde
, il faut donc passer par un
serveur :
Voir la section de liens vers des tutoriels pour approfondir l’intégration dans une page web.
Je n’ai personnellement rien testé. Voir la section de liens vers des tutoriels pour exporter vers Android.
// Tout ceci qui suit "//" sur une même ligne est un commentaire.
// Processing n'en tient pas compte.
Ce sont les deux fonctions principales de Processing pour créer une animation.
setup
est exécutée une fois au lancement du programmedraw
est exécutée pour la construction de chaque image,
en général 25 fois par seconde, sauf si on appelle noLoop()
.On déclare les variables en tête de fichier, avant setup
.
Ensuite, avant de les utiliser, il faut les initialiser.
int
est le type des nombres entiers,float
est le plus proche des nombres réels,background(code_monochrome)
background(R,G,B)
fill
décide la couleur des prochains objets dessinés.fill(code_monochrome)
fill(R,G,B)
Les ordonnées croissantes sont vers le bas. Cela correspond aux directions de lecture des occidentaux : de gauche à droite puis de haut en bas.
text(str, x, y)
size(w, h)
ellipse(cx, cy, dx, dy) // pas d’instruction pour le cercle
rect(cx, cy, w, h)
image(img, x, y)
pixels
(variable de type tableau)loadPixels()
updatePixels()
if (condition) {
code à exécuter;
}
||
&&
mouseX
, mouseY
mousePressed