On me pose souvent la question ,” mais à quoi sert Dynamo ?”
Je répondrais : “à nous simplifier la vie” comme par exemple :
– Modélisations complexes et paramétriques,
– Ajout de fonctionnalités supplémentaires au logiciel,
– Automatisation de tâches fastidieuses,
– Exports de données / résultats aux formats Excel,
Comme nous l’avons expliqué dans de multiple billets, Dynamo est un plugin de Revit (et maintenant de Robot Structural Analysis) de programmation visuelle afin de démocratiser la programmation.
Après avoir téléchargé le plugin ici , et l'avoir installé, vous découvrirez dans l’onglet “Compléments” le bouton “Dynamo 0.7”.
Dans ce billet, je vous propose de créer votre premier code !
Le but : Dans Revit, beaucoup de projeteurs utilisent les commentaires qui se trouvent dans les propriétés des tous les objets. Il est possible de sélectionner les objets, puis dans les propriétés d'affecter la valeur du commentaire.
Je vous l’accorde cela est assez simple à réaliser dans l’interface de Revit mais essayons de réaliser ce code dans Dynamo !
Etape 1 : Démarrer Dynamo et créer un nouveau projet :
– Ouvrir un projet Revit (non vierge) et cliquer sur le bouton “Dynamo 0.7” dans l’onglet “Compléments”,
– Dans l’interface qui se présente, cliquer sur “New” dans la partie “Files”,
Etape 2 : La fonction sélection des éléments :
Il est possible d’établir un dialogue bidirectionnel entre Revit et Dynamo, dans notre cas nous avons à renvoyer dans les objets sélectionnés la valeur du commentaire.
Dans ce cas nous allons utiliser la fonction “Select Model Elements” .
– Dans la partie de gauche, ouvrir l’arborescence “Revit” / “Selection”,
– Cliquer sur la fonction “Select Model Elements”,
La fonction “Select Model Elements” apparait dans la partie droite,
– Double cliquez, sur l’entête de la fonction pour changer le nom (par exemple “Sélection objets”),
– Appuyer sur le bouton “Accept”,
Résultat :
Nous allons sélectionner, les éléments présents dans le modèle en cliquant sur le bouton “Change” de la fonction.
– Cliquer sur le bouton “Change”,
– Réduire la fenêtre Dynamo et capturer dans Revit les objets que vous voulez modifier,
– Retournez dans Dynamo, vous devez obtenir le résultat suivant (la liste des ID des objets):
Etape 2 : Affectation de la valeur aux commentaires des objets :
Afin de remplir le champ “Commentaires” des propriétés des objets, nous allons utiliser la fonction “SetParameterByName”.
– Dans la partie de gauche, ouvrir l’arborescence “Revit” / “Elements” / “Element”,
– Cliquer sur la fonction “SetParameterByName”,
La fonction “SetParameterByName” apparait dans la partie droite,
– Changer le nom de la fonction (par exemple “Affecte la valeur”),
Résultat :
Cette fonction dispose de trois entrées :
– “Elément” : il s’agit des éléments sélectionnés,
– “ParamterName” : le nom du champ auquel on veut affecter la valeur,
-“ Value” : la valeur que l’on veut affecter au champ,
Dans notre cas, il s’agit de deux “strings”* avec les valeurs ci-dessous :
– “ParamterName” = “Commentaires",
– “ Value” :" “VillageBIM”.
* la variable “String” est une chaîne de caractères.
– Dans la partie de gauche, dans le champ de recherche, inscrire le mot “String” ,
– Cliquer deux fois sur “String”, pour faire apparaitre deux fenêtres “String”,
– Renommer les deux fenêtres respectivement en “Champ” et “Valeur”,
– Affecter les valeurs respectives “Commentaires”** et “VillageBIM”,
Résultat :
** Attention, bien respecter les majuscules et le pluriel car la fonction va rechercher le champ “Commentaires” dans les propriétés des objets de Revit. Si vous faites une erreur, il ne le trouvera pas et donc il ne se passera rien.
Etape 3 : Relier les fonctions entre elles et lancer le code :
Nous y sommes presque, il ne nous reste qu'à liaisonner*** les différentes fonctions comme montré ci-dessous :
Enfin, cliquer sur le bouton “Run” en bas à gauche de la fenêtre.
Si tout c’est bien passé, normalement vous devez retrouver dans les commentaires des objets Revit, le mot “VillageBIM”.
Bonus :
Allez, nous sommes lancés! Je vous propose de connaitre le nombre des éléments sélectionnés dans l’interface Dynamo.
Tout d’abord, il nous faut connaître ce que nous renvoie la fonction “Affecte la valeur” :
– Dans la partie de gauche, dans le champ de recherche, inscrire le mot “Watch”*** ,
– Cliquer une fois sur “Watch”, pour faire apparaitre la fenêtres “Watch”,
– Relier la fonction “Affecte la valeur” à la fonction “Watch”,
– Cliquer sur le bouton “Run”,
Résultat :
*** Comme vous pouvez le constater, la fonction “Watch” permet d’afficher le résultat d’une fonction.
Il s’agit de la liste des objets sélectionnés avec leurs identifiants respectifs.
Pour connaitre, le nombre d’objets sélectionnés, il nous suffit de compter le nombre de lignes.
Nous allons utiliser la fonction “List count”.
– Dans la partie de gauche, dans le champ de recherche, inscrire le mot “List count” ,
– Cliquer une fois sur “List count”, pour faire apparaitre la fenêtres “List count”,
Enfin relier les fonctions comme présenté ci-dessous et cliquer sur le bouton “Run”.
Résultat :
Conclusion :
Le but de ce billet était de vous montrer que l’utilisation de la programmation visuelle Dynamo n’est pas compliquée.
Avant de vous lancer, je vous conseille de mettre noir sur blanc vos idées et de séquencer chaque étape.
Quelques liens utiles :
– Le site Dynamo,
– Le site Buildz,
– Le site AEC you and Me,
– Le site de Håvard Vasshaug,
Ci-dessous, voici l'exemple que nous venons de traiter