dimanche 10 mai 2020

Revit 2020_Dynamo_Excel_Extraction de données pour les couches géologiques

Objectif: à partir d'une demande interne: "Extraire les volumes des différentes couches géologiques",

Revit donne le volume d'un terre-plein par contre l'altitude de la couche n'est pas indiquée dans la nomenclature
Avec Dynamo, on peu répondre à cette demande, on peu exporter toutes ces données vers Excel,
Par contre l'importation de ces mêmes données dans Revit n'est pas souhaitable...
En utilisant les valeurs absolues, des altitudes des couches géologiques, on détruit la logique de construction des terre-pleins, il y a des collisions dans les couches si l'on modifie cela depuis Excel...
Par ailleurs cet excercice m'a permis de tester plusieurs noeuds et de constater qu'il est possible d'extraire des données de différents types depuis une même source, exemple de la source "Décalage par rapport au niveau" qui permet d'extraire l'épaisseur des couches lorsque les valeurs sont combinées avec le volume et la surface
Pour info, j'ai commencé ce tuto avant de proposer le tuto sur les Nomenclatures de pièces en mode bidirectionnel Revit < > Excel, via Dynamo (Tuto)

00_De Revit à Excel via Dynamo
Nomenclature des couches géologiques_Noms, épaisseurs, Altimétries, Volumes

01_Revit, couches géologiques
(il s'agit de terre-pleins)
Feuille de présentation, V3D, Coupe, Nomenclature
> La nomenclature Revit indique un niveau 0, quel que soit l'altimétrie...


02_Revit, Coupe
Les couches géologiques et les propriétés associées
> Le décalage de niveau n'est pas une valeur intégrable dans une nomenclature


03_Revit, Nomenclature
Nomenclature des terre-pleins
Le tri est fait par Commentaires et les noms sont les identifiants
> Le champ niveau est inexploitable, on ne peut pas utiliser le décalage de niveau


04_Nomenclature Excel depuis Revit, via Dynamo
> Nom de la couche, épaisseur, Niveau haut, Niveau bas de la couche, Volume


05_Comparatif des nomenclatures
> en haut Nomenclature Revit
> en bas Nomenclature Excel issue de Revit via Dynamo


06_Dynamo
Vue générale du script


07_Dynamo
_Entrants: Site_Terre-Plein
_Le noeud List.ShiftIndices + Code Block sert à réorganiser les couches
(Utiliser les ID)


08_Dynamo
_Noms des couches
(c'est l'identifiant qui est utilisé, c'est le seul qui permet l'échange avec Revit)


09_Dynamo
> Niveau 0.00, inutilisable


10_Dynamo
_Décalage par rapport au niveau
Utilisation pour deux données différentes:
> Extraction des données (ici 0, -0.50, -1.00, -2.00, -3.50, -6.50)
> Utilisation de ces mêmes données combinées avec les Volumes et Surfaces pour déduire les altimétries
> La combinaison de ces données oblige à utiliser les valeurs absolues


11_Dynamo
_Volume des couches


12_Dynamo
_Surface des couches

13_Dynamo
_Epaisseur des couches
> Entrées = Volumes / Surfaces


14_Dynamo
_Niveau des couches à la base
> Entrée = Décalage par rapport au niveau (10)
> Conversion des données en valeurs absolues
> Entrée = Epaisseur des couches (13)


15_Dynamo
_Tri des données: Noms des couches, Niveaux Bas et Hauts des couches, Volumes


16_Dynamo
_Epaisseur des couches
_Rassemblement des données
Le fait d'utiliser les valeurs absolues, empêche d'obtenir les "vraies" valeurs...
Il faut les travailler dans Excel, ce qui perturbe le retour des données vers Revit
Par ailleurs, je n'ai pas trouvé d'alternative à l'utilisation des valeurs absolues dans Dynamo, sinon les résultats sont faux


17_Dynamo
_Export vers Excel


18_Excel
_Données brutes


19_Excel
_Données finalisées

samedi 2 mai 2020

Revit 2020_Réservation de sol avec impact

Objectif: Réaliser une réservation de sol avec impact (Visibilité Oui / Non) pour le niveau inférieur

Cet ajout à la réservation évite les erreurs / oublis lors des charrettes, l'impact fait partie intégrante de la famille, 
C'est du vécu...

00_Famille réservation de sol avec impact (Visibilité Oui / Non) (Hauteur paramétrable)

01_Construction de la famille réservation de sol
_Gabarit de famille > Modèle générique sol
_Nouveau > Famille > Modèle générique sol

02_Construction de la famille réservation de sol
Sur le plan de référence:
_Tracer des plans de référence
_Coter et libeller les plans de référence


03_Construction de la famille réservation de sol
_Créer > Formes vides > Vide par extrusion...


04_Construction de la famille réservation de sol
_Créer > Formes vides > Vide par extrusion
_Tracer une esquisse verrouillée sur les plans de référérence
_Valider > l'extrusion prend forme...

05_Construction de la famille réservation de sol
Vue avant
_Tracer 2 plans de référence pour la face supérieure et la face inférieure du sol
_Verrouiller les plans de référence au sol
_Verrouiller l'extrusion aux plans de référence
Le vide est terminé, il suivra l'épaisseur du sol

06_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
_Famille > Eléments de détail


07_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
Comme pour la famille vide d'extrusion:
_Tracer des plans de référence
_Coter et libeller les plans de référence


08_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
_Tracer l'esquisse, verrouiller sur les plans de référence


09_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
_Ajouter des plans de référence pour le symbole de la réservation
_Coter et libeller les plans de référence


10_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
_Tracer une zone remplie et verrouiller son contour sur les plans de référence
(Verrouiller également les points d'extrémité de la zone remplie)

11_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
_Ajout d'un paramètre de visibilité pour la famille Plan 2D
_Sélectionner toutes les entités de la famille Plan 2D >
_Clic sur le Carré en regard du champs Visible de Graphismes > 
_Association aux paramètres de la famille > Nouveau > 
_Paramètres de la famille > Nom > Occurrence > Type de paramètre > Oui / Non > Regrouper les paramètres sous > Graphismes...


12_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
_Ajout d'un paramètre de visibilité pour la famille Plan 2D
_Le carré en regard du champ Visible de Graphismes est = au champs 11 paramétré ci-dessus


13_Construction de la famille réservation de sol
Construction de la famille Plan 2D de la réservation
La famille plan 2D est terminée
_Charger dans le projet


14_Construction de la famille réservation de sol
Famille vide d'extrusion (3D) et famille Plan 2D...


15_Construction de la famille réservation de sol
_Association aux paramètres de la famille > Faire correspondre les valeurs de la famille Plan 2D aux valeurs de la famille vide d'extrusion


16_Construction de la famille réservation de sol
_Ajout d'un paramètre de visibilité > 
_Graphismes > Visible > Clic sur Carré > 
_Association aux paramètres de la famille > Visibilité Plan 2D (écrire le nom à l'invite)
_Valider


17_Construction de la famille réservation de sol
Les propriétés de la famille Plan 2D sont toutes associées aux paramètres de la famille Vide d'extrusion
_Charger dans le projet


18_Test des paramètres de visibilité pour une même famille sur le même niveau
_à gauche la visibilité de la famille Plan 2D est activée
_à droite la visibilité de la famille Plan 2D est désactivée 


19_Construction de la famille réservation de sol
Impact
Vue avant
_Tracer un plan de référence > Coter et libeller


20_Construction de la famille réservation de sol
Impact
_Définir comme plan de construction le plan de référence tracé en 19 (Hauteur Projection Impact)


21_Construction de la famille réservation de sol
Impact
_Définir comme plan de construction le plan de référence tracé en 19 (Hauteur Projection Impact)
_Tracer des lignes de modèles en cliquant sur le périmètre de la famille vide d'extrusion


22_Construction de la famille réservation de sol
Impact
_Tracer des lignes de modèles en cliquant sur le périmètre de la famille vide d'extrusion
_Verrouiller


23_Construction de la famille de réservation de sol
Impact
_Compléter le symbole Impact
Ajout d'un paramètre de visibilité pour le symbole Impact:
_Sélectionner toutes les entités de l'impact
_Graphismes > Visible > Clic sur carré > 
_Association aux paramètres de la famille > Nouveau > 
_Propriétés des paramètres > Paramètres de la famille > Nom > Occurrence > Type de paramètre > Oui / Non > Regrouper les paramètres sous > Graphismes


24_Construction de la famille réservation de sol
Impact
V3D de la famille
(Le symbole impact est visible car il est tracé avec des lignes de modèles et le paramètre de visibilité est Oui)


25_Construction de la famille réservation de sol
Impact
_Charger dans le projet


26_Projet_V3D
La famille réservation de sol et l'impact projeté sur le sol inférieur


27_Projet V3D
Propriétés de la famille réservation de sol avec impact



28_Projet_Niveau supérieur
_Visibilité activée pour la famille Plan 2D
_Visibilité désactivée pour le symbole Impact

29_Projet_Niveau inférieur
_Visibilité désactivée pour la famille Plan 2D
_Visibilité activée pour le symbole Impact


30_Projet_Coupe
Paramétrage de la hauteur de projection de l'impact
_Faire glisser la double flèche (jaune), ou entrer la hauteur dans les propriétés

31_Projet_V3D
Propriétés