Vous pouvez configurer une boucle pour passer des éléments individuels d'un tableau ou d'une collection à l'intérieur et à l'extérieur de la boucle.

Configuration du tunnel d'entrée pour traiter des éléments individuels d'un tableau ou d'une collection

Si vous câblez un tableau ou une collection à une boucle For ou à une boucle While, vous pouvez lire et traiter chaque élément de ce tableau ou de cette collection en activant l'auto-indexation. Lorsque vous câblez le tableau ou la collection d'un nœud en amont à un tunnel d'entrée d'auto-indexation sur le cadre de la boucle et que vous activez l'auto-indexation sur le tunnel d'entrée, les éléments de ce tableau ou de cette collection entrent un par un dans la boucle, en commençant par le premier élément.

Effectuez les étapes suivantes pour transférer les éléments à un tableau via une boucle :

  1. Faites un clic droit sur le tunnel sur le cadre de la boucle.
  2. Choisissez l'option qui correspond à la façon dont vous voulez traiter les éléments du tableau :
    • Sélectionnez Désactiver l'indexation dans le menu local pour désactiver l'auto-indexation afin de transférer tout le tableau ou toute la collection dans la boucle et de renvoyer un tableau ayant le même nombre d'éléments.
    • Sélectionnez Activer l'indexation dans le menu local pour activer l'auto-indexation afin de transférer chaque élément du tableau ou de la collection dans la boucle et de renvoyer un seul élément.
    Remarque Afin d'éviter les valeurs de données par défaut en sortie si une boucle ne s'exécute pas, activez l'auto-indexation à chaque fois qu'une boucle For a un tunnel de sortie.

Un symbole entre crochets apparaît sur le tunnel de sortie de la boucle pour indiquer que l'auto-indexation est activée.

Configuration du tunnel de sortie pour renvoyer une autre valeur d'un tableau

Effectuez les étapes suivantes pour configurer le tunnel de sortie de la boucle afin de renvoyer la dernière valeur d'un tableau, la valeur indexée d'un tableau ou un tableau concaténé.

  1. Cliquez sur le tunnel de sortie avec le bouton droit.
  2. Sélectionnez respectivement Mode du tunnel»Dernière valeur, Indexation ou Concaténation dans le menu local.

Reportez-vous au tableau suivant pour en savoir plus sur chacune des options de sortie que le tunnel peut renvoyer.

Nom de la sortie Description
Indexation Le tableau en sortie reçoit un nouvel élément à chaque itération de la boucle. Par conséquent, les tableaux auto-indexés en sortie ont toujours une taille égale au nombre d'itérations. Par exemple, si la boucle s'exécute 10 fois, le tableau en sortie possède 10 éléments.
Dernière valeur Le tunnel de sortie ne renvoie que l'élément de la dernière itération de la boucle.
Concaténation LabVIEW ajoute toutes les entrées dans l'ordre, renvoyant un tableau de la même taille que le tableau câblé en entrée. Le mode de tunnel Concaténation concatène des tableaux de la même façon que la fonction Construire un tableau.

Entre le tunnel de sortie et le nœud suivant, l'épaisseur du fil de liaison indique si la boucle indexe les valeurs, renvoie la dernière valeur ou concatène les valeurs. L'indexation crée un fil de liaison plus épais que ne le fait la concaténation, car le fil contient un tableau de plus grande taille. Si le tunnel de sortie renvoie la dernière valeur, le fil de liaison est plus fin que pour une indexation ou concaténation.

Remarque La boucle indexe les éléments scalaires des tableaux 1D, les tableaux 1D des tableaux 2D, et ainsi de suite. L'opposé se produit sur les tunnels de sortie. Les éléments scalaires s'accumulent séquentiellement dans des tableaux 1D, les tableaux 1D s'accumulent dans des tableaux 2D, etc.

Reportez-vous au projet labview\examples\Arrays\Arrays.lvproj pour consulter des exemples de construction de tableaux en désactivant l'auto-indexation.

Choix du type d'auto-indexation pour un tableau ou une collection câblé à une boucle

Type de boucle Configuration du tableau ou de la collection Comportement d'auto-indexation Exemple
Boucle For Un tableau ou une collection câblé à un tunnel d'entrée et un terminal de décompte non câblé Si vous activez l'auto-indexation pour un tableau ou une collection câblé à un tunnel d'entrée d'une boucle For, LabVIEW utilise la taille du tableau ou de la collection comme nombre d'itérations, et vous n'avez donc pas besoin de câbler le terminal de décompte. Par défaut, LabVIEW active l'auto-indexation pour tous les tableaux ou toutes les collections que vous câblez à une boucle For.
Remarque Vous pouvez désactiver l'auto-indexation si vous n'avez pas besoin de traiter des tableaux ou des collections élément par élément.
Boucle For Terminal de décompte câblé Si vous activez l'auto-indexation lorsque le terminal de décompte est câblé, le nombre réel d'itérations exécutées par LabVIEW correspond à la plus petite taille de la collection ou du tableau, ou à la valeur du terminal de décompte. Par exemple, si vous câblez un tableau ou une collection à 10 éléments à une boucle For, et la valeur 15 à son terminal de décompte, la boucle ne s'exécute que 10 fois.
Boucle For Plusieurs tableaux ou collections Si vous activez l'auto-indexation pour plus d'un tunnel, le nombre d'itérations exécutées par LabVIEW correspond à la plus petite taille de la collection ou du tableau. Par exemple, si deux tableaux auto-indexés ayant respectivement 10 et 20 éléments sont câblés à des tunnels de la boucle et que vous câblez la valeur 15 au terminal de décompte, la boucle exécute 10 itérations en indexant tous les éléments du premier tableau mais en n'indexant que les 10 premiers éléments du deuxième tableau. Autre exemple : si vous tracez des données provenant de deux sources sur un graphe et que vous voulez tracer les 100 premiers éléments, câblez 100 au terminal de décompte. Si la source de données la plus petite ne comporte que 50 éléments, la boucle exécute 50 itérations et n'indexe que les 50 premiers éléments de chaque source de données. Utilisez la fonction Taille d'un tableau pour déterminer la taille des tableaux.
Boucle While Un tableau ou une collection câblé Si vous activez l'auto-indexation pour un tableau ou une collection entrant dans une boucle While, cette dernière indexe le tableau ou la collection de la même façon qu'une boucle For. Cependant, le nombre d'itérations exécutées par une boucle While n'est pas limité par la taille du tableau ou de la collection car la boucle While continue ses itérations jusqu'à ce qu'une condition spécifique ait lieu. Si le nombre d'itérations de boucle est supérieur à la taille du tableau ou de la collection, la boucle While gère tous les éléments du tableau ou de la collection et utilise la valeur par défaut du type d'élément de tableau ou de collection pour les itérations ultérieures. Vous pouvez empêcher la valeur par défaut de passer dans la boucle While en utilisant les fonctions Taille du tableau ou Taille de la collection, qui indiquent le nombre d'éléments contenus dans le tableau ou la collection. Configurez la boucle While pour qu'elle arrête de s'exécuter lorsque le nombre d'itérations est égal à la taille du tableau ou de la collection. L'auto-indexation est désactivée par défaut pour les boucles While.
Astuce Comme vous ne pouvez pas déterminer à l'avance la taille d'un tableau ou d'une collection en sortie, l'activation de l'auto-indexation de la sortie est plus efficace pour une boucle For que pour une boucle While. De trop nombreuses itérations risquent d'utiliser toute la mémoire du système.

Rubriques apparentées

Tableaux

Groupage des données à l'aide de collections

Boucles For : Répétition d'opérations un nombre défini de fois

Boucles While : Répétition d'opération jusqu'à ce qu'une condition se produise

Concaténation automatique de tableaux sortant de boucles