• Aucun résultat trouvé

POINTS D’ACCÈS AUX INTERACTIONS (IAPS) ICON a permis de séparer la gestion des entrées de la réalisation des interactions, introduisant la

Les graphes combinés

CHAPITRE 7. LES GRAPHES COMBINÉS 7.4.1 Dispositifs d’interaction

7.4. POINTS D’ACCÈS AUX INTERACTIONS (IAPS) ICON a permis de séparer la gestion des entrées de la réalisation des interactions, introduisant la

notion d’adaptabilité en entrée, offrant plus de flexibilité. Notre modèle permet cette même adaptabi-lité et flexibiadaptabi-lité au niveau de l’interaction et de son objet d’intérêt en externalisant le style d’interac-tion avec les dispositifs d’interacd’interac-tion (voir figure 7.12 page ci-contre).

Fonctionnement

Les classes de composants graphiques (nœuds du graphe de scène) déclarent leurs capacités et les dispositifs d’interaction sont spécialisés dans la gestion d’une ou plusieurs capacités particulières. Par exemple, une classe d’objets graphiques pouvant être déplacés signale cette capacité et toutes ses instance seront alors compatibles avec les dispositifs d’interaction permettant le déplacement d’objets. Ces dispositifs représentent donc des implémentations d’Interactions Génériques, n’étant pas liées aux objets eux-mêmes mais à leurs caractéristiques et possibilités.

Au niveau de l’implémentation de la boîte à outils, ces caractéristiques des classes de nœuds sont externalisées en implémentant des interfaces Java : l’interface Moveable, par exemple, rend compa-tible les futures instances avec les interactions de déplacement d’objets.

Cette modularité rend les interactions utilisables dans toutes les applications, et adaptables dyna-miquement à tous types de périphériques pour composer de nouvelles techniques d’interaction. Elles peuvent aussi être étendues à d’autres classes d’objets graphiques (et donc de tâches), il suffit pour cela que ces classes implémentent les capacités compatibles.

Enfin, la dissociation des dispositifs d’entrée, objets d’intérêt et dispositifs d’interaction implique que ces derniers reçoivent les informations nécessaires à leur application par leurs canaux d’entrée. Pour cela, il présentent en général (voir figure 7.13 page suivante) :

1. un slot de type booléen Use, qui lorsqu’il recevra une valeur permettra de déclencher ou d’in-terrompre l’interaction.

2. un slot de type Objet id, qui recevra la liste des objets auxquels l’interaction doit s’appliquer à un instant donné. Ce slot est en général connecté en sortie d’un dispositif de sélection (Pick) présenté dans la figure 7.13(a) page suivante. Il permet la sélection dans le graphe de scène des objets qui se trouvent à une position donnée (nous détaillerons le fonctionnement de ce dispositif dans la section 8.3.2 page 190 du chapitre suivant).

3. des slots de données (entier, double, chaîne de caractères, etc.) qui recevrons toutes données utiles à l’interaction. Dans nos dispositifs exemples de la figure 7.13 page suivante, qui sont des techniques de manipulation directe d’objets graphiques, ce sont les slots x et y qui recevront des valeurs de position.

Utilisation

Les dispositifs d’interaction ont un vaste champ d’application. Ils permettent de factoriser et de réutiliser le noyau d’un style d’interaction. Leur réalisation se réduit à définir les propriétés des ob-jets auxquels ils vont pouvoir s’appliquer, et à implémenter le noyau du dispositif, l’algorithme de l’interaction proprement dite. Une fois ajouté à la librairie, le dispositif est prêt à être utilisé.

MAGGLITE fournit essentiellement des dispositifs de manipulation directe tels que le dispositif Drag de la figure 7.13(b) page suivante (nous détaillons en annexe D, section D.2.1 page 52, les étapes

CHAPITRE 7. LES GRAPHES COMBINÉS

(a)Pick. (b)Drag. (c) Responsive Handle.

FIGURE 7.13 – Dispositifs d’interaction. La figure (a) présente un dispositif de sélection d’objets (Pick). La figure (c) présente un dispositif de Glisser-Déposer (Drag). La figure (c) présente un dispositif nommé

Responsive Handle, une d’interaction originale que nous avons développée.

de la conception de ce dispositif). Mais cette architecture permet aussi la réalisation de techniques de visualisation d’informations, de méthodes de saisie de texte, etc.

Exemple

Le graphe d’interaction de la figure 7.8 page 164 permet de décrire la technique d’interaction de Glisser-Déposer à partir du dispositif Drag, et de l’utiliser sur tous les objets compatibles. Dans la configuration proposée, la manipulation sera réalisée en se plaçant sur l’objet, en pressant le bouton gauche de la souris et en la déplaçant pour déplacer l’objet. Le relâchement du bouton de la souris terminera cette interaction. Toutefois, cette technique n’est pas figée, et peut être initiée par tout autre dispositif permettant de la déclencher et de la réaliser (un bouton du clavier ou une commande vocale peuvent être connectés au slot Use, des dispositifs absolus, relatifs ou même une webcam et des dis-positifs adaptateurs sur les slots x et y). Enfin, cette technique de Glisser-Déposer peut être remplacée par une autre en utilisant un autre dispositif (un exemple est donné dans la section 8.4.2 page 201 qui décrit la conception d’interfaces avec MAGGLITE).

Nous avions qualifié ces dispositifs d’implémentations d’Interactions Génériques d’un point de

vue du programmeur. Du point de vue de leurs utilisateurs (concepteurs d’interfaces ou utilisateurs) nous pouvons les qualifier d’Interactions Enfichables.

7.4.2 Manipulateurs

Contrairement aux dispositifs d’interaction, qui peuvent potentiellement agir sur n’importe quel objet du graphe de scène, les manipulateurs sont des dispositifs IAP liés à des instances, à des nœuds particuliers du graphes de scène (voir figure 7.14 page suivante). Ces dispositifs d’instance déclenchent des commandes que sait exécuter l’unique objet graphique qu’ils contrôlent : se déplacer, se redimensionner, etc.

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

FIGURE7.14 –Dispositifs manipulateurs. Un manipulateur communique avec un nœud spécifique et unique du graphe de scène.

Fonctionnement

Dès qu’un objet graphique est créé et ajouté au graphe de scène, il apparaît alors sous la forme d’un dispositif dans la bibliothèque du configurateur graphique d’ICON: son manipulateur, qui externalise les points d’entrée et de sortie pour interagir directement avec lui. Pour reprendre l’exemple d’un objet qui peut être déplacé, son manipulateur présentera alors des slots d’entrée move, prévus pour recevoir des coordonnées (absolues ou relatives). Les manipulateurs peuvent aussi présenter des slots de sortie, correspondants à des états que l’objet graphique peut transmettre.

Les manipulateurs sont générés dynamiquement et ajoutés à la bibliothèque des dispositifs lorsque des objets graphiques sont instanciés. Ainsi, à chaque capacité spéciale de l’objet correspond un slot d’entrée sur son manipulateur permettant de la déclencher et/ou un slot de sortie permettant d’y accé-der (nous détaillerons les mécanismes de génération automatique de ces dispositifs dans l’annexe C consacrée aux extensions que nous avons apportées à ICON).

Exemple

La figure 7.15 page suivante présente la connexion d’un dispositif d’entrée isométrique à six de-grés de libertés, le Magellan, au manipulateur d’un objet graphique, Thumbnails. Les axes x et z du dispositif physique sont connectés aux slots de déplacement relatif de l’objet (dx et dy) et son axe de rotation u au slot de rotation de l’objet (rotate). Les actions sur ces axes permettent donc d’agir directement sur l’objet graphique. Les signaux de chaque canaux transitent par les dispositifs de la configuration (le graphe d’interaction) et sont transmis à l’objet (le graphe de scène) par son manipu-lateur (flèches bleues de la figure 7.15 page suivante). Par contre, du point de vue de l’utilisateur, ce mécanisme est transparent et le périphérique physique est directement couplé, associé à l’objet gra-phique (flèche rouge pointillée sur la figure). Ce principe d’association directe est une manière simple et efficace de faire de la manipulation directe, en renforçant la notion de contrôle dans l’approche en flot de données.

CHAPITRE 7. LES GRAPHES COMBINÉS

FIGURE 7.15 –Manipulateur. Le dispositif du périphérique d’entrée Magellan (à gauche) est connecté aux slots de déplacement du dispositif manipulateur de l’objet graphique thumbnails (à droite). Ainsi, il est possible de déplacer directement l’objet en agissant sur le dispositif d’entrée.

7.4.3 Dispositifs de comportements

FIGURE7.16 –Dispositifs de comportement. Un dispositif de comportement est connecté en aval d’un mani-pulateur afin de communiquer avec le nœud correspondant du graphe de scène.

Lesdispositifs de comportement décrivent des comportements ou des états génériques (pulsa-tion, surlignage, « collage », etc.) qui peuvent être appliqués à n’importe quel composant ou groupe de composants de la boîte à outils. Leur place et leur fonctionnement dans le modèle des graphes combi-nés sont très liés aux manipulateurs. En effet, les dispositifs de comportement doivent être connectés aux objets graphique par l’intermédiaire de leurs manipulateurs (voir figure 7.16). Ainsi, il est possible de spécifier lors de l’exécution de l’application quel va (vont) être le(s) comportement(s) graphique(s) d’un objet de l’interface.

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

Outline

Documents relatifs