Les éditeurs de formes de tortues "Turtle Shapes Editor" et de formes de liens "Link Shape Editor" permettent de créer et de sauvegarder des formes de tortues et de liens. NetLogo utilise pour ces formes des dessins vectoriels complètement redimensionnables et visibles sous tous les angles, ce qui veut dire que vous pouvez créer de telles formes en combinant des formes géométriques simples, formes qui peuvent être affichées à l'écran dans n'importe quelle taille et avec n'importe quelle orientation.
Pour créer des formes, sélectionnez "Turtle Shapes Editor" (pour les formes de tortues) ou "Link Shapes Editor" (pour les formes de liens) dans le menu "Tools". La fenêtre qui s'ouvre contient la liste de toutes les formes actuellement chargées dans le modèle, liste commençant par les formes par défaut (voir figure ci-dessous) qui sont incluses automatiquement dans tout modèle. Les éditeurs de formes permettent d'éditer les formes existantes, d'en créer de nouvelles ou d'aller en chercher dans d'autres modèles. Vous pouvez aussi importer des formes de tortues pré-existantes qui se trouvent dans une bibliothèque.
Chaque nouveau modèle NetLogo possède, dès le départ, un petit ensemble de formes de base fréquemment utilisées. Bien d'autres formes de tortues sont à disposition dans une bibliothèque que l'on ouvre en cliquant le bouton "Import from library...". Ce bouton ouvre une boîte de dialogue dans laquelle vous pouvez sélectionner une ou plusieurs formes pour les importer dans votre modèle. À cet effet, sélectionnez la ou les formes désirées et pressez le bouton "Import".
De la même manière, vous pouvez utiliser le bouton "Import from model..." pour aller chercher des formes dans un autre modèle.
Les formes par défaut
Voici les formes de tortue qui sont incluses par défaut dans chaque nouveau modèle NetLogo :
Première ligne | default | airplane | arrow | box | bug | butterfly |
---|---|---|---|---|---|---|
Deuxième ligne | car | circle | circle 2 | cow | cylinder | dot |
Troisième ligne | face happy | face neutral | face sad | fish | flag | flower |
Quatrième ligne | house | leaf | line | line half | pentagon | person |
Cinquième ligne | plant | square | square 2 | star | target | tree |
Sixième ligne | triangle | triangle 2 | truck | turtle | wheel | x |
La bibliothèque des formes
Et voici les formes de la bibliothèque des formes (qui comprennent aussi toutes les formes par défaut) :
Par défaut, il n'y a, dans un modèle, qu'une seule forme de lien appelée default. Cette forme se réduit à un segment de droite (avec une simple flèche si le lien est un lien orienté).
Pressez le bouton "New" pour créer une nouvelle forme. Mais vous pouvez aussi sélectionner une forme existante et presser le bouton "Edit" pour la modifier.
Dans le coin supérieur gauche de la fenêtre d'édition se trouve un groupe d'outils de dessin. La flèche est l'outil de sélection qui permet de sélectionner tout élément déjà dessiné.
Pour dessiner un nouvel élément, utilisez l'un des sept autres outils, à savoir :
Quand vous utilisez l'outil polygone, cliquez avec la souris pour placer le premier sommet puis cliquez plus loin pour ajouter un nouveau sommet donc un nouveau segment (et ainsi de suite jusqu'à l'obtention de la forme désirée). Double-cliquez pour placer le dernier sommet et terminer la figure. Si vous n'avez pas double-cliqué sur le dernier point, la figure se referme automatiquement.
L'élément qui vient d'être dessiné est automatiquement sélectionné, vous pouvez donc le déplacer, le supprimer, changer sa forme, etc., si vous le désirez :
Pendant que vous dessinez la forme, vous la voyez aussi en cinq exemplaires réduits dans les cinq zones de prévisualisation placées en dessous de la zone d'édition. Ces zones montrent la forme telle qu'elle pourrait apparaître dans un modèle, y compris à quoi elle ressemble quand elle pivote sur elle-même. Le nombre situé sous chaque zone de prévisualisation correspond à la taille de cette zone en pixels. Quand vous éditez la vue (bouton "Settings…" du panneau "Interface"), la taille des patches est aussi mesurée en pixels. Ainsi, par exemple, la zone de prévisualisation 20 montre à quoi ressemblera une tortue (de taille 1, autrement dit avec sa taille par défaut) dans une vue dont les patches ont des dimensions de 20 x 20 pixels.
Le pivotement peut être désactivée (case à cocher "Rotatable") si vous voulez que votre forme ait toujours la même orientation dans la vue, et ceci quel que soit le cap de la tortue.
Les nouveaux éléments dessinés sont ajoutés au-dessus des éléments existants. Vous pouvez changer l'ordre d'empilement en sélectionnant un élément puis en utilisant les boutons "Bring to front" (Mettre à l'avant-plan) et "Send to back" (Mettre à l'arrière-plan).
À n'importe quel moment, vous pouvez utiliser le bouton "Undo" (Défaire) pour annuler l'action d'édition que vous venez de faire.
Les éléments dont la couleur correspond à la couleur affichée dans le bouton-menu "Color that changes" (couleur qui change) verront cette couleur remplacée par la couleur spécifiée dans la variable color de chaque tortue du modèle (la couleur qui change par défaut est le gris). Les éléments ayant une autre couleur ne changent pas de couleur. Vous pouvez par exemple créer des voitures qui ont toutes et toujours des phares jaunes et des roues noires mais des carrosseries de différentes couleurs.
Les boutons "Rotate Left" (pivoter à gauche) et "Rotate Right" (pivoter à droite) font pivoter les éléments de 90 degrés. Les boutons "Flip Horizontal" (basculer horizontalement) et "Flip Vertical" (basculer verticalement) font tourner l'élément sélectionné (par symétrie axiale) autour de son axe vertical ou de son axe horizontal.
Ces quatre boutons font pivoter ou basculer la forme entière à moins qu'un élément soit sélectionné; dans ce cas, seul l'élément sélectionné est affecté.
Combinée avec le bouton "Duplicate" (dupliquer), l'utilisation de ces boutons est particulièrement intéressante si vous voulez créer des formes symétriques. Par exemple, pour dessiner un papillon, vous pouvez dessiner son aile gauche avec l'outil polygone, dupliquer cette aile gauche avec le bouton "Duplicate" puis faire tourner le duplicata autour de l'axe vertical avec le bouton "Flip Horizontal" pour mettre l'aile droite en place.
Il est tentant de dessiner des formes intéressantes et compliquées, mais souvenez-vous que, dans la plupart des modèles, la taille des patches est si petite que vous serez incapables d'apercevoir la plupart des détails. Ce sont les formes simples, grossière, de type icône, qui sont généralement les meilleures.
Quand une forme est terminée, donnez-lui un nom (qui n'a pas encore été utilisé) et pressez le bouton "OK" placé dans le coin inférieur droit de la fenêtre d'édition. La forme et son nom font maintenant partie de la liste des formes qui comprend aussi la forme « par défaut ».
La gestion des formes de liens est très semblable à la gestion des formes de tortues. Ainsi, vous pouvez créer une nouvelle forme en pressant le bouton "New" ou éditer une forme existante en pressant le bouton "Edit". Quand l'édition de la forme est terminée, pressez le bouton "OK" si vous voulez la conserver.
Vous avez la possibilité de modifier plusieurs propriétés pour chaque forme de lien. Ce sont :
Voici quelques formes de liens ayant des propriétés différentes :
Dans le code d'un modèle ou dans le Centre de commandes, vous pouvez utiliser n'importe quelle forme se trouvant dans le modèle (étant entendu que seules les tortues peuvent avoir des formes de tortues et que seuls les liens peuvent avoir des formes de liens). Supposons par exemple que vous vouliez créer 50 tortues ayant la forme de papillons (butterfly). Partant du fait qu'il y a une forme de tortue appelée butterfly dans le modèle (ce qui est le cas puisqu'il s'agit d'une des formes de base toujours présentes), donnez la commande suivante à l'observateur observer> dans le Centre de commandes :
observer> crt 50
Donnez ensuite ces commandes aux tortues (turtles>) pour les disperser puis changer leur forme :
turtles> fd random 15 turtles> set shape "butterfly"
Voila! Nous avons des papillons! Notez l'utilisation des guillemets doubles autour du nom la forme car les noms des formes sont des chaînes de caractères.
De manière identique, vous pouvez spécifier une autre forme pour les liens. Supposons qu'une forme de lien "route" se trouve dans le modèle, écrivez les commandes suivantes :
observer> crt 5 [ create-links-with other turtles ] turtles> fd 5 links> set shape "route"
La commande set-default-shape est aussi utile pour assigner des formes aux tortues et aux liens.