Torna al Blog
RevitAPIDynamoPythonAutomazioneBIMUNIBIMSmart Location

Bounding Box in Revit: Da Concetti Complessi a Soluzioni con Un Click

Paulo Giavoni

Paulo Giavoni

Ingegnere & Specialista BIM

5 gennaio 20268 min read
Bounding Box in Revit: Da Concetti Complessi a Soluzioni con Un Click

Capire Come Revit "Vede" la Posizione degli Elementi#

Quando lavoriamo con l'automazione in Revit — sia tramite Dynamo che programmazione diretta — una delle prime domande che sorge è: come fa il software a sapere dove si trova ogni elemento?

La risposta passa attraverso diverse strategie, e la più comune coinvolge un concetto chiamato Bounding Box. In questo articolo spiegherò cosa significa in pratica, quali altre forme esistono per identificare la posizione degli oggetti all'interno di un modello BIM, e come puoi saltare tutta questa complessità con una soluzione dedicata.


Cos'è una Bounding Box?#

Immagina di dover confezionare un oggetto qualsiasi — una sedia, per esempio — in una scatola rettangolare. Questa scatola sarebbe il "pacchetto" più piccolo in grado di avvolgere completamente l'oggetto, con tutte le sue facce parallele agli assi X, Y e Z dell'ambiente.

Questa è una Bounding Box: una scatola immaginaria, allineata agli assi del modello, che rappresenta i limiti esterni di un elemento.

In Revit, ogni famiglia modellata — un apparecchio, una presa, un'attrezzatura meccanica — possiede una Bounding Box associata. È definita da due punti: l'angolo inferiore (Min) e l'angolo superiore (Max) di questa scatola virtuale.

Perché è Utile?#

Perché è un modo estremamente veloce per rispondere a domande come:

  • Questo elemento è all'interno di un determinato locale?
  • Quali oggetti sono nell'area di influenza di un altro?
  • C'è sovrapposizione tra due pezzi?

Il calcolo è semplice: basta verificare se i limiti di una scatola toccano o sono contenuti nei limiti di un'altra. Non è necessario analizzare la geometria reale dell'oggetto, che può essere complessa e lenta da processare.


L'Approccio Dynamo: Potente ma Complesso#

Molti professionisti BIM si rivolgono a Dynamo per risolvere sfide di localizzazione spaziale. E funziona — ma a un costo.

Creare uno script Dynamo per il rilevamento Room/Space richiede:

  1. Estrarre punti di localizzazione da ogni tipo di elemento (comprendendo LocationPoint vs LocationCurve)
  2. Interrogare le Room usando Room.IsInsideRoom o nodi spaziali simili
  3. Gestire casi limite — elementi fuori dalle room, valori nulli, MEP sopra i controsoffitti
  4. Scrivere parametri sugli elementi con gestione adeguata delle transazioni

Il Costo Reale degli Script Dynamo#

Questo approccio ha svantaggi significativi:

  • Curva di apprendimento: Settimane o mesi per diventare competenti
  • Onere di manutenzione: Gli script si rompono con aggiornamenti Revit e modifiche al modello
  • Gestione casi limite: Ogni nuovo modello rivela nuove modalità di fallimento
  • Nessun supporto: Quando si rompe alle 2 di notte prima di una scadenza, sei da solo
  • Problemi di performance: Implementazioni ingenue possono bloccarsi su modelli grandi
  • Risultati inconsistenti: Diversi membri del team creano script diversi
  • Risultati inconsistenti: Diversi membri del team creano script diversi

La Base Tecnica: Multiple Strategie di Rilevamento#

Strategie di localizzazione spaziale nell'API Revit
Strategie di localizzazione spaziale nell'API Revit

Per costruire una soluzione robusta, devi capire e implementare multiple strategie di rilevamento:

Location Point e Location Curve#

Molti elementi possiedono un punto di inserimento definito — è il luogo dove hai "cliccato" per posizionarlo nel modello. Famiglie di faccia, attrezzature, mobilio e dispositivi elettrici generalmente hanno un Location Point.

Gli elementi lineari come condotti, tubazioni e cavi possiedono una Location Curve: una linea che rappresenta il loro percorso.

Verifica tramite Punto Dentro Locale#

Revit offre un metodo nativo per verificare se un punto è all'interno di un Room o Space. È veloce e preciso, ma funziona solo per elementi che possiedono un punto di locazione definito.

Strategia Host Element#

Alcuni elementi (come apparecchi elettrici) sono ospitati su pareti, soffitti o pavimenti. Puoi ereditare il Room/Space dall'elemento ospite — ma implementarlo richiede comprendere le relazioni tra elementi di Revit.

Intersezione di Geometria Solida#

Quando la precisione è critica, puoi ricorrere all'analisi di geometria solida. È il metodo più preciso disponibile, ma anche il più costoso computazionalmente.

Confronto tra le Strategie#

MetodoVelocitàPrecisioneComplessità di Implementazione
Bounding BoxAltaBassaMedia
Location PointAltaMediaMedia
Host ElementAltaAltaAlta
Punto in Room/SpaceAltaAltaMedia
Intersezione di SolidiBassaAltaMolto Alta

Le migliori soluzioni combinano approcci multipli in un pattern a cascata: provano prima metodi veloci, poi ricorrono a metodi più precisi (ma più lenti) quando necessario.


L'Alternativa Migliore: UNIBIM Smart Location#

E se potessi saltare tutta questa complessità?

UNIBIM Smart Location è una funzionalità costruita appositamente che gestisce tutto automaticamente:

Cosa Fa#

  • Rilevamento Automatico Room/Space: Rileva a quale Room o Space appartiene ogni elemento
  • Motore Multi-Strategia: Usa 5 diverse strategie di rilevamento a cascata (Host Element → Indice Spaziale → Proprietà Diretta → Query API → Fallback Geometrico)
  • Espansione Delta Direzionale: Gestisce elementi sopra i controsoffitti o sotto i pavimenti con confini di rilevamento configurabili
  • Elaborazione Batch: Elabora 500-1000+ elementi al secondo con indicizzazione spaziale ottimizzata
  • Scrittura con Un Click: Scrive i risultati sui parametri standard Revit o parametri condivisi personalizzati

Perché Scegliere un Plugin Dedicato?#

AspettoScript DynamoUNIBIM Smart Location
Tempo di SetupGiorni a settimane5 minuti
Curva di ApprendimentoRipidaNessuna
ManutenzioneTuAggiornamenti professionali
Casi LimiteProva ed erroreTestato in battaglia
PerformanceVariabileOttimizzata (500+ elem/sec)
SupportoNessunoSupporto professionale
Aggiornamenti RevitScript potrebbero rompersiCompatibilità testata

Il Calcolo del ROI#

Considera il costo reale dell'approccio Dynamo:

  • Tempo di apprendimento: 40+ ore per diventare competenti
  • Sviluppo script: 20+ ore per una soluzione robusta
  • Manutenzione: 5+ ore all'anno per risolvere problemi
  • Debug: Ore sconosciute quando fallisce durante una scadenza

A una tariffa professionale di €50-100/ora, rappresenta €3.000-6.000 o più in costi nascosti — più lo stress e il rischio di automazione inaffidabile.


Guardalo in Azione#

Percorriamo il flusso di lavoro di Smart Location passo dopo passo:

Passo 1: Seleziona Elementi, Visualizza la Lista e Rileva le Localizzazioni#

Dopo aver selezionato gli elementi in Revit, la scheda Elements mostra tutti gli elementi. Clicca "Detect Locations" e guarda il plugin trovare automaticamente Room/Space per ogni elemento con indicatori di stato.

Scheda Elements di Smart Location con risultati di rilevamento
Scheda Elements di Smart Location con risultati di rilevamento

Passo 2: Rivedi il Riepilogo per Space/Room#

La scheda Summary raggruppa gli elementi per localizzazione rilevata, rendendo facile verificare i risultati e identificare pattern nel tuo modello. Puoi anche esportare il riepilogo in Excel per documentazione o analisi aggiuntive.

Scheda Summary di Smart Location che mostra elementi raggruppati per Space
Scheda Summary di Smart Location che mostra elementi raggruppati per Space

Passo 3: Configura i Confini di Rilevamento (Premium)#

La scheda Configuration permette di regolare finemente i confini di rilevamento — perfetto per elementi MEP sopra i controsoffitti o sotto i pavimenti.

Scheda Configuration di Smart Location con impostazioni delta direzionali
Scheda Configuration di Smart Location con impostazioni delta direzionali

Passo 4: Scrivi le Localizzazioni su Ogni Elemento#

Clicca "Write Parameters" e le localizzazioni rilevate vengono scritte direttamente su ogni elemento. Qui puoi vedere un armadio con il parametro di localizzazione UNIBIM compilato con il nome del Room.

Proprietà dell'elemento che mostra il parametro di localizzazione UNIBIM compilato con il nome del Room
Proprietà dell'elemento che mostra il parametro di localizzazione UNIBIM compilato con il nome del Room

Il Flusso di Lavoro Completo#

Ecco l'intero processo in azione — dalla selezione alla scrittura dei parametri:

Dimostrazione completa del flusso di lavoro UNIBIM Smart Location
Dimostrazione completa del flusso di lavoro UNIBIM Smart Location

Cosa stai vedendo:

  1. Seleziona elementi in Revit (attrezzature MEP, mobili, dispositivi elettrici, ecc.)
  2. Clicca "Detect Locations" — il plugin trova automaticamente Room/Space per ogni elemento
  3. Rivedi risultati nella tabella interattiva con filtri e ordinamento
  4. Clicca "Write Parameters" — i valori rilevati vengono scritti su Revit

Nessun script. Nessuna manutenzione. Nessun debug di casi limite. Solo risultati.


Inizia Oggi#

UNIBIM è disponibile come download gratuito con funzionalità principali, e tier Premium per capacità avanzate come l'espansione delta direzionale e supporto prioritario.


Considerazioni Finali#

La Bounding Box e le relative tecniche di rilevamento spaziale sono concetti fondamentali per chi lavora con l'automazione BIM. Comprenderli aiuta ad apprezzare la complessità che entra nell'analisi spaziale affidabile.

Ma comprendere i concetti e costruire strumenti pronti per la produzione sono cose molto diverse.

Per i professionisti che hanno bisogno di portare a termine il lavoro — non passare settimane a diventare esperti Dynamo — un plugin dedicato offre:

  • Produttività immediata invece di una curva di apprendimento
  • Risultati affidabili invece di sessioni di debug
  • Supporto professionale invece di ricerche su Stack Overflow
  • Aggiornamenti continui invece di onere di manutenzione

La scelta è tua: investire settimane in scripting, o investire minuti in una soluzione che semplicemente funziona.

Share:

Questions or Feedback?

I'd love to hear your thoughts on this article. Reach out directly and let's start a conversation.

Follow me on LinkedIn for more BIM tips and updates