Ça faisait longtemps que je ne vous avais pas parlé de Dynamo For Revit. Avec la sortie de la version Autodesk Revit 2020, le package « Structural Design » propose une bibliothèque de fonctionnalités dans le domaine de la structure et notamment de la création automatisée de charpentes métallique.
Je vous propose au cours de ce billet de vous présenter cette partie.
1- Démarrage de Dynamo For Revit et installation du package « Structural Design » :
Avec la version Autodesk Revit, la version 2.1 de Dynamo For Revit est automatiquement installée et notamment, elle est disponible dans l’onglet « Gérer » du logiciel.
Après avoir cliqué sur le bouton « Dynamo », cliquez sur « Packages/ rechercher un package… », recherchez le package « Structural Design » puis cliquez sur la flèche pour le télécharger.
Une fois l’opération effectuée, ouvrez un nouveau script. Vous trouverez ainsi dans votre bibliothèque Dynamo les composants du package « Structural Design ».
2- Création du script :
Parmi les multiples nœuds proposées par ce package, nous allons nous intéresser uniquement aux fonctions disponibles dans «Model / Frame »
2.1 Création du portique :
Je vais utiliser le nœud « Frame.ByWidthHeights » permettant de générer à partir de différentes hauteurs (poteaux et flèche) et je vais lui associer des valeurs d’entrées (« Integer Slider ») représentées ci-dessous :
2.2 Copie du portique :
Le nœud « Copy » du package répond parfaitement à la tâche :
Nota : le nœud « Copy » possède plusieurs entrées, j’ai utilisé l’entrée « NumberOfTimes » désignant le nombre d’espacement. J’ai donc créé un CodeBlock qui permet de calculer le nombre d’espace en fonction du nombre de portique (N-1).
Résultat :
2.3- Création des lises :
Le nœud « Frame.SideRailsEavesBeams » va me permettre de créer très rapidement des lises entre portiques.
Procédez aux connections comme montré ci-dessous :
- associez la sortie « Columns » du nœud « Copy » à l’entrée « Columns » du nœud « Frame.SideRailsEavesBeams »,
- créez un CodeBlock qui permet de calculer la demi-hauteur du poteau pour qu’elle soit reliée à l’entrée « Heights » du nœud « Frame.SideRailsEavesBeams »,
Résultat :
Nota : il est tout à fait possible de d’ajouter de multiples lises en créant une liste de chiffres, comme je vous le montre ci-dessous :
2.4 Création des pannes :
Pour la création de pannes, je vais utiliser le nœud « Frame.Purlins ». Son utilisation est presque identique à l’étape précédente soit le script ci-dessous :
Résultat :
Nota : les entrées « Dp1 » et « Dp 2 » permettent de créer des décalages en début et en fin d’arbalétrier.
2.5 Création des contreventements verticaux en « V » :
Afin de créer des contreventements verticaux en « V », je vais utiliser le nœud « Frame.VBracings » que je ai connecté de cette façon :
- Entrée « Points » du nœud « Frame.VBracings » à la sortie « Points » du nœud « Frame.SideRailsEavesBeams »,
- Pour l’entrée « Zones » du nœud « Frame.VBracings », désignant les espaces entre portiques, j’ai réalisé une liste de deux valeurs :
o 1 : premier espace
o Nb : dernier espace correspondant au nombre d’espace
Soit le script ci-dessous :
Résultat :
2.6 Création des contreventements en toiture :
Afin de créer des contreventements de toiture en « X », je vais utiliser le nœud « Frame.VBracings ». Là, la tâche est un peu plus compliquée car il va falloir « Sauter » un nœud sur deux tout en gardant la structuration de la liste de nœuds (soit l’image ci-dessous) :
Pour réaliser cette tâche, je vais utiliser le nœud « List.DropEveryNthItem » qui permet de supprimer dans une liste suivant un multiple tout en respectant la structuration.
Soit le script suivant (en créant un CodeBlock avec la valeur 2).
Résultat :
3- Création des éléments structurels dans Revit :
A cette étape, le squelette de la charpente a été réalisé dans Dynamo mais aucun élément n’a été modélisé dans Revit (juste un filaire virtuel).
Pour les connaisseurs de Dynamo For Revit, cette dernière étape est évidente mais pensons aux novices .
Je vais utiliser le nœud de la bibliothèque de Dynamo appelé « StructuralFraming.BeamByCurve » associé aux nœuds :
- « Level » : préciser le niveau sur lequel sera réalisée la modélisation
- « Structural Framing Types » : choisir la section appartenant au gabarit Revit
Enfin, je vais connecter l’entrée « Curve » du nœud « StructuralFraming.BeamByCurve » à la sortie « Purlins » du nœud « Frame.Purlins»,
Voici le script :
Résultat :
Réalisez l’opération pour tous les éléments de la structure et voici le résultat final :
4- Conclusion :
Le package « Structural Design » est très simple d’utilisation et permet de réaliser en quelques minutes une charpente métallique, alors pourquoi pas l’utiliser en cas de besoin ! Voici le script de l’exemple pour ceux qui veulent tester.
Pour ceux qui préfère une vidéo plutôt que de lire le tutoriel, la voici :
Enfin, un grand merci à Tomasz Fudala créateur du package « Structural Design », il est aussi l’un des auteurs du "Revit blog", notamment, vous trouverez ici un des ses articles qui traite du sujet.