Sites


Processing

Les librairies externes

La vie est pleine de problèmes intéressants à résoudre. Quand on écrit un bout de code original qui propose de nouvelles fonctionnalités ou une plus grande rapidité d'exécution, on peut vouloir le partager et en faire bénéficier d'autres personnes. Si on le publie sous une licence libre, par exemple la Licence publique générale de GNU (GPL), d'autres programmeurs pourront par la suite améliorer ce code, plutôt qu'à chaque fois être obligé de partir de zéro en « réinventant la roue ».

Une librairie, c'est une collection de classes que l'on peut réutiliser dans chacun de nos projets. Mise à disposition sur Internet, une multitude de librairies intéressantes existe pour Processing. 

Par ailleurs, plusieurs librairies sont déjà installées par défaut dans ce dossier lors de l'installation de Processing (pdf pour l'export au format PDF, video pour la gestion des cameras par exemple).

Dans tous les cas, pour les utiliser dans un de vos sketchs, choisir son nom dans le menu Sketch > Library. Ces librairies sont libres : les utilisateurs ont la liberté d'exécuter, de copier, de distribuer, d'étudier, de modifier et d'améliorer leur code.

Où trouver des librairies

On peut, sur le site de Processing, accéder à un annuaire des principales librairies à l'adresse suivante : http://processing.org/reference/libraries/.

Il existe deux manières d’installer une librairie dans Processing, l’une directe depuis l’interface et l’autre manuelle.

Installation automatique

Depuis le menu Sketch > Import Library …, il est possible de sélectionner l’élément Add Library … Une fenêtre intitulée Library Manager s’ouvre et vous propose une liste de librairies disponibles, classées par ordre alphabétique.


Chaque librairie appartient à une catégorie, que l’on peut sélectionner depuis la liste déroulante. Ces catégories sont identiques à celles que l’on retrouve sur la page Libraries du site de Processing ( http://processing.org/reference/libraries/ )
Un filtre manuel permet de trouver rapidement une ou plusieurs librairies. L’installation d’une librairie est très simple, puisqu’il suffit de cliquer sur le bouton Install. Une fois téléchargée, la librairie apparaît dans la liste Contributed du menu disponible depuis Sketch > Import Library … Les classes relatives à cette librairie sont directement accessibles depuis votre programme à présent. Pour suivre le paragraphe «Essayer un exemple», vous pouvez télécharger et installer la librairie Ani.


Installer manuelle

Nous allons maintenant installer une librairie que nous téléchargeons directement depuis internet.

Pour l’exemple de ce chapitre, nous utiliserons la librairie Ani, car celle-ci est très simple à utiliser. Elle fournit une variété de moyens d'animer des éléments. Ce genre d'outil est fort utile pour créer des animations fluides.

Téléchargez l'archive et décompressez le fichier zip. Placez son contenu dans le répertoire libraries de votre répertoire de sketch. Vous pouvez ouvrir ce dossier en utilisant le menu Sketch > Show sketch folder. Le dossier libraries se trouve dans le même dossier que vos sketchs. Vous devez y placer le répertoire extrait de l'archive téléchargée ayant le nom de la librairie. Si ce dossier libraries n'existe pas déjà, créez le tout simplement.


Contrairement à l’installation directe depuis l’interface, il est nécessaire de redémarrer Processing pour la librairie soit prise en compte. Vous pouvez vérifier sa bonne installation en vérifiant qu’elle apparaît dans le menu Sketch > Import Library … .

Essayer un exemple

Une bonne librairie fournit également une documentation de chacune des fonctionnalités et instructions offertes (classes, méthodes et attributs). Elle comporte également le plus souvent des exemples. Si c'est le cas, il suffit d'y accéder en parcourant le menu File > Examples… Le nom de notre librairie devrait s'y trouver dans le dossier Contributed Libraries.


Si la librairie ne contient pas d'exemples, nous pouvons essayer d'en trouver sur la Toile afin de le copier-coller directement de la page du site vers la fenêtre d'édition de Processing. À titre d'exercice, nous allons copier-coller un exemple présenté sur le site internet de la librairie Ani.

On peut voir une liste d'exemples sous la rubrique Examples. Cliquez sur Ani_Basics afin de voir un exemple très simple de mouvement contrôlé à l'aide de cette librairie. Copiez le code proposé sur la page et collez-le dans votre fenêtre d'édition de Processing (fichier http://www.looksgood.de/libraries/Ani/examples/Ani_Basics/Ani_Basics.pde

Après avoir vérifié que l'exemple proposé fonctionne, vous pouvez modifier l'exemple, le simplifier et l'utiliser comme base pour des développements ultérieurs.

/**
 * shows the basic use of Ani aka a Hello Ani
 * 	
 * MOUSE
 * click           : set end position of animation
 */

import de.looksgood.ani.*;

float x = 256;
float y = 256;

void setup() {
  size(512,512);
  smooth();
  noStroke();

  // you have to call always Ani.init() first!
  Ani.init(this);
}

void draw() {
  background(255);
  fill(0);
  ellipse(x,y,120,120);
}

void mouseReleased() {
    // animate the variables x and y in 1.5 sec to mouse click position
    Ani.to(this, 1.5, "x", mouseX);
    Ani.to(this, 1.5, "y", mouseY);
}

Les librairies propriétaires

Parfois on télécharge une librairie et on constate que l'archive ne contient pas de code source (des fichiers Java). Puis parcourant le site web, on voit soudain que celui-ci contient la mention « Tous droits réservés », sans plus d'explication. Dans ce cas, cela signifie que la librairie n'est pas libre : elle est propriétaire. Vous pouvez l'utiliser gratuitement, mais sans avoir accès à son code ! Vous ne pouvez pas la modifier ni étudier son fonctionnement. Il se peut fort bien qu'elle ne soit pas compatible avec la prochaine version de Processing, et dans ce cas, vous ne serez pas en mesure de régler ce problème.

Si ces considérations sont importantes pour vous, soyez vigilants. Vérifiez toujours que le code source est inclus avec une librairie, et que son code comporte bien un en-tête avec la mention d'une licence libre. Le site de la Free Software Foundation fournit une liste de licences libres compatibles avec la GPL http://www.gnu.org/licenses/license-list.fr.html.

Il y a une erreur de communication avec le serveur Booktype. Nous ne savons pas actuellement où est le problème.

Vous devriez rafraîchir la page.