Comment récupérer le paramètre Elévation de certains objets revit
DD
Didier DUHEM
30 mai 2016
19699 0 5 0
bonjour,
un certain nombre d'objet Revit, notamment les objets issus de modèles générique on un paramètre Elévation (par rapport à un niveau de référence).
Exemple : les appareillages électriques (interrupteurs, prises, etc...)
Autre exemple : une ouverture circulaire dans un mur créée comme un volume vide.
etc....
Je cherche à utiliser ce paramètre dans des étiquettes ou dans les nomenclatures.... comment y accéder ?
merci
un certain nombre d'objet Revit, notamment les objets issus de modèles générique on un paramètre Elévation (par rapport à un niveau de référence).
Exemple : les appareillages électriques (interrupteurs, prises, etc...)
Autre exemple : une ouverture circulaire dans un mur créée comme un volume vide.
etc....
Je cherche à utiliser ce paramètre dans des étiquettes ou dans les nomenclatures.... comment y accéder ?
merci
Réponses
Bonjour,
Ce n'est pas possible de manière native. Il faut utiliser un script pour transférer la valeur dans un paramètre partagée. Une des tares de Revit, certains paramètres comme celui ci existent mais ne peuvent pas être appeler dans une nomenclature/étiquette...
Bonne journée,
Ce n'est pas possible de manière native. Il faut utiliser un script pour transférer la valeur dans un paramètre partagée. Une des tares de Revit, certains paramètres comme celui ci existent mais ne peuvent pas être appeler dans une nomenclature/étiquette...
Bonne journée,
CW
Bonjour,
c'est une chose assez facile à faire avec Dynamo, tu peux t'inspirer du script que j'ai mis à dispo ici : https://www.hexabim.com/applications/dynamo-arases-de-fondations où je voulais récupérer les altimétries de semelles de fondations.
Le principe est le même, on crée un paramètre partagé qui va servir aux étiquettes, on récupère la valeur du paramètre des objets (élévation, décalage ...) et on la copie dans le paramètre partagé.
c'est une chose assez facile à faire avec Dynamo, tu peux t'inspirer du script que j'ai mis à dispo ici : https://www.hexabim.com/applications/dynamo-arases-de-fondations où je voulais récupérer les altimétries de semelles de fondations.
Le principe est le même, on crée un paramètre partagé qui va servir aux étiquettes, on récupère la valeur du paramètre des objets (élévation, décalage ...) et on la copie dans le paramètre partagé.
JG
Didier tu à répondu sur la page du script :
Alors il y à plusieurs solutions :
Utiliser Dynamo en automatique. A chaque action dans REVIT dynamo relance le script en cours ; sur des fichiers très lourds ça peux ralentir un peu le logiciel, mais ça fonctionne.
Utiliser Dyno, qui permet de mettre en raccourcis dans le ruban les scripts Dynamo.
Bien sûr, avec Dynamo....
mais à la moindre modif il ne faut pas oublier de relancer la "mécanique" : ouvrir dynamo, charger le script, l'exécuter.
C''est un peu lourd...Si encore il était possible d'ajouter un bouton dans le ruban qui fasse le tout...
Merci tout de même d'avoir passé un peu de temps pour me répondre.
Je vais essayer de voir si une macro qui intercepterait l'évènement de création ou de modification et qui ferait le même boulot n'est pas possible.
dès que j'aurai un peu de temps ; en attendant, Dynamo fera l'affaire.
cdlt
Alors il y à plusieurs solutions :
Utiliser Dynamo en automatique. A chaque action dans REVIT dynamo relance le script en cours ; sur des fichiers très lourds ça peux ralentir un peu le logiciel, mais ça fonctionne.
Utiliser Dyno, qui permet de mettre en raccourcis dans le ruban les scripts Dynamo.
JG
Alors là ! çà commence vraiment à devenir intéressant
merci beaucoup
merci beaucoup
DD
Bonjour,
je débute en dynamo et j'ai repris à ma sauce le script donné plus haut , mais cela ne fonctionne pas. j'ai juste besoin de récupérer la hauteur d'élévation/décalage (pas besoin de NGF) et de la transférer dans un paramètre partagé.
merci d'avance
je débute en dynamo et j'ai repris à ma sauce le script donné plus haut , mais cela ne fonctionne pas. j'ai juste besoin de récupérer la hauteur d'élévation/décalage (pas besoin de NGF) et de la transférer dans un paramètre partagé.
merci d'avance
ML
Bonjour,
Pour que votre script marche, il faut votre paramètre partagé soit de même unité que Décalage. en l'occurrence dans cet exemple "Longueur", sinon il faut utiliser le nœud "String from objet"
Cf (pièce jointe un exemple)
Pour que votre script marche, il faut votre paramètre partagé soit de même unité que Décalage. en l'occurrence dans cet exemple "Longueur", sinon il faut utiliser le nœud "String from objet"
Cf (pièce jointe un exemple)
AA
super merci beaucoup.
effectivement mon paramètre était en texte et non longueur.
effectivement mon paramètre était en texte et non longueur.
ML
en fait j'ai encore un petit soucis: quand ma hauteur de décalage est inférieure à 1m (exemple 0.1m) mon étiquette ne m'affiche pas la valeur 0 et le point donc j'ai une valeur de 10m.
ML
AA
non non c'est bon dans les propriétés, c'est juste dans l'étiquette que ça pose problème.
je pense que c'est une histoire de 0 considéré comme valeur nulle et qui du coup ne s'affiche pas ?
je pense que c'est une histoire de 0 considéré comme valeur nulle et qui du coup ne s'affiche pas ?
ML
Dans ce cas, c'est dans l’étiquette qu'il faut choisir la bonne unité
Vous cliquez sur l'icone ( en jaune sur PJ) est vous choisissez l'unité
Vous cliquez sur l'icone ( en jaune sur PJ) est vous choisissez l'unité
AA
super c'est bien ça.
encore merci
encore merci
ML
Bonjour,
j'ai essayé mon script ce matin sur RVT 2018, il ne fonctionne plus.
des idées??
j'ai essayé mon script ce matin sur RVT 2018, il ne fonctionne plus.
des idées??
ML
Package manquant ou incompatibilité de version entre le script et Dynamo ?
Il faut voir pourquoi il ne fonctionne pas, Dynamo indique le nœud qui pose problème lors de l’exécution.
Il faut voir pourquoi il ne fonctionne pas, Dynamo indique le nœud qui pose problème lors de l’exécution.
JG
le probleme vient du bloc Element.setParameterbyname.
l'erreur est la suivante : "Avertissement:Element.SetParameterByName l'opération a échoué.
Le type de stockage du paramètre n'est pas un nombre."
l'erreur est la suivante : "Avertissement:Element.SetParameterByName l'opération a échoué.
Le type de stockage du paramètre n'est pas un nombre."
ML
Je ne pense pas que ce soit la version de Revit qui soit en cause donc.
Il faut essayer de transformer la valeur du paramètre en nombre avec le nœud adéquat.
Il faut essayer de transformer la valeur du paramètre en nombre avec le nœud adéquat.
JG
Bonjour,
Je tenais tout d'abord à vous remercier pour les éléments ci-dessus. J'ai réussi à faire un script pour récupérer le décalage d'une bouche d’aération.
Je souhaiterais maintenant obtenir ce décalage pour un Equipement de Génie climatique mais par le biais de la famille et non de tout les équipements dans mon projet.
Je vous joint une base de travail. Il me manque juste le raccordement entre le filtre Equipement de génie climatique et la répercutions du paramètre "Décalage" sur mon paramètre partagé.
Merci par avance,
Je tenais tout d'abord à vous remercier pour les éléments ci-dessus. J'ai réussi à faire un script pour récupérer le décalage d'une bouche d’aération.
Je souhaiterais maintenant obtenir ce décalage pour un Equipement de Génie climatique mais par le biais de la famille et non de tout les équipements dans mon projet.
Je vous joint une base de travail. Il me manque juste le raccordement entre le filtre Equipement de génie climatique et la répercutions du paramètre "Décalage" sur mon paramètre partagé.
Merci par avance,
FO
bonjour
merci je l'ais essaye et ca marche bien
merci je l'ais essaye et ca marche bien
OM
Bonjour, petit détail si ça pourrait intéresser quelqu'un, attention le décalage c'est par rapport au niveau de Revit e pas le fini de la vrai dalle, donc attention au décaissé de dalle. Bien à vous
SP


