Sous-sections


4.2 Le paradigme des «Feuilles d'interaction»

L'interface de SVALABARD est une interface post-WIMP [van Dam1997]. Elle n'est donc pas basée sur les composants (widgets) rencontrés habituellement dans les interfaces (menus, boutons, barres d'outils...). Les interfaces WIMP, et les composants standards qu'elles proposent, ont fait la preuve de leur utilité dans des domaines variés, mais elles ont aussi montrés leurs limites dans le cadre d'activités telles que le dessin, n'ayant tout simplement pas été conçues pour. La première de nos lignes directrices, portant notamment sur l'aspect familier de l'environnement graphique, nous a conduit à utiliser le principe d'une feuille de papier virtuelle, support visuel de notre métaphore de table à dessin.

SVALABARD propose trois modes d'interaction distincts: dessin, interprétation du dessin et visualisation/manipulation 3D. Dans beaucoup de systèmes existants, les modes de l'interaction sont présentés sous la forme de vues multiples ou de menus et barres d'outils contextuelles. De plus, les changements de modes sont souvent explicites, l'utilisateur devant spécifier par une commande son intention de passer dans un autre mode.

Pour supporter la métaphore de la table à dessin et de la feuille virtuelle, notre interface propose des changements de mode implicites (déterminés par les phases du dessin, la compréhension et l'analyse du dessin, l'activité courante du dessinateur) et des vues superposées (par transparence ou masquage). Chaque mode, et donc chaque activité lui étant associée, est représenté par une feuille d'interaction. Dans l'esprit du modèle multi-couches ([Fekete et Beaudouin-Lafon1996,Fekete1996]), ces feuilles deviennent alors les supports d'outils et d'interactions adaptées elles aussi au mode et à l'activité correspondante. Outre son aspect pratique pour la gestion de l'interaction et les possibilités de représentation graphique qu'elle offre (superposition des différentes feuilles, vue des feuilles du dessous par transparence, masquage de feuilles), cette organisation nous a en plus permis d'évoquer les trois modes du dessin d'architecte que l'on a décrit dans la section 1.3.2:

  1. le dessin spéculatif, représenté par la feuille de dessin,
  2. le dessin prescriptif, représenté par la feuille augmentée,
  3. le dessin descriptif, représenté par la feuille 3D.
Chacune de ces feuille apparaît et s'active selon les actions de l'utilisateur. Ainsi, les comportements du système sont guidés par la tâche et non l'inverse.

Toutefois, l'utilisateur a toujours la possibilité de configurer lui même les comportements du système afin de l'adapter à ses propres goûts et méthodes de travail. Il est important que l'Homme puisse «façonner l'outil», l'adapter à ses méthodes plutôt que le contraire. Cette approche est primordiale dans le domaine d'application de nos travaux où il fut trop souvent de mise de vouloir imposer les seules méthodes qu'il était techniquement possible de réaliser. Ainsi, notre système permet de redéfinir interactivement, de manière graphique, les actions qui vont déclencher les changements de modes implicites (temps d'inactivité, phases du dessin par exemple), ou même les rendre explicites par des commandes et des interactions choisies (commande gestuelle ou vocale, touche du clavier ou boutons d'un périphérique d'entrée par exemple). Notons aussi, comme nous le verrons dans la section 4.3, que les interactions et outils proposés peuvent entièrement être adaptés et configurés (en terme de périphériques d'entrée et d'interactions).

Proposition 4..1   Au vu de ces notions, nous pouvons qualifier SVALABARD d'interface:

Détaillons maintenant ces modes, chacun étant représenté par une vue, une feuille.

4.2.1 La feuille de dessin

Il s'agit d'une feuille de papier virtuelle sur laquelle le concepteur dessine simplement (voir figure 4.3). Cette feuille représente le mode principal de SVALABARD, le mode de dessin spéculatif. Son aspect graphique évoque une feuille de papier, renforçant l'immersion du dessinateur dans un milieux familier. Plusieurs textures de papier sont proposées, paramétrables en couleur. Mais il est aussi possible d'utiliser un fond personnalisé sous forme d'image. La feuille de dessin devient ainsi plus qu'un support, mais un document à part entière, permettant de travailler à partir d'existant (simple support à la création, reconstruction de bâtiment en 3D dans l'esprit de nos travaux précédents [Huot2000,Huot et Colin2001] ou insertion dans l'existant). Dans la même optique de similarité avec l'environnement habituel du dessinateur, les traits dessinés sur cette feuille ont un aspect crayonné.

Figure 4.3: Feuille de dessin.
\includegraphics[width=\textwidth]{drawingsheet}

Ce mode de dessin à main levée ne souffre d'aucune contraintes, ce qui est une évolution majeure par rapport aux systèmes de dessin pour la modélisation 3D actuels. Aucune vue (axonométrie, plane, etc.) ou technique particulière (dessin vectoriel, gestes, etc.) n'est imposée, conformément à nos lignes directrices. Dés lors, afin que le système puisse interpréter le dessin, cette feuille est connectée aux filtres de traitement décrits dans la section 4.4. Ces filtres sous-jacents, qui s'exécutent en tâche de fond, permettent de structurer le dessin afin de le rendre exploitable pour le noyau fonctionnel de l'application.

Pour parfaire la métaphore de la table à dessin, et permettre à l'utilisateur d'exprimer ses idées comme il le ferait avec ses techniques habituelles, nous avons aussi inclus des calques de dessin. Ils peuvent être ajoutés, couvrant alors toute la surface disponible, et ensuite manipulés (dessin, masquage, suppression, reordonnancement, etc.). Ces calques n'ont pas, dans notre proposition, la même fonction de décomposition modulaire que dans les logiciels habituels. En effet, les calques ne servent pas seulement à organiser le dessin en modules distincts. Nous avons vu que le calque était avant tout pour l'architecte une mémoire de la conception et un support de la révision, de la modification. C'est dans cette optique que nous avons inclus des calques virtuels sur la feuille de dessin de SVALABARD. Ils permettent de dessiner différentes parties du dessin sur des supports différents, afin de proposer plusieurs possibilités, ou de structurer le travail. Ainsi, ils ont l'utilité que leur donne le dessinateur: décomposition ou révision.

Enfin, grâce au filtre de détection des phases de dessin que nous présenterons dans la section 4.4.4, l'utilisateur n'est pas limité au dessin de la forme à modéliser. Il peut, sur cette même feuille, embellir son dessin, dessiner l'environnement, sans avoir à changer explicitement de mode de dessin, ce qui selon nous correspond mieux à une démarche créative et artistique (contrairement aux outils existants qui imposent un ordre chronologique ou un changement de mode explicite).

4.2.2 La feuille augmentée

La vue de SVALABARD que nous appelons feuille augmentée est l'affichage des «valeurs ajoutées» que propose le système par rapport à une feuille de papier réelle. Cette vue en surimpression à la feuille de dessin sert tout d'abord à présenter le résultat des filtres et traitements du dessin. Cela permet à l'utilisateur, si il le souhaite, de visualiser les interprétations et choix du système pour éventuellement les valider, corriger et manipuler si besoin est (voir figure 4.4). De plus, même si nous nous inscrivons dans une démarche «d'interface absente» proche des travaux de Pierre LECLERCQ pour le dessin en vue plane [Leclercq et Juchmes2002], nous sommes plus modérés quant à l'occultation pour l'utilisateur des résultats des traitements que réalise le système sur le dessin. En effet, l'utilisation d'un système informatique nécessite évidemment de connaître la finalité des actions qui vont êtres exécutées par le système en réponse aux actions effectuées par l'utilisateur [Bastien et Scapin1993]. Il est aussi nécessaire, et en particulier lors d'une tâche longue et complexe, d'avoir une connaissance des actions intermédiaires du système. Cette connaissance, ou représentation du fonctionnement du système, permet à l'utilisateur de maîtriser les actions possibles sur le système. Ainsi, représenter les étapes intermédiaires qui mènent au résultat final de la tâche, ou à un échec, évite à l'utilisateur d'élaborer sa propre représentation du fonctionnement du système (souvent erronée) et lui permet de mieux se l'approprier et le contrôler. Il lui est alors possible d'interpréter et de corriger ses erreurs (ou celles du système le cas échéant), mais surtout il ne perd pas en efficacité d'utilisation. Nous avons choisi de présenter les résultats des traitements «intermédiaires» du système (avant le rendu 3D) lorsque l'utilisateur ne dessine plus depuis un certain temps. La feuille augmentée apparaît alors en surimpression à la feuille de dessin et disparaît automatiquement lorsque le dessin reprend. Cette apparition contrôlée à un moment opportun permet de ne pas interrompre ou perturber l'activité de dessin. Le dessinateur peut alors observer comment son dessin a été interprété.

Figure 4.4: Feuille augmentée.
\includegraphics[width=\textwidth]{augmentedsheetconstraints}

Pour ce qui est du mode de représentation de ces résultats, la feuille augmentée présente simplement l'interprétation géométrique du dessin à main levée sous la forme de points et de segments. Cette interprétation apparaît donc en surimpression au dessin original, ce qui permet une meilleure visualisation des relations entre les traitements et les traits du dessin original qu'une vue multiple séparée. Cela assure une bonne compatibilité cognitive (capacité de l'utilisateur à interpréter les données relatives aux concepts et à leurs représentations par le système). Si il s'avère que des traitements d'interprétation du dessin sont encore en cours lors de l'apparition de la feuille augmentée, leur affichage est actualisé en temps réel, ce qui renforce la perception des actions du système.

Les autres informations visibles sur la feuille augmentée sont les propriétés géométriques des éléments de l'interprétation du dessin: parallélisme, coplanarités et orthogonalité. Les faisceau de segments parallèles sont tracés d'une même couleur. Les points coplanaires forment des surfaces colorées. Nous avons envisagé plusieurs représentations graphiques pour les propriétés d'orthogonalité, mais aucune ne s'est avérée concluante jusqu'alors (symboles particuliers sur les segments, dessins des angles, etc.). Ces propriétés sont issues de saisies de l'utilisateur, comme nous le présentons dans la section 4.3.2. À terme, elles devront être en partie détectées automatiquement (nous discutons ces possibilités dans la section 4.4.7 et le chapitre 5).

Mais cette représentation de la structure géométrique du dessin sur la feuille augmentée lui donne aussi un sens habituel pour le concepteur: celle de dessin prescriptif. Certes, ce n'est pas un plan de construction métré et précis comme permettent de le faire les outils avancés de CAO. Toutefois, notre approche pourrait être améliorée dans ce sens. C'est dans cette optique que nous avons introduit la possibilité d'annoter le dessin sur cette feuille augmentée, de tracer des traits non pris en compte par le système dans un but d'explication et de prise de notes.

4.2.3 La feuille 3D

La troisième vue de SVALABARD est la feuille 3D. Ce mode permet de visualiser et manipuler le résultat de la reconstruction en trois dimensions du dessin réalisé sur la feuille de dessin, associé aux propriétés géométriques visualisées et saisie sur la feuille augmentée. Elle représente donc le mode descriptif du dessin, celui utilisé pour présenter le résultat de la conception. Le rendu 3D de la scène est de type Non Photo-Réaliste, afin de renforcer l'aspect conception et de garder une certaine cohérence avec le dessin (voir figure 4.5). Comme l'a expliqué Robert ZELEZNIK pour son système SKETCH [Zeleznik et al.1996] et comme cela a été montré dans [Schumann et al.1996], ce type de rendu est indiqué dans une démarche créative où les idées ne sont pas forcément fixées et arrêtées. Cela permet de renforcer l'aspect imprécis et non définitif des choix, de ne pas focaliser l'attention de l'utilisateur sur des détails précis de l'aspect visuel du modèle 3D.

Figure 4.5: Feuille 3D.
\includegraphics[width=\textwidth]{3dsheet}

Pour ce qui est de son apparition et de sa visibilité, la feuille 3D n'est pas considérée comme « prioritaire». En effet, dans le comportement que nous proposons, seule la feuille de dessin est visible lorsque l'utilisateur dessine. Lorsqu'il s'arrête, la feuille augmentée apparaît. La feuille 3D quant à elle, n'est visible que lorsque le modèle 3D est disponible (construit par le noyau) et que l'utilisateur souhaite le manipuler (en utilisant le périphérique d'entrée associé).

Ce n'est pas pour autant que cette feuille est inactive en arrière plan. Elle est en effet connectée au noyau de reconstruction de GINA et se charge donc aussi des retours de ce noyau: le modèle 3D évidemment, mais aussi tout autre information que renvoie le noyau (erreur de reconstruction, manque d'informations, etc.). Ce retour visuel du fonctionnement du noyau consiste en une zone de texte semi-transparente en bas à gauche de la zone de travail, signifiant l'état courant du noyau par un message significatif, agrémenté d'un comportement de pulsation dépendant du type de message. Ce retour n'apparaît que lorsque l'utilisateur ne dessine pas garantissant ainsi un comportement non intrusif vis-à-vis de l'activité principale (le dessin).

Actuellement, la connexion de la feuille 3D au noyau de reconstruction n'est pas encore réalisée (la figure 4.5 est réalisée en «magicien d'Oz», le modèle 3D qu'elle présente étant codé). Toutefois, les comportements décrits de la feuille 3D sont d'ores et déjà réalisés, prêts à être connectés. La connexion avec le noyau, en plus évidemment de la reconstruction 3D, nous permettra aussi de réaliser une reprojection du modèle 3D sur la feuille de dessin après d'éventuelles manipulations de l'utilisateur. Ainsi, il pourra continuer à dessiner naturellement les parties du modèle qui n'étaient pas visibles auparavant. Bien entendu, il sera important d'étudier l'impact de cette reprojection et de sa représentation (rendu graphique, perte de l'historique de conception, etc.). Nous aborderons ces questions dans le chapitre suivant, portant sur les évolutions et perspectives de SVALABARD.

Le comportement global des feuilles d'interaction est donc de ne présenter que la feuille de dessin, le système laisse l'utilisateur dessiner. Lorsque celui-ci s'arrête, ou lorsqu'il le notifie explicitement, la feuille augmentée et la feuille 3D apparaissent avec une animation de transition. Il peut alors effectuer des opérations précises sur ces zones d'interaction, ou tout simplement recommencer à dessiner. Dans la section suivante, nous détaillons les outils et interactions de chacune de ces feuilles.

stuf
2005-09-06