\chapter{Processing} \label{chap:processing} Processing\index{processing} est tout particulièrement adapté à la création plastique et graphique interactive et au graphisme de données, mais sa simplicité d'utilisation en fait aussi un bon support pour l'apprentissage de la logique de la programmation pour les non-programmeurs. Processing est écrit en Java\index{Java}, et est, en fait, une sorte de surcouche dont le principal intérêt est de masque la complexité de ce langage. Une opinion toute personnelle. Mais un outil digne d'intérêt. % ------------------------------------------------------------------- \section{Installation} Pour commencer, allez donc chercher le logiciel dans \texttt{http://processing.org/download}. Ensuire regardez ce qu'il y a dedans~: \begin{verbatim} tth@fubar:~/$ tar ztf ~/Downloads/processing-3.5.4-linux64.tgz | head processing-3.5.4/ processing-3.5.4/processing processing-3.5.4/tools/ processing-3.5.4/tools/MovieMaker/ \end{verbatim} La documentation officielle nous explique comment installer le tarball dans votre \$HOME. Personnellement, je n'aime pas cette solution, et je préfère nettement une installation \textsl{systemwide}, afin que tout les yusers y aient accès. Nous allons donc installer l'archive dans un répertoire adapté pour les logiciels externes~: \texttt{/usr/local/}\footnote{Certains peuvent préferer \texttt{/opt/}, mais c'est vous qui voyez\dots}, puis utiliser un lien symbolique pour lancer Processing. % % question à trancher : lien 'dur' ou symbolique ? % \begin{verbatim} tth@fubar:~$ su - Password: root@fubar:~\# cd /usr/local/ root@fubar:/usr/local \# tar zxf /home/tth/Downloads/processing-3.5.4-linux64.tgz root@fubar:/usr/local \# ln -s /usr/local/processing-3.5.4/processing bin/processing root@fubar:/usr/local \# logout tth@fubar:~$ \end{verbatim} Voilà, processing est maintenant prêt à être utilisé, modulo quelques soucis avec les items du menu "Help", que j'espère bien comprendre en plongeant dans une \textsl{stacktrace} de l'enfer. % ------------------------------------------------------------------- \section{Premiers pas} Nous allons créer une fenêtre et dessiner quelque chose dedans, ce qui semble raisonnable pour débuter\dots % ------------------------------------------------------------------- \section{Vers l'extérieur} Open Sound Control\index{OSC}, aka OSC (voir page \pageref{chap:OSC}) pour causer sur le réseau, rs232\index{rs232} pour causer avec un Arduino\index{Arduino}, % ------------------------------------------------------------------- \section{Extensions} Comment peut-on écrire une extension ? Et envisageons le pire, utiliser une bibliothèque écrite en C ? % -------------------------------------------------------------------