• Aucun résultat trouvé

Les graphes combinés

CHAPITRE 7. LES GRAPHES COMBINÉS de la conception des interactions

Un manipulateur est une représentation d’un objet, et surtout des commandes d’interaction qu’il sait exécuter. Il agit donc sur l’objet graphique concerné (déplacement, rotation, redimensionnement, ac-tivation d’états ou déclenchement de comportements). Les outils internes sont des actions applicables dans l’objet graphique, conformément aux actions que permet l’objet concerné et aux activités qu’il permet de réaliser (le dessin, par exemple).

Fonctionnement

Les outils internes doivent être assignés à un nœud compatible du graphe de scène. Dès lors, ils sont visibles dans la librairie des dispositifs du configurateur graphique. Ils sont activés lors de leur connexion dans un graphe d’interaction et n’agissent qu’à l’intérieur des limites graphiques du composant auquel ils sont attaché. Ils procurent un retour visuel de type curseur qu’ils se chargent d’installer dans le graphe de scène (voir figure 7.20), en amont du composant graphique auquel il sont attachés. Cela permet l’affichage de ce retour de l’outil au dessus du composant. Ensuite, lorsque le signal d’utilisation est déclenché sur l’outil (slot Use), la méthode d’action est appelée pour accomplir la tâche ou l’interaction programmée.

FIGURE7.20 –Un outil interne est attaché au composant graphique carré. Connecté dans le graphe de confi-guration (à gauche), son curseur est visible dans le composant (à droite).

Utilisation et exemples

Les outils internes ont été conçus pour remplir des tâches positionnelles. Ils doivent donc recevoir en entrée des valeurs de position (en coordonnées écran). Dès lors, deux méthodes de traitements sont possibles, caractérisant deux modes : lemode local et le mode global. Nous prendrons pour exemple de description de ces modes un outil interne de dessin (DrawInnerTool), permettant de tracer des traits sur le composant auquel il est ajouté.

Mode local

Les valeurs reçues par les slots d’entrées de coordonnées sont converties dans le système de coordon-nées local de l’objet graphique auquel est attaché l’outil. Ce mode permet une projection complète de la portée du périphérique d’entrée connecté à l’outil sur la surface visible du composant. Dans la figure 7.21 page suivante, l’outil interne de dessin est connecté à une tablette graphique en mode mode local, mode approprié aux périphériques d’entrée absolus.

7.4. POINTS D’ACCÈS AUX INTERACTIONS (IAPS)

FIGURE7.21 –Outil Interne en mode local.

Mode global

Dans ce mode, au contraire du mode local, l’outil n’opère aucune conversion sur les coordonnées et les interprète donc en coordonnées écran. Ainsi, la portée du dispositif d’entrée est projetée sur l’écran. L’outil n’est alors actif que lorsque les coordonnées reçues sont dans les limites de l’objet graphique auquel il est attaché. Dans le cas contraire, l’outil est inactif et les coordonnées sont transmises par ses slots de sortie, sans que son action soit déclenchée. Dans la figure 7.22 page suivante, deux outils internes sont connectés l’un à l’autre en mode global.

Le premier dans la chaîne, nommé GestureZone, est attaché au composant à bord bleu et son action est de reconnaître et interpréter des gestes. Ses slots d’entrée sont connectés à la sortie d’un dispositif tablette graphique. Le second outil est un outil interne de dessin, attaché au bureau de l’application. Ses slots d’entrée sont connectés aux slots de relais de l’outil de geste (outside.use, outside.x et outside.y).

Lorsque les coordonnées écran envoyées par le dispositif tablette sont dans les frontières du com-posant de reconnaissance de geste, l’outil de geste attaché est activé et ne transmet aucune valeur à l’outil de dessin du bureau. Lorsque les coordonnées sont en dehors des frontière de la zone de gestes, l’outil de gestes est désactivé et il transmet les coordonnées à l’outil de dessin du bureau. L’utilisateur peut donc dessiner n’importe où sur le bureau, excepté dans la zone de gestes où ses traits sont in-terprétés. Cette projection de zones de l’écran sur les dispositifs d’entrée est une manière efficace de construire des interactions post-WIMP, tout spécialement avec des dispositifs tels que des tablettes, tablettes écran ou écran tactiles.

La boîte à outils propose trois exemples d’outils internes : l’outil interne de dessin, l’outil interne de gomme et un outil interne générique que nous détaillerons dans le chapitre suivant. Les diffé-rents mécanismes (modes de gestion des coordonnées, retour graphique et installation de l’outil) sont implémentés dans la boîte à outil et sont donc hérités lors de la création d’un nouveau type d’outil

CHAPITRE 7. LES GRAPHES COMBINÉS

FIGURE7.22 –Outil Interne en mode global.

interne. Seule l’action proprement dite de l’outil doit être implémentée (l’annexe D page 45 offre plus de détails techniques sur la création d’un outil interne).

7.4.5 Dispositif de l’application

Une dernière notion peut être assimilée à un point d’accès à l’interaction, bien que le dispositif en résultant ne réalise pas directement une connexion entre le graphe d’interaction et le graphe de scène : ledispositif de l’application.

Les dispositifs présentés précédemment permettent essentiellement de contrôler les outils, de spé-cifier des interactions et comportements pour l’interface au niveau des activités que permet l’appli-cation (dessin dans des composants, déplacement d’objets, affichage de données, etc.). Le dispositif de l’application ne permet pas le contrôle d’objets graphiques mais des fonctionnalités globales, c’est à dire au dessus du graphe de scène. Ainsi, il peut proposer des fonctionnalités telles que le dé-placement ou le redimensionnement de l’environnement graphique global de l’application (fenêtre système), l’ouverture du configurateur graphique ou la fermeture de l’application. La figure 7.23 page ci-contre présente un dispositif d’application.

Les fonctionnalités de base qu’il propose sous forme de slots d’entrée sont communes à toutes les applications construites avec la boîte à outils : plein écran, configuration, quitter, etc. La création de ce dispositif est dynamique, lors du lancement de l’application et il est bien sur possible de lui rajouter d’autres fonctionnalités (par programmation).

7.5. CONCLUSION

FIGURE7.23 –Dispositif de l’application. Ce dispositif, créé au démarrage de toute application MAGGLITE, permet le contrôle des fonctionnalités globales de l’application.

Ce dispositif fournit donc, au niveau de l’application, les mêmes capacités, principes de concep-tion et d’utilisaconcep-tion que ceux proposés au niveau des outils de l’applicaconcep-tion. Cela permet de proposer des interactions homogènes et d’éviter pour l’utilisateur une rupture entre les outils proposés et le contrôle global de l’application. En effet, il serait incohérent de proposer une barre de menus stan-dard d’application WIMP (fichier, éditer, etc.) dans une application avancée basée sur le dessin et la reconnaissance de gestes, comme SVALABARD, par exemple. Le dispositif de l’application permet ce contrôle avec les mêmes interactions, et autorise de fait la suppression de tous les contrôles et widgets standards si ceux-ci ne sont pas adaptés.

7.5 Conclusion

Nous avons décrit dans ce chapitre un modèle d’architecture logicielle pour la réalisation d’appli-cations interactives : les graphes combinés. Ce modèle réunis les graphes de scènes pour la description de la partie graphique, et les graphes d’interaction pour la description des comportements, dans un même paradigme flexible et clair. Cette association conjugue donc capacités d’expression et perfor-mances graphiques avec une description fine et dynamique de l’interaction.

Les graphes combinés reposent essentiellement sur la mise en relation de ces deux architectures par l’intermédiaire de modules permettant la combinaison dynamique des deux graphes : les Points d’Accès à l’Interaction (ou IAPs).

Les IAPs : le cœur des graphes combinés

Les IAPs permettent donc d’accéder au graphe de scène depuis le graphe d’interaction afin d’en définir les comportements. Dans cette optique, les quatre classes de IAPs que nous avons proposées permettent :

1. de définir des actions génériques sur une classe de composants graphiques (les dispositifs d’in-teraction) ;

2. de définir des actions particulières à un composant graphique (les manipulateurs) ; 3. de définir des comportements graphiques (les dispositifs de comportement) ;

CHAPITRE 7. LES GRAPHES COMBINÉS

Outline

Documents relatifs