Run Python permet d’exécuter un script Python depuis BIMO dans la session Revit active. Utilisez-le pour des contrôles rapides, de petites automatisations et des workflows répétables que vous souhaitez conserver sous forme de preset BIMO.
Avertissement : un script Python peut modifier le modèle Revit. Testez les scripts qui modifient le modèle sur une copie ou un fichier de test sûr.
Avant l’exécution
Ouvrez le projet ou la famille Revit sur lequel le script doit agir.
Vérifiez que le script est prévu pour le document actif.
Si le script modifie le modèle, assurez-vous qu’il ouvre et valide sa propre transaction Revit.
Réglages de la commande
Réglage | Fonction |
|---|---|
| Choisit le moteur d’exécution : |
| Chemin facultatif vers un fichier |
| Code Python saisi directement dans les réglages. Lorsque ce champ n’est pas vide, BIMO l’exécute à la place de |
| Liste de valeurs d’entrée textuelles transmises au script. |
Choisir un moteur
Utilisez IronPython lorsque le script doit accéder directement au document Revit actif au moyen de variables BIMO telles que __doc__, __uidoc__ ou __uiapp__.
Utilisez Dynamo_CPython3 pour les scripts écrits dans le style d’un nœud Python Dynamo, avec IN pour les entrées et OUT pour la sortie.
Avertissement :
Dynamo_CPython3ne fournit pas__doc__,__uidoc__,__revit__ni__uiapp__. Si l’interface Dynamo est déjà ouverte, BIMO peut vous demander de la fermer avant d’exécuter le script.
Valeurs disponibles dans le script
Valeur | Disponible dans | Signification |
|---|---|---|
|
| Valeurs textuelles saisies dans les réglages de la commande. |
|
| Résultat à afficher après l’exécution. Pour un affichage prévisible, renvoyez du texte. |
|
|
|
|
|
|
|
| Contexte de l’application Revit active. |
|
| Objet de sélection Revit actuel. |
Renvoyer un résultat
La méthode recommandée consiste à affecter du texte à OUT.
Avec IronPython, la sortie de print() peut également être affichée lorsque OUT n’est pas défini.
Exemple : afficher le nom du document actif
Moteur : IronPython
Cet exemple lit uniquement des informations et ne modifie pas le modèle.
Exemple : utiliser des valeurs d’entrée
Ajoutez une valeur à IN, par exemple une note ou un préfixe, puis exécutez :
Les valeurs de IN sont des chaînes de texte.
Exemple : modifier le modèle de manière contrôlée
Avertissement : cet exemple ouvre une transaction Revit et peut modifier le modèle actif. Utilisez ce modèle uniquement lorsque vous comprenez les modifications effectuées par le script.
BIMO n’enveloppe pas automatiquement votre script dans une transaction.
Emplacement des scripts
Vous pouvez conserver le code directement dans le réglage Script ou l’enregistrer dans n’importe quel fichier .py et le sélectionner dans Script file.
BIMO ne copie pas les fichiers .py dans une bibliothèque de scripts distincte. Si vous utilisez Script file, conservez le fichier dans un emplacement stable auquel Revit peut accéder.
Presets, variants et raccourcis clavier
Run Python prend en charge les presets BIMO. Chaque preset peut mémoriser ses propres réglages :
Execution Engine;ScriptouScript file;les valeurs
IN.
Cela permet de conserver plusieurs workflows Python prêts à être exécutés. Par exemple :
Preset | Contenu | Variant |
|---|---|---|
| Script contrôlant la vue active. |
|
| Script de remplissage de paramètres et valeurs |
|
| Chemin vers un fichier |
|
Après l’affectation d’un preset à Variant #1, Variant #2 ou Variant #3, le variant apparaît dans la liste déroulante sous le bouton Run Python. Chaque variant est un élément de commande distinct dans le ruban ; vous pouvez donc lui attribuer un raccourci dans Revit Keyboard Shortcuts.
Workflow recommandé :
Créez un preset distinct pour chaque workflow Python.
Donnez au preset un nom décrivant l’action, par exemple
Check Active ViewouExport Rooms.Affectez les presets les plus utilisés à
Variant #1..#3.Attribuez des raccourcis clavier aux variants nécessaires dans Revit.
Avertissement : un raccourci lance immédiatement le variant sélectionné. Si le script modifie le modèle, contrôlez d’abord le preset, le document actif et le script sur une copie du projet.
Pour la configuration des variants, consultez Presets and Variants.
Erreurs et dépannage
Problème | Vérification |
|---|---|
Le fichier ne peut pas être lu | Vérifiez le chemin |
Le résultat ne s’affiche pas | Renvoyez du texte dans |
Le script échoue | BIMO affiche les détails de l’erreur et permet de les copier. Corrigez le script puis réessayez. |
| Fermez l’interface Dynamo si elle est ouverte ou utilisez |
Limites connues
Scriptest prioritaire surScript file.Les valeurs
INsont transmises sous forme de chaînes de texte.BIMO ne crée pas de transaction autour du code Python.
Les variables Revit telles que
__doc__et__uidoc__sont disponibles uniquement dansIronPython.Pour un affichage prévisible du résultat, renvoyez du texte dans
OUT.Pour un accès rapide au clavier, utilisez des variants affectés à des presets.