• Aucun résultat trouvé

Navigation et édition d’une structure de plante

Dans cette approche, un modèle de plante est généré algorithmiquement, avec les paramètres stockés dans le graphe multi-échelles. Comme le nombre de nœuds dans le graphe multi-échelles peut être grand, des outils sont nécessaires pour explorer commodément le graphe et accéder aux paramètres associés aux nœuds. Nous avons développé deux outils dans ce but : l’explorateur de graphes de décomposition et l’explorateur de structures rami…ées.

9.2. Navigation et édition d’une structure de plante

Fig. 9-2 –L’explorateur de graphes de décomposition.

9.2.1 L’explorateur de graphes de décomposition

L’explorateur de graphes de décomposition se présente à l’écran sous la forme d’une fenêtre en trois parties (Figure 9-2). Le cadre de gauche représente la structure hiérarchique du graphe. Il est visuellement similaire aux outils d’exploration de …chier du système Windows, et fournit des opérations similaires d’expansion/contraction pour contrôler quelle partie du graphe est montrée. Cette partie permet aussi de sélectionner un nœud spéci…que dans le graphe de décomposition. Les attributs du nœud sélectionné sont a¢ chés dans le cadre en bas à droite. Les aspects du statut d’héritage sont visualisés par la colonne type et par les couleurs des icônes associées à chaque paramètre et nœud.

Pour n’importe quelle valeur de paramètre du modèle, l’utilisateur a besoin de connaître le nœud duquel elle provient si elle est héritée. Cette information est disponible dans le cadre en haut à droite, qui a¢ che les paramètres de tous les nœuds dans le chemin de la racine au nœud courant sélectionné. En inspectant quels nœuds sont publics ou privés, l’utilisateur peut identi…er les sources des valeurs de paramètres hérités par le nœud courant.

La dé…nition et la redé…nition du statut d’héritage des nœuds sont des aspects importants du processus de modélisation de la plante. Initialement, tous les nœuds créés héritent leurs paramètres des nœuds supérieurs dans la hiérarchie, éventuellement la racine du graphe de dé-composition. En accédant et éditant un paramètre hérité, l’utilisateur créé sa copie et y assigne une nouvelle valeur. De cette manière, le nombre de paramètres contrôlés indépendamment augmente, conduisant à une diversi…cation graduelle des composants du modèle. Par un menu, l’utilisateur peut aussi redonner à un paramètre sa valeur par défaut (celle héritée) et plus généralement changer le statut d’héritage de n’importe quel paramètre. En dé…nissant soigneu-sement la structure d’héritage du graphe de décomposition, l’utilisateur construit graduellement un jeu de paramètres qui inclut tous les paramètres nécessaires pour capturer la diversité des composants de la plante modélisée, sans inclure de paramètres super‡us.

Fig. 9-3 – Editeur de fonction 2D en mode explicite (gauche) et en mode relatif (droite). En mode relatif, la valeur de référence de la fonction est dessinée en vert et la valeur relative, que l’on édite, en bleu.

9.2.2 Les éditeurs de paramètres

Les valeurs des paramètres sont modi…ées via deséditeurs spécialisés. Un éditeur est ouvert en sélectionnant un paramètre dans la partie a¢ chant le nœud courant. La liste exacte des paramètres, et donc des éditeurs, associés avec les nœuds dépend de l’algorithme génératif sous-jacent. Dans le cas simple desscalaires, l’interface de l’éditeur est composée d’une glissière (slider) et d’un champ numérique éditable. Des éditeurs plus évolués sont utilisés pour les paramètres composés du nœud, comme par exemple, un éditeur de matériel pour dé…nir les propriétés optiques de la branche, des éditeurs de courbes et de surfaces, et un éditeur graphique de

fonctions (Figure 9-3), comme décrit dans [Prusinkiewicz et al., 2000].

Certains paramètres (les scalaires et les fonctions dans la présente implémentation) peuvent être déclarés comme relatifs par rapport à la valeur héritée (Ce sont des paramètres di¤érentiels). Dans ce cas, la valeur du paramètre est une combinaison de la valeur héritée d’un autre nœud et de la valeur dé…nie localement. Dans le cas des scalaires, cela signi…e que la valeur réelle du paramètre est obtenue en appliquant une di¤érence dé…nie localement (combinaison additive), ou en prenant un fraction dé…nie localement (combinaison multiplicative) à la valeur héritée. Dans le cas des fonctions, les mêmes combinaisons sont appliquées en prenant la somme ou le produit des fonctions héritées et dé…nies localement. Pour faciliter le processus d’édition, l’éditeur de fonctions peut a¢ cher simultanément la valeur héritée et la valeur modi…ée (Figure 9-3, à droite).

9.2.3 L’explorateur de structures rami…ées

L’explorateur de structures rami…ées (Figure 9-4) fournit une vue multi-résolution alterna-tive de la structure de la plante. Il utilise une représentation iconique des systèmes rami…és pour visualiser un niveau choisi de la structure de la plante, et ainsi montre certains de ces aspects géométriques, mais ne montre pas explicitement la relation d’héritage dans le graphe de décomposition.

Cet explorateur est construit autour de la notion desilhouette de système rami…é, qui décrit l’axe principal et le contour (l’enveloppe) du système rami…é qu’il contient. L’explorateur arrange ces silhouettes en une structure rami…ée qui représente la géométrie de la plante à l’échelle sélectionnée par l’utilisateur. Ainsi, en plus des silhouettes elles-mêmes, l’explorateur a¢ che la taille et l’orientation des branches (dé…nies par les angles phyllotaxiques et de branchement).

L’utilisateur peut changer la taille et l’orientation d’un système rami…é en le sélectionnant et en le manipulant avec la souris (pour une discussion générale sur la manipulation interactive des branches, voir [Power et al., 1999]). L’utilisateur peut aussi invoquer un éditeur externe pour le nœud sélectionné. Cet éditeur de silhouettes, particulièrement important dans le contexte de l’édition multi-échelles, est présenté dans la section suivante. Utilisés conjointement,

l’explora-9.3. Contraintes multi-échelles