Moving your turtles
Déplacer une tortue sur les patchs

Les tortues se déplacent en fonction d'un angle.
Cet angle est stocké dans l'attribut par défaut heading, il prend une valeur entre 0 et 360 degré.

La fonction pour que les tortues se déplace est forward ou dans sa forme raccourci fd
Cette fonction s'utilise en lui passant un paramètre de distance à parcourir, ici 1.
Cette distance n'a pas d'unité, comme le temps, ce sont des éléments qu'il faudra définir en fonction de votre problème.
En se déplaçant de 1 unité d'espace selon l'axe X ou l'axe Y la tortue se retrouve par défaut sur le centroide du prochain patch dans la direction de déplacement. Comme on peut le voir dans la prochaine image, ce n'est pas le cas lorsqu'une tortue se déplace en diagonale.
Warning
C'est un élément important à prendre en compte dans vos modèles, si vous souhaitez que vos tortues se déplacent uniquement de centroide à centroide, alors il faudra prendre en charge ce cas particulier.

Une façon de contourner ce problème est d'utiliser les fonctions patch-left-and-ahead <angle> <distance> et patch-right-and-ahead <angle> <distance> en association avec la fonction move-to <patch/agent> qui téléporte les agents vers un agent ou un patch donné en paramètre.


Orienter les tortues vers une cible

Deux commandes sont disponibles pour orienter les tortues vers une cible précise.
La commande face <agent/patch> permet de diriger la tortue vers un autre agent/patch.
Il est aussi possible de changer l'attribut d'une tortue (heading) en lui passant la direction pointant vers une autre tortue/patch via la commande towards <agent/patch>

Il est aussi possible de calculer des distances entre entités, pour cela il existe la fonction distance <agent/patch> Comme une distance se calcule entre deux entités, cette fonction se doit d'être appelé dans le contexte) d'un agent/patch.
