> For the complete documentation index, see [llms.txt](https://primer2.dynamobim.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://primer2.dynamobim.org/fr/dynamo-for-civil-3d/advanced-topics/object-binding.md).

# Liaison d’objet

Dynamo for Civil 3D contient un mécanisme très puissant qui « se souvient » des objets créés par chaque nœud. Ce mécanisme est appelé **Liaison d’objet** et permet à un graphique Dynamo de produire des résultats cohérents chaque fois qu’il est exécuté dans le même document. Bien que cela soit souhaitable dans de nombreuses situations, il est possible que vous vouliez avoir plus de contrôle sur le comportement de Dynamo dans d’autres cas. Cette section vous aidera à comprendre le fonctionnement de la liaison d’objet et comment en tirer parti.

## Exemple

Prenons l’exemple de ce graphique qui crée un cercle dans l’espace objet sur le calque courant.

<figure><img src="/files/eDhnn4fHZBarmgu0xHII" alt=""><figcaption><p>Graphique simple pour créer un cercle</p></figcaption></figure>

Remarquez ce qui se passe lorsque le rayon est modifié.

<figure><img src="/files/6oNSIA1au8mtUrUUPByC" alt=""><figcaption><p>Modifier la valeur du rayon dans Dynamo</p></figcaption></figure>

Voilà une démonstration de la liaison d’objet. Par défaut, Dynamo *modifie* le rayon du cercle, plutôt que de créer un nouveau cercle à chaque fois que la valeur du rayon change. Ceci est dû au fait que le nœud **Object.ByGeometry** « se souvient » qu’il a créé ce cercle *spécifique* à chaque exécution du graphique. De plus, Dynamo stocke cette information de sorte que lors de la prochaine ouverture du document Civil 3D et de l’exécution du graphique, celui-ci aura exactement le même comportement.

## Autre exemple

Voyons un exemple dans lequel vous voudriez changer le comportement par défaut des liaisons d’objet dans Dynamo. Supposons que vous souhaitiez créer un graphique qui place un texte au milieu d’un cercle. Vous souhaitez également que ce graphique puisse être exécuté à plusieurs reprises et qu’il place un nouveau texte à chaque fois, quel que soit le cercle sélectionné. Voici à quoi ce graphique pourrait ressembler.

<figure><img src="/files/V4qwtLigS1svVUnAErKr" alt=""><figcaption><p>Graphique simple qui place un texte au centre d’un cercle sélectionné</p></figcaption></figure>

Cependant, ceci se produit lorsque vous sélectionnez un autre cercle.

<figure><img src="/files/ItjUlXS92iPjWbcGC8Ty" alt=""><figcaption><p>Comportement par défaut de Dynamo lors de la sélection d’un nouveau cercle</p></figcaption></figure>

Il semble que le texte soit supprimé et recréé à chaque exécution du graphique. En réalité, la position du texte est *modifiée* en fonction du cercle sélectionné. Il s’agit donc du même texte, mais à un autre endroit ! Afin de créer un nouveau texte à chaque fois, vous devez modifier les paramètres de liaison d’objet de Dynamo pour qu’aucune donnée de liaison ne soit conservée (consultez la partie [#binding-settings](#binding-settings "mention") ci-dessous).

<figure><img src="/files/TvVhMt9SATgGBdDF2Qlp" alt=""><figcaption><p>Paramètres de liaison d’objet</p></figcaption></figure>

Après avoir effectué ce changement, vous obtenez le comportement que vous recherchez.

<figure><img src="/files/1NzxS1r3WNGNRcUKd3KR" alt=""><figcaption><p>Comportement avec la liaison d’objet désactivée</p></figcaption></figure>

## Paramètres de liaison

Dynamo for Civil 3D permet de modifier le comportement par défaut des liaison d’objet via les paramètres **Stockage des données de liaison** du menu de **Dynamo**.

{% hint style="info" %}
Notez que les options de stockage des données de liaison sont disponibles dans \*\*Civil 3D 2022.1\*\* et dans les versions ultérieures.
{% endhint %}

<figure><img src="/files/Jg2tY9CovPy6SesqgQqX" alt=""><figcaption></figcaption></figure>

Toutes les options sont activées par défaut. Voici un résumé des effets de chaque option.

### Option 1 : aucune donnée de liaison conservée

Lorsque cette option est activée, Dynamo « oublie » les objets qu’il a créés lors de la dernière exécution du graphique. Le graphique peut être exécuté dans n’importe quel dessin, dans n’importe quelle situation, et il créera des objets à chaque fois.

{% hint style="info" %}
\*\*Quand l’utiliser\*\*

Utilisez cette option lorsque vous souhaitez que Dynamo « oublie » tout ce qu’il a fait lors des exécutions précédentes et crée de nouveaux objets à chaque fois.
{% endhint %}

### Option 2 : stocker dans un graphique pour Dynamo

Cette option signifie que les métadonnées de liaison d’objet seront sérialisées dans le graphique (fichier .dyn) lors de son enregistrement. Si vous fermez/rouvrez le graphique et l’exécutez dans le **même dessin**, tout devrait fonctionner comme vous l’avez laissé. Si vous exécutez le graphique dans un **autre dessin**, les données de liaison seront supprimées du graphique et de nouveaux objets seront créés. Cela signifie que si vous ouvrez le dessin d’origine et exécutez à nouveau le graphique, de nouveaux objets seront créés en plus des anciens.

{% hint style="info" %}
\*\*Quand l’utiliser\*\*

Utilisez cette option lorsque vous souhaitez que Dynamo « se souvienne » des objets qu’il a créés la dernière fois qu’il s’est exécuté dans un **dessin spécifique**.
{% endhint %}

{% hint style="warning" %}
Cette option convient mieux aux situations où il est possible de maintenir un rapport 1:1 entre un \*\*dessin spécifique\*\* et un graphique Dynamo. Les options 1 et 3 sont mieux adaptées aux graphiques conçus pour s’exécuter sur plusieurs dessins.
{% endhint %}

### Option 3 : stocker dans un dessin pour Dynamo

Cette option est similaire à l’option 2, sauf que les données de liaison d’objet sont sérialisées dans le dessin au lieu du graphique (fichier .dyn). Si vous fermez/rouvrez le graphique et l’exécutez dans le **même dessin**, tout devrait fonctionner comme vous l’avez laissé. Si vous exécutez le graphique dans un **autre dessin**, les données de liaison sont conservées dans le dessin d’origine, car elles sont enregistrées dans le dessin et non dans le graphique.

{% hint style="info" %}
\*\*Quand l’utiliser\*\*

Utilisez cette option lorsque vous souhaitez utiliser le même graphique sur **plusieurs dessins** et que Dynamo « se souvienne » de ce qu’il a fait dans chacun d’eux.
{% endhint %}

### Option 4 : stocker dans un dessin pour le Lecteur Dynamo

La première chose à noter avec cette option est qu’elle n’a aucun effet sur la façon dont le graphique interagit avec le dessin lorsqu’il est exécuté via l’interface principale de Dynamo. Cette option s’applique *uniquement* lorsque le graphique est exécuté à l’aide du Lecteur Dynamo.

{% hint style="info" %}
Si vous ne connaissez pas le Lecteur Dynamo, consultez la section \[dynamo-player.md]\(../dynamo-player.md "mention").
{% endhint %}

Si vous exécutez le graphique en utilisant l’interface principale de Dynamo, puis fermez et exécutez le même graphique en utilisant le Lecteur Dynamo, il créera de nouveaux objets en plus de ceux qu’il a créés auparavant. Cependant, une fois que le Lecteur Dynamo a exécuté le graphique une fois, il sérialisera les données de liaison d’objet dans le dessin. Ainsi, si vous exécutez le graphique plusieurs fois via le Lecteur Dynamo, il mettra à jour les objets au lieu d’en créer de nouveaux. Si vous exécutez le graphique via le Lecteur Dynamo sur un **autre dessin**, les données de liaison sont toujours conservées dans le dessin d’origine, car elles sont enregistrées dans le dessin et non dans le graphique.

{% hint style="info" %}
\*\*Quand l’utiliser\*\*

Utilisez cette option lorsque vous souhaitez exécuter un graphique à l’aide du Lecteur Dynamo sur plusieurs dessins et que vous souhaitez qu’il « se souvienne » de ce qu’il a fait dans chacun d’eux.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://primer2.dynamobim.org/fr/dynamo-for-civil-3d/advanced-topics/object-binding.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
