Vai al contenuto
← Knowledge base
Script4 min di lettura

PyRevit: rinominare le viste in batch con poche righe di Python

Uno script open-source per applicare una convenzione di naming a tutte le viste di un modello Revit, in un'unica transazione.

Le convenzioni di naming sono il primo requisito di quasi ogni BIM Guide, e il primo a essere disatteso. Rinominare a mano centinaia di viste è lento e soggetto a errori: è il caso perfetto per uno script.

Lo script

Il codice seguente aggiunge un prefisso a tutte le viste di pianta che non lo hanno già, escludendo i modelli di vista.

from pyrevit import revit, DB, forms

PREFIX = "STR_"

views = (
    DB.FilteredElementCollector(revit.doc)
    .OfClass(DB.ViewPlan)
    .WhereElementIsNotElementType()
)
targets = [v for v in views if not v.IsTemplate and not v.Name.startswith(PREFIX)]

with revit.Transaction("Rinomina viste"):
    for view in targets:
        view.Name = PREFIX + view.Name

forms.alert("{} viste rinominate.".format(len(targets)))

Come usarlo

  1. Crea una cartella .extension nel percorso delle estensioni di pyRevit.
  2. Aggiungi un pulsante e salva il codice come script.py.
  3. Ricarica pyRevit ed esegui il comando sul modello aperto.

Oltre il prefisso

Lo stesso schema (raccolta, filtro, transazione) si applica a qualsiasi regola di naming: lettura di parametri, livelli, discipline. Il passo successivo è leggere la convenzione direttamente da un file condiviso, così che lo standard e lo script non divergano mai.

Richiesta di consulenza

Parliamo del tuo progetto