Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Bien que Dynamo ait été conçu à l’origine pour Revit, sa polyvalence en tant qu’outil de programmation visuelle s’étend au-delà de Revit. Dynamo est également intégré à Civil 3D, ce qui permet aux utilisateurs de créer de puissantes routines d’automatisation pour les projets d’infrastructures civiles. Il s’agit d’un outil extrêmement utile pour tout traitement, des tâches courantes aux workflows de conception les plus complexes, ce qui vous permet de gagner du temps, d’optimiser vos conceptions et de prendre de meilleures décisions pour celles-ci. Dynamo offre une suite complète de nœuds spécifiquement conçus pour Civil 3D, ainsi que des bibliothèques tierces issues d’une communauté dynamique.
Ce chapitre du guide est consacré à Dynamo for Civil 3D, depuis les bases jusqu’aux notions plus avancées.
Nous avons mentionné précédemment que les nœuds sont les blocs de construction principaux d’un graphique Dynamo et qu’ils sont organisés en groupes logiques dans la bibliothèque. Dans Dynamo for Civil 3D, il existe deux catégories (ou étagères) dans la bibliothèque qui contiennent des nœuds dédiés pour travailler avec des objets AutoCAD et Civil 3D, tels que des axes, des contours, des projets 3D, des références de bloc, etc. Le reste de la bibliothèque contient des nœuds qui sont plus génériques par nature et sont cohérents entre toutes les « variantes » de Dynamo (par exemple, Dynamo pour Revit, Dynamo Sandbox, etc.).
Consultez la section Bibliothèque pour plus d’informations sur l’organisation des nœuds de la bibliothèque Dynamo principale.
Nœuds spécifiques pour l’utilisation d’objets AutoCAD et Civil 3D
Nœuds à usage général
Nœuds provenant de packages tiers que vous pouvez installer séparément
En utilisant les nœuds trouvés sous les étagères AutoCAD et Civil 3D, votre graphique Dynamo ne fonctionnera que dans Dynamo for Civil 3D. Si un graphique Dynamo for Civil 3D est ouvert ailleurs (dans Dynamo pour Revit, par exemple), ces nœuds seront signalés par un avertissement et ne s’exécuteront pas..
Pourquoi y a-t-il deux étagères distinctes pour AutoCAD et Civil 3D ?
Cette organisation distingue les nœuds des objets natifs AutoCAD (lignes, polylignes, références de bloc, etc.) des nœuds des objets de Civil 3D (axes, projets 3D, surfaces, etc.). D’un point de vue technique, AutoCAD et Civil 3D sont distincts. AutoCAD est l’application de base, et Civil 3D est construit à partir de celle-ci.
Pour travailler avec les nœuds AutoCAD et Civil 3D, il est important de bien comprendre la hiérarchie des objets dans chaque étagère. Vous vous souvenez de la taxinomie en biologie ? Règne, Embranchement, Classe, Ordre, Famille, Genre, Espèces ? Les objets AutoCAD et Civil 3D sont classés de la même manière. Voici quelques exemples qui illustrent cela.
Prenons l’exemple d’un axe.
Supposons que votre objectif soit de changer le nom de l’axe. À partir de là, le nœud suivant à ajouter est un nœud CivilObject.SetName.
À première vue, cela ne semble pas très intuitif. Qu’est-ce qu’un CivilObject , et pourquoi la bibliothèque n’a-t-elle pas de nœud Alignment.SetName ? La réponse est liée à la réutilisation et à la simplicité. Si vous y réfléchissez bien, le processus de modification du nom d’un objet Civil 3D est le même, qu’il s’agisse d’un axe, d’un projet 3D, d’un profil ou d’autre chose. Ainsi, au lieu d’avoir des nœuds répétitifs qui font essentiellement la même chose (par exemple, Alignment.SetName, Corridor.SetName, Profile.SetName, etc.), il serait logique d’intégrer cette fonctionnalité dans un seul nœud. C’est exactement ce que fait CivilObject.SetName !
Il est également intéressant de réfléchir à cette question en termes de relations. Un axe et un projet 3D sont des objets Civil, tout comme une pomme et une poire sont des fruits. Les nœuds d’objet Civil s’appliquent à tout type d’objet Civil, de la même manière que vous pouvez utiliser un seul éplucheur pour éplucher une pomme et une poire. La cuisine deviendrait très encombrée si vous disposiez d’un éplucheur différent pour chaque type de fruit ! Ainsi, la bibliothèque de nœuds Dynamo est comme votre cuisine.
Maintenant, allons plus loin. Supposons que vous souhaitiez modifier le calque de l’axe. Pour ce faire, vous devez utiliser le nœud Object.SetLayer.
Pourquoi n’existe-t-il pas de nœud appelé CivilObject.SetLayer ? Les mêmes principes de réutilisation et de simplicité que nous avons évoqués précédemment s’appliquent ici. La propriété de calque est commune à tous les objets dans AutoCAD pouvant être dessiné ou inséré, tel qu’une ligne, une polyligne, du texte, une référence de bloc, etc. Les objets Civil 3D tels que les axes et les projets 3D sont de la même catégorie. Par conséquent, tout nœud qui s’applique à un objet peut également être utilisé avec n’importe quel objet Civil.
L’un des nombreux cas d’utilisation de Dynamo est le placement dynamique d’objets discrets le long d’un modèle de projet 3D. Il arrive souvent que des objets doivent être placés à des emplacements indépendants des assemblages insérés le long du projet 3D, ce qui est une tâche très fastidieuse à accomplir manuellement. De plus, lorsque la géométrie horizontale ou verticale du projet 3D change, cela entraîne des travaux supplémentaires considérables.
Lire des données à partir d’un fichier externe (Excel dans ce cas)
Organiser des données dans des dictionnaires
Utiliser les systèmes de coordonnées pour contrôler la position, l’échelle et la rotation
Placer des références de bloc
Visualiser la géométrie dans Dynamo
Ce graphique peut s’exécuter dans Civil 3D 2020 et les versions ultérieures.
Commencez par télécharger les fichiers d’exemple ci-dessous, puis ouvrez le fichier DWG et le graphique Dynamo.
Il est préférable d’enregistrer le fichier Excel dans le même répertoire que le graphique Dynamo.
Voici une présentation de la logique de ce graphique.
Lire le fichier Excel et importer les données dans Dynamo
Obtenir des lignes caractéristiques du terrain à partir de la ligne de base du projet 3D spécifié
Générer des systèmes de coordonnées le long de la ligne caractéristique du terrain du projet au niveau des abscisses curvilignes souhaitées
Utiliser les systèmes de coordonnées pour placer les références de bloc dans l’espace objet
Allons-y !
Dans cet exemple de graphique, nous allons utiliser un fichier Excel pour stocker les données que Dynamo utilisera pour placer les références de bloc de lampadaire. Le tableau se présente comme suit.
L’utilisation de Dynamo pour lire des données à partir d’un fichier externe (tel qu’un fichier Excel) est une excellente stratégie, en particulier lorsque les données doivent être partagées avec d’autres membres de l’équipe.
Les données Excel sont importées dans Dynamo de la manière suivante.
Maintenant que vous disposez des données, vous devez les diviser par colonne (Projet 3D, Ligne de base, Code de point, etc.) afin de pouvoir les utiliser dans le reste du graphique. Pour ce faire, vous pouvez utiliser le nœud List.GetItemAtIndex et spécifier le numéro d’index de chaque colonne souhaitée. Par exemple, la colonne Projet 3D se trouve à l’index 0, la colonne Ligne de base à l’index 1, etc.
Cela semble correct, n’est-ce pas ? Mais cette approche peut poser problème. Que se passe-t-il si l’ordre des colonnes dans le fichier Excel change par la suite ? Ou si une nouvelle colonne est ajoutée entre deux colonnes ? Dans ce cas, le graphique ne fonctionnera pas correctement et devra être mis à jour. Vous pouvez protéger le graphique en plaçant les données dans un dictionnaire, avec les en-têtes des colonnes Excel comme clés et le reste des données comme valeurs.
Si vous ne connaissez pas les dictionnaires, consultez la section Dictionnaires dans Dynamo.
Le graphique est ainsi plus résilient, car il est possible de modifier l’ordre des colonnes dans Excel. Tant que les en-têtes de colonne restent les mêmes, les données peuvent simplement être extraites du dictionnaire à l’aide de sa clé (c’est-à-dire l’en-tête de colonne), ce que vous ferez ensuite.
Maintenant que les données Excel sont importées et prêtes à l’emploi, commencez à les utiliser pour obtenir des informations de Civil 3D sur les modèles de projet 3D.
Sélectionnez le modèle de projet 3D par son nom.
Obtenez une ligne de base spécifique dans le projet 3D.
Obtenez une ligne caractéristique du terrain dans la ligne de base à l’aide de son code de point.
Vous allez maintenant générer des systèmes de coordonnées le long des lignes caractéristiques du terrain du projet 3D aux valeurs d’abscisse curviligne spécifiées dans le fichier Excel. Ces systèmes de coordonnées seront utilisés pour définir la position, la rotation et l’échelle des références de bloc du lampadaire.
Si vous ne connaissez pas les systèmes de coordonnées, consultez la section Vecteur, plan et système de coordonnées.
Notez l’utilisation d’un bloc de code pour faire pivoter les systèmes de coordonnées en fonction du côté de la ligne de base sur lequel ils se trouvent. Cela pourrait être réalisé en utilisant une séquence de plusieurs nœuds, mais ceci est un bon exemple d’une situation où il est plus facile de l’écrire.
Si vous ne connaissez pas les blocs de code, consultez la section Nœuds Code Block et DesignScript.
Vous approchez du but ! Vous disposez de toutes les informations nécessaires pour placer les références de bloc. La première chose à faire est d’obtenir les définitions des blocs que vous souhaitez à l’aide de la colonne BlockName dans le fichier Excel.
La dernière étape consiste à créer les références de bloc.
Lorsque vous exécutez le graphique, vous devriez voir apparaître de nouvelles références de bloc dans l’espace objet le long du projet 3D. Et voici la partie la plus intéressante : si le mode d’exécution du graphique est défini sur Automatique et que vous modifiez le fichier Excel, les références de bloc sont mises à jour automatiquement !
Pour en savoir plus sur les modes d’exécution des graphiques, consultez la section Interface utilisateur.
Voici un exemple d’exécution du graphique à l’aide du Lecteur Dynamo.
Si vous ne connaissez pas le Lecteur Dynamo, consultez la section Lecteur Dynamo.
Il peut être utile de visualiser la géométrie du projet 3D dans Dynamo pour fournir du contexte. Les solides du projet 3D de ce modèle sont déjà extraits dans l’espace objet. Importez-les dans Dynamo.
Cependant, il y a autre chose que vous devez prendre en compte. Les solides sont un type de géométrie relativement « lourd », ce qui signifie que cette opération ralentira le graphique. L’idéal serait de disposer d’un moyen simple permettant de choisir d’afficher ou non les solides. La solution la plus évidente est de débrancher le nœud Corridor.GetSolids, mais cela produira des avertissements pour tous les nœuds en aval, ce qui est un peu gênant. C’est une situation dans laquelle le nœud ScopeIf se révèle particulièrement utile.
Remarquez que le nœud Object.Geometry a une barre grise en bas. Cela signifie que l’aperçu du nœud est désactivé (accessible par un clic droit sur le nœud), ce qui permet à GeometryColor.ByGeometryColor d’éviter de se « battre » avec d’autres géométries pour la priorité d’affichage dans l’aperçu de l’arrière-plan.
Le nœud ScopeIf vous permet d’exécuter de manière sélective une branche entière de nœuds. Si l’entrée du test est définie sur False, tous les nœuds connectés au nœud ScopeIf ne s’exécuteront pas.
Voici le résultat dans l’aperçu de arrière-plan de Dynamo.
Voici quelques suggestions pour élargir les possibilités offertes par ce graphique.
Ajoutez une colonne de rotation au fichier Excel et utilisez-la pour commander la rotation des systèmes de coordonnées.
Ajoutez des décalages horizontaux ou verticaux au fichier Excel de sorte que les lampadaires puissent dévier de la ligne caractéristique du terrain du projet 3D si nécessaire.
Au lieu d’utiliser un fichier Excel avec des valeurs d’abscisse curviligne, générez les valeurs d’abscisse curviligne directement dans Dynamo à l’aide d’une abscisse curviligne de départ et d’un espacement standard.
Maintenant que vous en savez un peu plus sur la situation générale, nous allons nous lancer dans la création de votre premier graphique Dynamo dans Civil 3D !
Il s’agit d’un exemple simple destiné à démontrer les fonctionnalités de base de Dynamo. Il est recommandé de suivre les étapes dans un nouveau document Civil 3D vide.
La première chose à faire est d’ouvrir un document vide dans Civil 3D. Une fois que vous y êtes, accédez à l’onglet Gérer dans le ruban de Civil 3D et recherchez le groupe de fonctions Programmation visuelle.
Cliquez sur le bouton Dynamo, qui lance Dynamo dans une fenêtre distincte.
Quelle est la différence entre Dynamo et le Lecteur Dynamo ?
Dynamo est ce que vous utilisez pour créer et exécuter des graphiques. Le Lecteur Dynamo est un moyen facile d’exécuter des graphiques sans avoir à les ouvrir dans Dynamo.
Accédez à la section Lecteur Dynamo lorsque vous êtes prêt à l’essayer.
Une fois Dynamo ouvert, l’écran d’accueil s’affiche. Cliquez sur Nouveau pour ouvrir un espace de travail vide.
Et les exemples ?
Dynamo for Civil 3D est fourni avec quelques graphiques prédéfinis qui peuvent vous donner des idées supplémentaires sur la façon dont vous pouvez utiliser Dynamo. Nous vous recommandons de les consulter ultérieurement, ainsi que les Exemples de workflows présentés dans le guide.
Vous devriez maintenant disposer d’un espace de travail vide. Découvrez Dynamo en action ! Voici votre objectif :
C’est assez simple, non ? Toutefois, avant de commencer, il convient d’aborder quelques points fondamentaux.
Les blocs de construction principaux d’un graphique Dynamo sont appelés nœuds. Un nœud est comme une petite machine : vous y introduisez des données, il effectue un travail sur ces dernières et produit un résultat. Dynamo for Civil 3D dispose d’une bibliothèque de nœuds que vous pouvez connecter ensemble avec des fils pour former un graphique. Celui-ci effectue des opérations plus importantes et de manière plus efficace qu’un nœud seul.
Que faire si je n’ai jamais utilisé Dynamo auparavant ?
Certaines fonctionnalités peuvent être nouvelles pour vous, mais ce n’est pas grave ! Ces sections vous seront utiles.
Interface utilisateur Nœuds et fils Nœuds et concepts essentiels
Commencez la création du graphique. Voici une liste de tous les nœuds dont vous aurez besoin.
Vous pouvez trouver ces nœuds en saisissant leur nom dans la barre de recherche de la bibliothèque, ou en effectuant une recherche après avoir cliqué avec le bouton droit de la souris n’importe où dans la zone de dessin.
Comment savoir quels nœuds utiliser et où les trouver ?
Les nœuds de la bibliothèque sont regroupés en catégories logiques en fonction de leur fonction. Pour plus de détails, consultez la section Bibliothèque de nœuds.
Voici à quoi devrait ressembler votre graphique final.
Voici un résumé de ce que vous avez fait ici :
vous avez choisi le document dans lequel vous vouliez travailler. Dans ce cas (et dans de nombreux autres cas), vous souhaitez travailler dans le document actif de Civil 3D ;
vous avez défini le bloc de destination dans lequel l’objet texte doit être créé (dans ce cas, l’espace objet) ;
vous avez utilisé un nœud Chaîne pour spécifier le calque sur lequel le texte doit être placé ;
vous avez créé un point à l’aide du nœud Point.ByCoordinates pour définir la position où le texte doit être placé ;
vous avez défini les coordonnées X et Y du point d’insertion du texte à l’aide de deux nœuds Curseur de nombre ;
vous avez utilisé un autre nœud Chaîne pour définir le contenu de l’objet texte ;
enfin, vous avez créé l’objet texte.
Voyons les résultats de votre nouveau graphique !
Une fois de retour dans Civil 3D, assurez-vous que l’onglet Modèle est sélectionné. Le nouvel objet texte créé par Dynamo doit s’afficher.
Si le texte n’est pas visible, vous devrez peut-être exécuter la commande ZOOM -> VERS L’ÉTENDUE pour effectuer un zoom à l’endroit approprié.
Bravo ! Vous allez maintenant modifier le texte.
Dans votre graphique Dynamo, modifiez quelques valeurs d’entrée, telles que la chaîne de texte, les coordonnées du point d’insertion, etc. Vous devriez voir le texte s’actualiser automatiquement dans Civil 3D. Notez également que si vous déconnectez l’un des ports d’entrée, le texte est supprimé. Si vous reconnectez tous les ports, le texte est à nouveau créé.
Pourquoi Dynamo n’insère pas un nouvel objet texte à chaque exécution du graphique ?
Par défaut, Dynamo se « souvient » des objets qu’il crée. Si vous modifiez les valeurs d’entrée du nœud, les objets dans Civil 3D sont mis à jour au lieu de créer de nouveaux objets. Pour en savoir plus sur ce comportement, consultez la section Liaison d’objet.
Cet exemple ne fait qu’effleurer les possibilités offertes par Dynamo for Civil 3D. Poursuivez votre lecture pour en savoir plus !
Routes, voies ferrées, terrain, gaz et électricité, topographie, SIG…
Voilà ce qui compose l’infrastructure civile, entre autres. Cette section contient plusieurs exemples de graphiques pratiques et pertinents qui vous aideront à maîtriser Dynamo et à exploiter tout son potentiel pour Civil 3D. Tous les graphiques sont accompagnés d’une description détaillée de la logique qui a conduit à leur création, afin que vous puissiez non seulement les utiliser, mais aussi les comprendre.
En outre, ces exemples illustrent les meilleures pratiques déjà éprouvées en matière de construction de graphiques de qualité. Au fil des exemples, nous vous encourageons à vous familiariser avec la section Pratiques recommandées pour obtenir davantage d’idées sur la façon de construire des graphiques performants, flexibles et faciles à gérer.
La conception technique d’un projet de construction de logements typique implique de travailler avec plusieurs équipements souterrains, tels que des égouts sanitaires, des équipements d’évacuation des eaux pluviales, l’eau potable, etc. Cet exemple montre comment Dynamo peut être utilisé pour dessiner les raccordements d’une conduite principale à un terrain donné (c’est-à-dire une parcelle). Il est courant que chaque parcelle doive être raccordée à un service, ce qui représente une tâche fastidieuse pour placer tous les services. Dynamo peut accélérer le processus en dessinant automatiquement la géométrie nécessaire avec précision, et en fournissant des données d’entrée flexibles qui peuvent être adaptées aux normes locales.
Utiliser le nœud Sélectionner un objet pour la saisie utilisateur
Utiliser des systèmes de coordonnées
Utiliser des opérations géométriques telles que Geometry.DistanceTo et Geometry.ClosestPointTo
Créer des références de bloc
Contrôler les paramètres de liaison des objets
Ce graphique peut s’exécuter dans Civil 3D 2020 et les versions ultérieures.
Commencez par télécharger les fichiers d’exemple ci-dessous, puis ouvrez le fichier DWG et le graphique Dynamo.
Voici une présentation de la logique de ce graphique.
Obtenir la géométrie de la courbe pour la conduite principale
Obtenir la géométrie de la courbe pour une ligne de parcelle sélectionnée par l’utilisateur, en l’inversant si nécessaire
Générer les points d’insertion pour les compteurs
Obtenir les points de la conduite principale qui sont les plus proches de l’emplacement des compteurs
Créer des références de blocs et des lignes dans l’espace objet
Allons-y !
La première étape consiste à intégrer la géométrie de la conduite principale dans Dynamo. Au lieu de sélectionner des lignes ou des polylignes individuelles, nous allons plutôt récupérer tous les objets d’une certaine couche et les regrouper sous la forme d’une polycourbe Dynamo.
Si vous ne connaissez pas la géométrie des courbes Dynamo, consultez la section Courbes.
Ensuite, vous devez obtenir la géométrie d’une ligne de parcelle sélectionnée dans Dynamo afin de pouvoir l’utiliser. L’outil approprié est le nœud Sélectionner un objet, qui permet à l’utilisateur du graphique de sélectionner un objet spécifique dans Civil 3D.
Vous devez également gérer un problème potentiel qui pourrait survenir. La ligne de parcelle a un point de départ et un point d’arrivée, ce qui signifie qu’elle a une direction. Pour que le graphique produise des résultats cohérents, il faut que toutes les lignes de parcelle aient une direction cohérente. Vous pouvez tenir compte de cette condition directement dans la logique du graphique, ce qui rend ce dernier plus résilient.
Obtenez les points de départ et d’arrivée de la ligne de parcelle.
Mesurez la distance entre chaque point et la conduite principale, puis déterminez quelle est la plus grande distance.
Faites en sorte que le point de départ de la ligne soit le plus proche de la conduite principale. Si ce n’est pas le cas, inversez la direction de la ligne de parcelle. Dans le cas contraire, renvoyez simplement la ligne de parcelle d’origine.
Il est temps de déterminer l’emplacement des compteurs. Généralement, l’emplacement est déterminé par les exigences des autorités locales. Vous fournirez donc simplement des valeurs d’entrée qui peuvent être modifiées pour s’adapter à diverses conditions. Vous allez utiliser un système de coordonnées le long de la ligne de parcelle comme référence pour la création des points. Il est ainsi très facile de définir des décalages par rapport à la ligne de parcelle, quelle que soit son orientation.
Si vous ne connaissez pas les systèmes de coordonnées, consultez la section Vecteur, plan et système de coordonnées.
Vous devez maintenant déterminer les points de la conduite principale les plus proches de l’emplacement des compteurs. Cela vous permettra de dessiner les raccordements aux services dans l’espace objet de manière à ce qu’ils soient toujours perpendiculaires à la conduite principale. Le nœud Geometry.ClosestPointTo est la solution idéale.
Polycourbe de la conduite principale
Points d’insertion des compteurs
La dernière étape consiste à créer des objets dans l’espace objet. Vous utiliserez les points d’insertion que vous avez générés précédemment pour créer des références de bloc, puis vous utiliserez les points sur la conduite principale pour tracer des lignes vers les raccordements aux services.
Lorsque vous exécutez le graphique, vous devriez voir apparaître de nouvelles références de bloc et des lignes de raccordement aux services dans l’espace objet. Essayez de modifier certaines entrées et observez l’actualisation automatique de l’ensemble !
Vous avez peut-être remarqué qu’après avoir placé les objets pour une ligne de parcelle, la sélection d’une autre ligne de parcelle entraîne le « déplacement » des objets.
C’est le comportement par défaut de Dynamo, et il est très utile dans de nombreux cas. Cependant, il se peut que vous souhaitiez placer plusieurs raccordements aux services de manière séquentielle et que Dynamo crée de nouveaux objets à chaque exécution au lieu de modifier les objets d’origine. Vous pouvez contrôler ce comportement en modifiant les paramètres de liaison d’objet.
Pour plus d’informations, consultez la section Liaison d’objet.
La modification de ce paramètre forcera Dynamo à « oublier » les objets qu’il crée à chaque exécution. Voici un exemple d’exécution du graphique avec la liaison d’objet désactivée en utilisant le Lecteur Dynamo.
Si vous ne connaissez pas le Lecteur Dynamo, consultez la section Lecteur Dynamo.
Voici quelques suggestions pour élargir les possibilités offertes par ce graphique.
Placez plusieurs raccordements aux services simultanément au lieu de sélectionner chaque ligne de parcelle.
Ajustez les données d’entrée pour remplacer les compteurs d’eau par des regards de canalisation.
Ajoutez un bouton bascule pour permettre de placer un seul raccordement aux services sur un côté particulier de la ligne de parcelle plutôt que sur les deux côtés.
L’élaboration d’enveloppes cinématiques pour la validation du dégagement est une partie importante de la conception ferroviaire. Dynamo peut être utilisé pour générer des solides pour l’enveloppe au lieu de créer et de gérer des éléments de profil type de projets 3D complexes pour effectuer le travail.
Utiliser des lignes caractéristiques du terrain du projet 3D
Transformer la géométrie entre systèmes de coordonnées
Créer des solides par lissage
Contrôler le comportement des nœuds à l’aide des paramètres de combinaison
Ce graphique peut s’exécuter dans Civil 3D 2020 et les versions ultérieures.
Commencez par télécharger les fichiers d’exemple ci-dessous, puis ouvrez le fichier DWG et le graphique Dynamo.
Voici une présentation de la logique de ce graphique.
Obtenir des lignes caractéristiques du terrain à partir de la ligne de base du projet 3D spécifié
Générer des systèmes de coordonnées le long de la ligne caractéristique du terrain du projet avec l’espacement souhaité
Transformer la géométrie du bloc de profil en systèmes de coordonnées
Lisser un solide entre les contours
Créer les solides dans Civil 3D
Allons-y !
La première étape consiste à obtenir les données du projet 3D. Sélectionnez le modèle de projet 3D par son nom, obtenez une ligne de base spécifique dans le projet 3D, puis une ligne caractéristique du terrain dans la ligne de base par son code de point.
Vous allez maintenant générer des systèmes de coordonnées le long des lignes caractéristiques du terrain du projet 3D entre une abscisse curviligne de départ et de fin donnée. Ces systèmes de coordonnées seront utilisés pour aligner la géométrie du bloc de contour du véhicule sur le projet 3D.
Si vous ne connaissez pas les systèmes de coordonnées, consultez la section Vecteur, plan et système de coordonnées.
Remarquez le symbole XXX dans le coin inférieur droit du nœud. Cela signifie que les paramètres de combinaison du nœud sont définis sur Produit cartésien, ce qui est nécessaire pour générer les systèmes de coordonnées avec les mêmes valeurs d’abscisse curviligne pour les deux lignes caractéristiques du terrain.
Si vous ne connaissez pas la combinaison de nœuds, consultez la section Qu’est-ce qu’une liste.
Vous devez maintenant créer un réseau de contours du véhicule le long des lignes caractéristiques du terrain. Vous allez transformer la géométrie à partir de la définition du bloc de contour du véhicule à l’aide du nœud Geometry.Transform. Il s’agit d’un concept difficile à visualiser, c’est pourquoi, avant d’examiner les nœuds, observez le graphique ci-dessous qui montre ce qui va se passer.
Il s’agit donc essentiellement de prendre la géométrie Dynamo d’une seule définition de bloc unique et de la déplacer ou de la faire pivoter, tout en créant un réseau le long de la ligne caractéristique du terrain. Génial, non ? Voici à quoi ressemble la séquence de nœuds.
Cela permet d’obtenir la définition du bloc à partir du document.
Ces nœuds obtiennent la géométrie Dynamo des objets du bloc.
Ces nœuds définissent essentiellement le système de coordonnées à partir duquel la géométrie est transformée.
Enfin, ce nœud effectue le travail de transformation de la géométrie.
Notez que ce nœud présente la plus longue combinaison.
Voici le résultat dans Dynamo.
Bonne nouvelle : le plus dur est fait. Il ne vous reste plus qu’à générer des solides entre les contours. Cette opération est facile à réaliser avec le nœud Solid.ByLoft.
Voici le résultat. N’oubliez pas qu’il s’agit de solides Dynamo. Vous devez donc encore les créer dans Civil 3D.
La dernière étape consiste à créer les solides générés dans l’espace objet. Vous leur donnerez également une couleur pour qu’ils soient faciles à voir.
Voici un exemple d’exécution du graphique à l’aide du Lecteur Dynamo.
Si vous ne connaissez pas le Lecteur Dynamo, consultez la section Lecteur Dynamo.
Voici quelques suggestions pour élargir les possibilités offertes par ce graphique.
Ajoutez la possibilité d’utiliser différents intervalles d’abscisses curvilignes séparément pour chaque voie.
Divisez les solides en segments plus petits qui peuvent être analysés individuellement pour détecter d’éventuels conflits.
Vérifiez si les solides de l’enveloppe croisent des objets et coloriez ceux qui entrent en conflit.
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.
Prenons l’exemple de ce graphique qui crée un cercle dans l’espace objet sur le calque courant.
Remarquez ce qui se passe lorsque le rayon est modifié.
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.
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.
Cependant, ceci se produit lorsque vous sélectionnez un autre cercle.
Après avoir effectué ce changement, vous obtenez le comportement que vous recherchez.
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.
Notez que les options de stockage des données de liaison sont disponibles dans Civil 3D 2022.1 et dans les versions ultérieures.
Toutes les options sont activées par défaut. Voici un résumé des effets de chaque option.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
L’utilisation de points et de groupes de points COGO dans Civil 3D est un élément essentiel de nombreux processus, du levé topographique aux figures Dynamo est particulièrement efficace en matière de gestion des données. Le présent exemple illustre un cas d’utilisation potentiel.
Utilisation des listes
Regrouper des objets similaires avec le nœud List.GroupByKey
Afficher une sortie personnalisée dans le Lecteur Dynamo
Ce graphique peut s’exécuter dans Civil 3D 2020 et les versions ultérieures.
Commencez par télécharger les fichiers d’exemple ci-dessous, puis ouvrez le fichier DWG et le graphique Dynamo.
Voici une présentation de la logique de ce graphique.
Obtenir tous les points COGO dans le document
Regrouper les points COGO par description
Créer des groupes de points
Générer un résumé dans le Lecteur Dynamo
Allons-y !
La première étape consiste à obtenir tous les groupes de points du document, puis tous les points COGO au sein de chaque groupe. Vous obtiendrez ainsi une liste imbriquée ou « liste de listes », qui sera plus facile à utiliser ultérieurement si vous aplanissez tous les éléments pour en faire une liste unique à l’aide du nœud List.Flatten.
Maintenant que vous disposez de tous les points COGO, vous devez les séparer en groupes en fonction de leur description. C’est exactement ce que fait le nœud List.GroupByKey. Il regroupe tous les éléments qui partagent la même clé.
le plus dur est fait ! La dernière étape consiste à créer de nouveaux groupes de points Civil 3D à partir des points COGO regroupés.
Lorsque vous exécutez le graphique, il n’y a rien à voir dans l’aperçu de l’arrière-plan de Dynamo, car vous ne travaillez pas avec une géométrie. Le seul moyen de savoir si le graphique a été exécuté correctement est donc de vérifier la fenêtre d’outils ou d’examiner les aperçus de sortie des nœuds. Cependant, si vous exécutez le graphique à l’aide du Lecteur Dynamo, vous pouvez fournir plus d’informations sur les résultats du graphique en générant un résumé des groupes de points qui ont été créés. Il vous suffit de cliquer avec le bouton droit de la souris sur un nœud et de lui attribuer la valeur Résultat effectif. Dans ce cas, utilisez un nœud de visualisation renommé pour afficher les résultats.
Voici un exemple d’exécution du graphique à l’aide du Lecteur Dynamo.
Voici quelques suggestions pour élargir les possibilités offertes par ce graphique.
Modifiez le regroupement des points pour qu’il soit basé sur la description complète au lieu de la description brute.
Regroupez les points selon d’autres catégories prédéfinies que vous choisissez (par exemple, « Prises de vue au sol », « Monuments », etc.)
Créer automatiquement des surfaces triangulées pour les points de certains groupes.
Le Lecteur Dynamo offre une méthode simplifiée pour exécuter des graphiques Dynamo dans Civil 3D. Une fois les graphiques créés, aucune expertise de Dynamo n’est requise pour utiliser le lecteur et exécuter les graphiques. Cela facilite le partage de graphiques avec d’autres utilisateurs qui ne souhaitent pas forcément étudier en détail les nœuds et les fils.
Pour plus d’informations sur le Lecteur Dynamo dans Civil 3D, reportez-vous à la documentation fournie sur le site de l’.
Dynamo for Civil 3D offre le paradigme de la programmation visuelle aux ingénieurs et aux concepteurs travaillant sur des projets d’infrastructures civiles. Vous pouvez considérer Dynamo comme une sorte d’outil multiple numérique pour les utilisateurs de Civil 3D. Peu importe la tâche à accomplir, il dispose de l’outil adéquat pour la réaliser. Son interface intuitive vous permet de créer des routines puissantes et personnalisables sans écrire une seule ligne de code. Vous n’avez pas besoin d’être programmeur pour utiliser Dynamo, mais vous devez être capable de penser avec la logique d’un programmeur. Associé aux autres chapitres du guide, ce chapitre vous aidera à développer vos compétences en logique afin que vous puissiez réaliser n’importe quelle tâche avec une pensée computationnelle.
Dynamo a été introduit pour la première fois dans Civil 3D 2020 et a continué à évoluer depuis. Initialement installé séparément via une mise à jour logicielle, il est désormais fourni avec toutes les versions de Civil 3D. Selon la version de Civil 3D que vous utilisez, vous pouvez remarquer que l’interface de Dynamo est légèrement différente des exemples présentés dans ce chapitre. En effet, celle-ci a fait l’objet d’une refonte importante dans Civil 3D 2023.
Lors de l’ajout de canalisations et de structures à un réseau de canalisations, Civil 3D utilise un modèle pour attribuer automatiquement des noms. Ceci est généralement suffisant lors du placement initial, mais les noms devront inévitablement être modifiés à l’avenir, au fur et à mesure de l’évolution de la conception. En outre, il existe de nombreux modèles de dénomination différents qui peuvent être nécessaires, par exemple en nommant les structures de manière séquentielle dans un tronçon en commençant par la structure la plus en aval, ou en suivant un modèle de dénomination qui s’aligne sur le schéma de données des autorités locales. Cet exemple montre comment utiliser Dynamo pour définir n’importe quel type de stratégie de dénomination et l’appliquer de manière cohérente.
Utiliser des zones de délimitation
Filtrer des données à l’aide du nœud List.FilterByBoolMask
Trier des données à l’aide du nœud List.SortByKey
Générer et modifier des chaînes de texte
Ce graphique peut s’exécuter dans Civil 3D 2020 et les versions ultérieures.
Commencez par télécharger les fichiers d’exemple ci-dessous, puis ouvrez le fichier DWG et le graphique Dynamo.
Voici une présentation de la logique de ce graphique.
Sélectionner les structures par calque
Obtenir les emplacements de la structure
Filtrer les structures par décalage, puis les trier par abscisse curviligne
Générer les nouveaux noms
Renommer les structures
Allons-y !
La première chose à faire est de sélectionner toutes les structures que vous souhaitez utiliser. Pour ce faire, il suffit de sélectionner tous les objets d’un calque donné, ce qui signifie que vous pouvez sélectionner des structures de différents réseaux de canalisations (en supposant qu’elles partagent le même calque).
Ce nœud permet de s’assurer qu’aucun type d’objet indésirable susceptible de partager la même couche que les structures n’est récupéré accidentellement.
Maintenant que vous disposez des structures, vous devez déterminer leur position dans l’espace afin de pouvoir les trier en fonction de leur emplacement. Pour ce faire, vous allez utiliser la zone de délimitation de chaque objet. La zone de délimitation d’un objet est la boîte de taille minimale qui contient entièrement l’étendue géométrique de l’objet. En calculant le centre de la zone de délimitation, vous obtenez une assez bonne approximation du point d’insertion de la structure.
Vous utiliserez ces points pour obtenir l’abscisse curviligne et le décalage des structures par rapport à un axe sélectionné.
C’est là que les choses commencent à se compliquer. À ce stade, vous avez une grande liste de toutes les structures du calque que vous avez spécifié et vous avez choisi un axe pour les trier. Cependant, il se peut que la liste contienne des structures que vous ne souhaitez pas renommer. Par exemple, il se peut qu’elles ne fassent pas partie de l’exécution qui nous intéresse.
Axe sélectionné
Structures que vous souhaitez renommer
Structures à ignorer
Vous devez donc filtrer la liste des structures de sorte à ne pas prendre en compte celles qui sont supérieures à un certain décalage par rapport à l’axe. Pour ce faire, il est préférable d’utiliser le nœud List.FilterByBoolMask. Après avoir filtré la liste des structures, utilisez le nœud List.SortByKey pour les trier en fonction de leurs valeurs d’abscisse curviligne.
Vérifier si le décalage de la structure est inférieur à la valeur de seuil
Remplacer toutes les valeurs nulles par false
Filtrer la liste des structures et des abscisses curvilignes
Trier les structures par abscisses curvilignes
La dernière chose à faire est de créer les nouveaux noms des structures. Pour ce faire, vous utiliserez le format <alignment name>-STRC-<number>
. Quelques nœuds supplémentaires permettent d’ajouter des zéros aux nombres si vous le souhaitez (par exemple, « 01 » au lieu de « 1 »).
Enfin, vous renommez les structures.
Voici un exemple d’exécution du graphique à l’aide du Lecteur Dynamo.
Il peut être utile de profiter de l’aperçu de l’arrière-plan en 3D de Dynamo pour visualiser les sorties intermédiaires du graphique au lieu du seul résultat final. Vous pouvez facilement afficher les zones de délimitation des structures. En outre, ce jeu de données particulier contient un projet 3D dans le document, de sorte que nous pouvons importer la géométrie des lignes caractéristiques du terrain du projet 3D dans Dynamo pour fournir un contexte pour l’emplacement des structures dans l’espace. Si le graphique est utilisé sur un jeu de données qui ne possède pas de projet 3D, ces nœuds ne feront rien.
Vous comprenez maintenant mieux comment fonctionne le processus de filtrage des structures par décalage.
Voici quelques suggestions pour élargir les possibilités offertes par ce graphique.
Renommez les structures en fonction de leur axe le plus proche plutôt que de sélectionner un axe spécifique.
Renommez les canalisations en plus des structures.
Définissez les calques des structures en fonction de leur exécution.
Bien que Dynamo soit un outil de extrêmement puissant, il est également possible d’aller au-delà des nœuds et des fils et d’écrire du code sous forme de texte. Vous pouvez procéder de deux manières :
écrire en DesignScript à l’aide d’un bloc de code ;
écrire en Python à l’aide d’un nœud Python.
Cette section se concentre sur la manière d’exploiter le langage Python dans l’environnement Civil 3D afin de tirer parti des API .NET d’AutoCAD et de Civil 3D.
Consultez la section pour plus d’informations sur l’utilisation du Python dans Dynamo.
AutoCAD et Civil 3D disposent de plusieurs API qui permettent aux développeurs comme vous d’étendre le produit principal avec des fonctionnalités personnalisées. Dans le contexte de Dynamo, ce sont les API .NET gérées qui sont pertinentes. Les liens suivants sont essentiels pour comprendre la structure des API et leur fonctionnement.
Au fur et à mesure que vous avancez dans cette section, il est possible que vous rencontriez des concepts que vous ne connaissez pas, tels que les bases de données, les transactions, les méthodes, les propriétés, etc. La plupart de ces concepts sont essentiels pour travailler avec les API .NET et ne sont pas spécifiques à Dynamo ou au Python. Cette section du guide n’a pas pour objet d’examiner ces éléments en détail. Nous vous recommandons donc de vous reporter fréquemment aux liens ci-dessus pour plus d’informations.
Lorsque vous modifiez un nouveau nœud Python pour la première fois, il est prérempli avec un modèle de code pour vous aider à démarrer. Voici une analyse du modèle avec des explications sur chaque bloc.
Importe les modules
sys
etclr
, qui sont tous deux nécessaires au bon fonctionnement de l’interpréteur Python. En particulier, le moduleclr
permet de traiter les espaces nom .NET essentiellement comme des packages Python.Charge les assemblages standard (par exemple, les DLL) pour utiliser les API .NET gérées pour AutoCAD et Civil 3D.
Ajoute des références aux espaces nom AutoCAD et Civil 3D standard. Celles-ci sont équivalentes aux directives
using
ouImports
en C# ou VB.NET (respectivement).Les ports d’entrée du nœud sont accessibles à l’aide d’une liste prédéfinie appelée
IN
. Vous pouvez accéder aux données d’un port spécifique à l’aide de son numéro d’index, par exempledataInFirstPort = IN[0]
.Extrait le document et l’éditeur actifs.
Verrouille le document et lance une transaction de base de données.
Vous devez insérer l’essentiel de la logique de votre script ici.
Supprimez le commentaire de cette ligne pour valider la transaction une fois votre travail principal terminé.
Si vous souhaitez générer des données à partir du nœud, affectez-les à la variable
OUT
à la fin de votre script.
Envie de personnaliser ?
Vous pouvez modifier le modèle Python par défaut en modifiant le fichier PythonTemplate.py
situé dans C:\ProgramData\Autodesk\C3D <version>\Dynamo
.
Examinons un exemple pour démontrer certains des concepts essentiels de l’écriture de scripts Python dans Dynamo for Civil 3D.
Voici des exemples de fichiers qui peuvent vous servir de référence pour cet exercice.
Voici une présentation de la logique de ce graphique.
Consulter la documentation relative à l’API Civil 3D
Sélectionner tous les bassins versants du document par nom de calque
« Déballer » les objets Dynamo pour accéder aux membres internes de l’API Civil 3D
Créer des points Dynamo à partir de points AutoCAD
Créer des polycourbes à partir des points
Allons-y !
Vous pouvez maintenant commencer à construire la logique graphique. La première chose à faire est d’obtenir une liste de tous les bassins versants du document. Des nœuds sont disponibles pour cela, il n’est donc pas nécessaire de l’inclure dans le script en Python. L’utilisation de nœuds permet une meilleure visibilité pour quiconque lirait le graphique (au lieu d’ajouter beaucoup de code dans un script Python), et cela permet également au script Python de se concentrer sur une seule chose : renvoyer les points de limite des bassins versants.
Notez ici que la sortie du nœud Tous les objets du calque est une liste de CivilObjects. En effet, Dynamo for Civil 3D ne dispose pas actuellement de nœuds pour travailler avec des bassins versants, ce qui explique pourquoi nous devons accéder à l’API en Python.
En règle générale, il est plus sûr d’obtenir l’ID de l’objet à l’aide de la propriété InternalObjectId
, puis d’accéder à l’objet enveloppé dans une transaction. En effet, la propriété InternalDBObject
renvoie un objet DBObject AutoCAD qui n’est pas accessible en écriture.
Voici le script Python complet qui permet d’accéder aux objets internes du bassin versant et d’obtenir leurs point de limite. Les lignes en surbrillance représentent celles qui sont modifiées/ajoutées par rapport au modèle de code par défaut.
Cliquez sur le texte souligné dans le script pour obtenir une explication sur chaque ligne.
En règle générale, il est recommandé d’inclure l’essentiel de la logique de votre script dans une transaction. Cela garantit un accès sécurisé aux objets que votre script lit/écrit. Dans de nombreux cas, l’omission d’une transaction peut provoquer une erreur irrécupérable.
À ce stade, le script Python doit produire une liste de points Dynamo que vous pouvez voir dans l’aperçu en arrière-plan. La dernière étape consiste simplement à créer des polycourbes à partir des points. Notez que cette opération pourrait également être réalisée directement dans le script Python, mais vous l’avez intentionnellement placée en dehors du script dans un nœud afin qu’elle soit plus visible. Voici à quoi ressemble le graphique final.
Et voici la géométrie Dynamo finale.
Une petite remarque avant de conclure. Selon la version de Civil 3D que vous utilisez, le nœud Python peut être configuré différemment. Dans Civil 3D 2020 et 2021, Dynamo utilisait un outil appelé IronPython pour déplacer des données entre des objets .NET et des scripts Python. Cependant, dans Civil 3D 2022, Dynamo est passé à l’utilisation de l’interpréteur Python natif standard (également appelé CPython) qui utilisent Python 3. Les avantages de cette transition comprennent l’accès aux bibliothèques modernes les plus populaires et aux nouvelles fonctionnalités de la plateforme, la maintenance essentielle et les correctifs de sécurité.
Cette ligne récupère la classe spécifique dont nous avons besoin à partir de la bibliothèque de géométries Dynamo. Notez que nous spécifions import Point as DynPoint
ici au lieu de import *
, car cette instruction introduit des conflits d’attribution de noms.
Ici, nous spécifions exactement quel port d’entrée contient les données que nous voulons au lieu du IN
par défaut, qui fait référence à la liste complète de toutes les entrées.
Placer des références de bloc de lampadaires le long d’un projet 3D aux valeurs d’abscisse curviligne spécifiées dans un fichier Excel.
Mission accomplie !
créer un graphique Dynamo qui insérera du texte dans un espace objet.
Mission accomplie !
Placer les références de bloc de compteurs d’eau à des distances spécifiées de la ligne de parcelle, et tracer une ligne pour chaque raccordement perpendiculaire à la conduite principale.
Mission accomplie !
Utiliser un bloc de contour du véhicule pour générer des solides 3D de zone de dégagement le long d’un projet 3D.
Mission accomplie !
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 ci-dessous).
Si vous ne connaissez pas le Lecteur Dynamo, consultez la section .
Créer un groupe de points pour chaque description de point COGO unique.
Si vous ne connaissez pas les listes, consultez la section .
Si vous ne connaissez pas le Lecteur Dynamo, consultez la section .
Mission accomplie !
Nous vous recommandons de consulter le pour obtenir les informations les plus récentes concernant le développement de Dynamo. Le tableau ci-dessous résume les principales étapes du cycle de vie de Dynamo for Civil 3D.
Version de Civil 3D | Version de Dynamo | Remarques |
---|
Renommer les structures du réseau de canalisations dans l’ordre en fonction de la cotation des abscisses d’un axe.
Si vous ne connaissez pas les listes, consultez la section .
Si vous ne connaissez pas le Lecteur Dynamo, consultez la section .
Mission accomplie !
permet d’obtenir la géométrie des limites de contour de tous les bassins versants d’un dessin.
Avant de commencer à créer le graphique et à écrire le code, il est conseillé de consulter la documentation relative à l’API Civil 3D et de se familiariser avec ses fonctionnalités. Dans ce cas, il existe une qui renvoie les points de limite du contour du bassin versant. Notez que cette propriété renvoie un objet Point3dCollection
, que Dynamo ne saura pas traiter En d’autres termes, vous ne pourrez pas créer de polycourbe à partir d’un Point3dCollection
. Par conséquent, vous devrez éventuellement tout convertir en points Dynamo. Nous y reviendrons plus tard.
Avant d’aller plus loin, il convient d’aborder brièvement un concept important. Dans la section , nous avons vu comment les objets CivilObjects sont liés. Pour apporter un peu plus de détails, un objet Dynamo est un wrapper autour d’une entité AutoCAD. De même, un CivilObject Dynamo est un wrapper autour d’une entité Civil 3D. Vous pouvez « déballer » un objet en accédant à ses propriétés InternalDBObject
ou InternalObjectId
.
Type Dynamo | Enveloppes |
---|
Mission accomplie !
Pour en savoir plus sur cette transition et sur la manière de mettre à jour les scripts existants, consultez le . Si vous souhaitez continuer à utiliser IronPython, il vous suffit d’installer le package DynamoIronPython2.7 à l’aide du gestionnaire de package Dynamo.
2024.1 | 2,18 |
2024 | 2.17 | Mise à jour de l’interface utilisateur du Lecteur Dynamo |
2023.2 | 2.15 |
2023 | 2.13 | Mise à jour de l’interface utilisateur de Dynamo |
2022.1 | 2.12 |
|
2022 | 2.10 |
|
2021 | 2.5 |
2020.2 | 2.4 |
2020 Update 2 | 2.4 | Nouveaux nœuds ajoutés |
2020.1 | 2.2 |
2020 | 2.1 | Version initiale |
Objet Autodesk.AutoCAD.DynamoNodes.Object | Entité Autodesk.AutoCAD.DatabaseServices.Entity |
CivilObject Autodesk.Civil.DynamoNodes.CivilObject | Entité Autodesk.Civil.DatabaseServices.Entity |
Ce guide n’est que le début de votre aventure avec Dynamo for Civil 3D. Une communauté dynamique d’utilisateurs de Dynamo met à votre disposition une grande quantité de connaissances. Consultez ces ressources au fur et à mesure de votre apprentissage.
Les packages Dynamo sont des jeux d’outils développés par des tiers afin d’étendre les fonctionnalités de base de Dynamo. Ils sont accessibles à tous et peuvent être téléchargés d’un simple clic.
Consultez la section Packages pour découvrir comment bien débuter avec les packages.
Voici une liste de certains des packages les plus populaires qui peuvent faire passer vos graphiques Dynamo for Civil 3D au niveau supérieur.
Le boîte à outils Civil 3D est un package Dynamo for Civil 3D qui apporte des améliorations significatives aux fonctionnalités de Dynamo grâce à un large éventail de nœuds supplémentaires.
Camber est un package open source de Dynamo for Civil 3D qui inclut des centaines de nœuds pour travailler avec des étiquettes, des Xrefs, des raccourcis de données, des styles, et plus encore.
CivilConnection est un package open source de Dynamo pour Revit qui permet l’échange d’informations entre Civil 3D, Dynamo et Revit.
Les nœuds Arkance Systems sont un package Dynamo for Civil 3D contenant une grande variété de nœuds utiles pour travailler avec les dimensions, les tableaux, les vues, Drill Control, et bien plus encore.
À terme, il est probable que vous ayez besoin d’aller au-delà des notions de base et de vous plonger au cœur de Dynamo. Les pages de cette section vous donneront un plan pour débloquer des fonctionnalités avancées dans Dynamo for Civil 3D afin que vous puissiez faire passer vos graphiques au niveau supérieur.