Utilisation du feedback dans les itérations

Dans ModelBuilder, la sortie d'un processus peut être utilisée en tant qu'une entrée d'un processus précédent. Cela porte le nom de feedback, car vous renvoyez la sortie comme entrée.

Il existe deux façons de définir une boucle de feedback :

  1. A l'aide des propriétés d'une variable
  2. A l'aide de l'outil Connecter

Dans l'exemple de modèle ci-dessous, la sortie de l'outil Zone tampon est renvoyée en tant qu'entrée de l'outil Zone tampon au cours de chaque itération du modèle.

Définition de la boucle de feedback

A l'aide des propriétés d'une variable

Etapes :
  1. Sélectionnez et cliquez avec le bouton droit sur une variable en entrée.
  2. Sous l'onglet Général, sélectionnez la variable à utiliser en tant que feedback dans la liste déroulante Variable de feedback.

    Une ligne de connecteur de feedback bleue en pointillés est créée et relie la variable en sortie à la variable en entrée. A chaque itération de l'outil, la variable en sortie sera utilisée comme entrée pour la prochaine itération.

A l'aide de l'outil Connecter

Etapes :
  1. Dans ModelBuilder, cliquez sur l'outil Connecter Ajouter une connexion.
  2. Cliquez sur la sortie à utiliser en tant que feedback et cliquez sur l'entrée.

    Le modèle sait que la sortie est connectée à l'entrée et crée automatiquement une ligne de connecteur de feedback bleue en pointillés. A chaque itération de l'outil, la variable en sortie sera utilisée comme entrée pour la prochaine itération.

  3. Comme le modèle génère un jeu de données en sortie pour chaque itération, il est important que chaque nom en sortie soit unique pour chaque itération de sorte que l'itération précédente ne soit pas écrasée. Pour affecter un nom unique à chaque sortie d'itération, ajoutez au chemin en sortie la substitution de variable en ligne, comme présenté dans l'illustration ci-après.

Limitation du nombre d'itérations d'un modèle

Le modèle doit avoir un nombre d'itérations défini, sinon, la boucle de feedback ne se termine jamais. Voir l'exemple ci-dessous.

Etapes :
  1. Pour limiter les itérations du modèle, utilisez l'itérateur Pour.
  2. Pour exécuter la boucle de feedback un nombre de fois donné, entrez une valeur dans les champs Valeur début, Valeur fin et Par valeur. Par exemple, pour itérer le modèle quatre fois, définissez le champ Valeur début sur 1, le champ Valeur fin sur 4 et la valeur d'intervalle Par valeur sur 1.
  3. Faites de la sortie de l'outil Pour une condition préalable à l'outil suivant. Cela garantit que le nombre d'itérations est disponible avant l'exécution de l'outil suivant. En savoir plus sur la configuration d'une pré-condition.
  4. Lorsque la définition de la sortie de l'outil Pour en tant que condition préalable d'un autre outil, la Valeur début doit commencer par une valeur positive. Si la valeur zéro par défaut est utilisée, la sortie de Pour est définie à zéro après la première itération, et l'outil en aval échoue avec le message d'erreur : Le processus n'a pas été exécuté car la pré-condition est fausse. La raison est que la valeur zéro est interprétée comme une condition préalable fausse dans les modèles.
  5. Pour éviter tout risque d'écrasement de la sortie de chaque itération, ajoutez la variable en ligne %valeur% au nom de l'outil en sortie. Lorsque le modèle est exécuté, %Valeur% est remplacée par le chiffre 1, 2, 3, 4 provenant du paramètre en sortieValeur de l'itérateur Pour.
  6. Connectez la sortie de l'outil en tant que feedback à l'entrée, comme dans l'exemple ci-dessous, où la sortie de Zone tampon est connectée à la variable Entrée en tant que feedback.
  7. De plus, connectez la sortie de l'outil (Sortie dans l'exemple) à l'outil Recueillir des valeurs.
  8. Si vous exécutez un modèle avec une boucle de feedback et la substitution de variable en ligne à partir de sa boîte de dialogue d'outil, connectez la dernière sortie du modèle à Recueillir les valeurs et Outils de modèle uniquement et faites de la sortie de l'outil Recueillir les valeurs un paramètre de modèle. L'outil Recueillir les valeurs ne crée aucune nouvelle sortie. Elle transmet en revanche les entrées en tant que sorties. Par conséquent, la sortie n'apparaît pas dans la boîte de dialogue de l'outil lorsqu'elle est affichée en tant que paramètre de modèle. Le fait d'en faire un paramètre de modèle garantit que les résultats sont ajoutés pour affichage dans ArcMap si l'option Ajouter les résultats du géotraitement dans la zone d'affichage est activée dans le menu déroulant ArcMap Géotraitement > Options de géotraitement.
  9. Exécutez le modèle.
Utilisation d'une boucle de feedback
5/10/2014