Article non traduit actuellement, demandez la ou essayer la version anglaise ici (outil de traduction disponible) : http://pythoncvc.net/?p=201
Archives par mot-clé : Nettoyage
[Revit] Supprimer un système MEP
Même principe que pour les familles, le code suivant supprime les systèmes des objets sélectionnés :
uidoc = __revit__.ActiveUIDocument doc = __revit__.ActiveUIDocument.Document getselection = uidoc.Selection.GetElementIds t = Transaction(doc, "supprimer_système") t.Start() #Trouve l'Id des systèmes des objets sélectionnés et supprime ces systèmes s = [] for e in getselection(): try: s.append(doc.GetElement(e).MEPSystem.Id) except: c = doc.GetElement(e).MEPModel.ConnectorManager.Connectors for i in c: if i.MEPSystem != None: id = Element.Id.GetValue(i.MEPSystem) print id s.append(id) for id in s: print id doc.Delete(id) t.Commit()
Cette fonction est très utile pour gérer les systèmes. Il arrive souvent avec Revit que les systèmes ne fonctionnent pas comme on le voudrait et qu’il faille supprimer des systèmes polluant le projet. Supprimer un système est parfois le seul moyen de remettre les choses en ordre et il n’est pas pratique d’aller chercher le système dans le navigateur de système qui en contient parfois des centaines.
Vidéo démo (dsl pour les parasites, il faut que je trouve d’où ils viennent pour la prochaine) :
[Revit] Supprimer des familles sélectionnées du projet
Quand vous devez nettoyer un projet des familles inutiles, il existe bien sûr la fonction « Purger les éléments inutilisés ». Mais lorsque l’on veut supprimer des familles spécifiques que l’on a sous les yeux :
– une purge est longue et fastidieuse : le lancement de la fonction dure un certain moment pour un gros projet et il ne faut pas se tromper de nom.
– Si on va chercher les éléments dans l’arborescence : plus le projet est gros, plus cela sera pénible.
– En faisant une recherche dans les familles : Il faut taper le nom de la famille, qu’il faut connaître.
Voici une petite fonction pour simplement supprimer les familles sélectionnées du projet :
uidoc = __revit__.ActiveUIDocument doc = __revit__.ActiveUIDocument.Document getselection = uidoc.Selection.GetElementIds t = Transaction(doc, "supprimer_famille") t.Start() #Trouve l'Id des familles sélectionnées et supprime ces familles for e in getselection(): s = doc.GetElement(e).Symbol.Family.Id doc.Delete(s) t.Commit() exit()
Vidéo démo :