Table des matières

, ,

touchlib

Touchlib est une librairie sous licence BSD qui permet de créer des interfaces tactiles multitouch avec une simple webcam (comme dans cette vidéo, ou encore la table tactile surface de Microsoft). L'ennui, c'est que pour l'instant, il n'y a pas de paquet pour ubuntu donc il va falloir compiler.

Pré-requis

Installation

Installez les bibliothèques nécessaires à la compilation : libxmu-dev libxmu-headers libxmuu-dev libxpm-dev libxtrap-dev libxtst-dev libxv-dev xlibs-dev fftw-dev fftw2 glutg3 libalut-dev libalut0 libg2c0 libglui-dev libglui2c2 freeglut3-dev glutg3-dev libgle3 libgle3-dev libglew-dev libglew1 libglitz-glx1 libglitz-glx1-dev libglitz1 libglitz1-dev libglut3-dev libsage-dev libsage0 libxt-dev libcv-dev libcv1 libcvaux-dev libcvaux1 libhighgui-dev libhighgui1

Récupérez les sources :

svn co http://touchlib.googlecode.com/svn/trunk/ multitouch

Ensuite lancez la commande :

cmake .

S'il vous manque une dépendance (dans ce cas OpenGL par exemple), il y aura une ligne de ce genre

OpenGL not found - some applications may not be built

Installez-la puis relancez la commande. Une fois qu'il n'y aura plus d'erreur tapez :

make

Si la compilation plante et affiche

~/multitouch/src/RectifyFilter.cpp:32: error: ‘printf’ was not declared in this scope
make[2]: *** [src/CMakeFiles/touchlib.dir/RectifyFilter.o] Erreur 1
make[1]: *** [src/CMakeFiles/touchlib.dir/all] Erreur 2
make: *** [all] Erreur 2

Pas de panique, c'est normal :-P. Éditez le fichier

gedit ~/multitouch/src/RectifyFilter.cpp

Et rajoutez à la première ligne

#include <stdio.h>

Relancez la compilation. Si ça plante toujours, postez sur le forum

Configuration

Pour lancer la configuration, tapez

./src/configapp 

Vous aurez toute une série de fenêtres qui s'ouvriront. Pour voir comment les configurer, allez (en) ici

Utilisation

Il y a des démos disponibles dans le fichier demos. Vous pouvez maintenant vous amuser. Par exemple pour lancer l'application smoke via la commande suivante :

./multitouch/demos/smoke/smoke

Problèmes connus

Si vous avez ce genre de message quand vous lancez ./src/configapp

VIDIOC_QUERYCTRL: Erreur d'entrée/sortie
HIGHGUI ERROR: V4L2: Pixel format of incoming image is unsupported by OpenCV
Unable to stop the stream.: Mauvais descripteur de fichier
HIGHGUI ERROR: V4L: Pixel format of incoming image is unsupported by OpenCV

Il semblerait que ce soit dû à une incompatibilité entre v4l2 et OpenCV. Allez voir sur ce topic pour trouver la solution

Voir aussi


Contributeurs principaux : samuncle.

Basé sur Installing Touchlib on Ubuntu