BON CODE SOUS REVIT (2/3)

Pour faire suite à mon article précédent, on va améliorer notre code afin d’accroitre sa lisibilité. Précision des unités La gestion des unités est une véritable difficulté dans Revit car la base de données interne est en pieds ! Ainsi Revit a besoin et nous renvoi des dimensions qui ne sont pas métrique. Modification…

Continuer la lecture

BON CODE SOUS REVIT (1/3)

BON CODE SOUS REVIT Vous êtes utilisateur de Revit, et vous avez besoin de bout de code pour améliorer votre processus de travail. Cela tombe bien, Revit offre de nombreux outils pour réaliser des scripts. On peut citer Python et C# au sein d'applications externes, de scripts de console, et même de programmations graphiques…

Continuer la lecture

Revit C# – Les bases pour la programmation

La syntaxe générale Commençons par une bonne nouvelle : comme C# est un langage compilé, l’éditeur va vous aider dans le respect de la syntaxe. Le compilateur Quand on parle de langage de programmation, on parle de langage pour l'humain. Vous écrivez un code dans un langage que vous pouvez relire ou qu'un autre…

Continuer la lecture

Revit C# : Hello World au demarrage

Le coeur du code est identique à la version 'commande', mais je présente ici la manière d’exécuter un code au démarrage (ou à la fermeture) de Revit. On appel cela une application ('External application') en opposition avec une commande ('External command'). // Hello World - au demarrage [Transaction(TransactionMode.Manual)] public class HelloWorld : IExternalApplication {…

Continuer la lecture

Dynamo : python vs C#

De plus en plus d’utilisateur de Revit veulent travailler avec Dynamo, plutôt qu’avec des plugins. J’ai identifié deux principales raisons à cet engouement : la possibilité de partager facilement des ‘trucs et astuces’ parmi les utilisateurs de Revit. la notion de noeud qui permet d’adapter ses précédents noeuds à de nouveaux problèmes. Afin de…

Continuer la lecture

Revit C# : Hello world

nous présentons ici le code minimaliste afin d'afficher la célèbre phase 'Hello World'. La boite de dialogue Revit étant dans un système d’exploitation graphique (par opposition à une console), il nous faut afficher le message dans une simple boite de dialogue. l'API Revit nous fournit une classe équivalente à MsWindows 'MessageBox' qui se nomme…

Continuer la lecture

Revit C# : dynamic model update

Lorsque qu'un élément du modèle en cours est modifié, on peut demander au logiciel de lancer un code. Ce code ne sera donc exécuté qu'une seule fois par modification. Ainsi, les performances ne sont pas trop altérées. On a besoin d'une méthode contenant le code a exécuter et des fonctions pour respectivement démarrer l'écoute…

Continuer la lecture

Revit C# : LINQ

La technologie LINQ permet créer des requêtes qui s’inspirent du SQL dans une ligne de commande. On souhaite par exemple récupérer la liste des portes ayant le nom "PorteVitrail". On commence classiquement par créer une collection de tous les éléments du modèle, que l'on filtre pour ne garder que les types de famille, que…

Continuer la lecture

Revit C# : informations sur session en cours

La classe 'ExternalCommandData', premier paramètre de la méthode Execute, défini dans l'interface IExternalCommand, nous donne accès à une multitude d'informations sur la session Revit en cours. Cette classe permet d'accéder à deux classes qui nous fournissent des informations. La classe Application (Autodesk.Revit.ApplicationServices.Application) nous donne (entre autre) accès aux propriétés suivantes : AllUsersAddinsLocation : le…

Continuer la lecture
  • 1
  • 2
Fermer le menu