Filtraggio di elementi di input della connessione

È possibile creare nodi aggiuntivi per filtrare le situazioni in base a criteri quali zone, sezioni o angoli.

Filtraggio per tipo di zona

Il nodo di Dynamo successivo da aggiungere allo script è Filter.ByZoneType. Questo nodo utilizza come input un nodo di connessione (o un elenco di nodi di connessione), un indice corrispondente all'elemento dei dati della struttura nel nodo di connessione e un tipo di zona, che può essere estremità o corpo (attualmente specificato come stringa senza distinzione tra maiuscole e minuscole). Come output, il nodo di Dynamo mostra i nodi di connessione che soddisfano i criteri e quelli che non li soddisfano.

Nota: Se si desidera controllare che il nodo tra gli elementi sia di un determinato tipo, verificare il tipo di zona.

In questo esempio, per controllare se il nodo di connessione tra B1 e B2 è di tipo da estremità a estremità, innanzitutto verificare che il tipo di zona sia l'estremità per il primo elemento (index = 0) nel nodo. Poiché tutti gli elementi (B1, B2, B3, B4) hanno il tipo di zona estremità, il filtro supera tutti i nodi secondari.

Input Output

Accettato

Output

Rifiutato





[ ]



Successivamente, aggiungere un secondo nodo di Dynamo per verificare che anche il tipo di zona per il secondo elemento (index = 1) sia estremità.



Tutti i nodi secondari di connessione soddisfano i criteri.

Input Output

Accettato

Output

Rifiutato





[ ]

Filtraggio per angolo di pendenza

Il filtro successivo da aggiungere allo script è Filter.BySlantAngle. L'angolo di pendenza è l'angolo formato dall'asse dell'elemento dei dati della struttura e l'asse verticale. L'angolo di pendenza è complementare all'angolo di inclinazione. Questo filtro è richiesto per verificare che il primo elemento sia verticale. Questo nodo di Dynamo utilizza come input un nodo di connessione o un elenco di nodi di connessione, l'indice dell'elemento strutturale del nodo di connessione da verificare, l'inizio e la fine dell'intervallo dell'angolo di pendenza (0-90°), in gradi.

In questo esempio, viene verificato che il primo elemento (index = 0) nel nodo di connessione abbia l'angolo di pendenza compreso tra 0 e 0 gradi, affinché sia verticale.



Solo tre dei nodi secondari di connessione soddisfano i criteri, quelli che hanno B1 come primo elemento, poiché B1 è l'unico elemento dei dati della struttura verticale:
Input Output

Accettato

Output

Rifiutato







Filtraggio per angolo di inclinazione

Il filtro successivo da aggiungere allo script è Filter.BySlopeAngle. L'angolo di inclinazione è l'angolo formato dall'asse dell'elemento dei dati della struttura e il piano orizzontale. L'angolo di inclinazione è complementare all'angolo di pendenza. Questo filtro è richiesto verificare che il secondo elemento abbia la pendenza compresa tra 10 e 15 gradi. Il nodo di Dynamo utilizza come input un nodo di connessione o un elenco di nodi di connessione, l'indice dell'elemento strutturale del nodo di connessione da verificare, l'inizio e la fine dell'intervallo dell'angolo di inclinazione (0-90°), in gradi.

In questo esempio, viene verificato che il secondo elemento (index = 1) nel nodo di connessione abbia l'angolo di inclinazione compreso tra 0 (rangeStart) e 15 (rangeEnd) gradi.



Poiché B4 è orizzontale, il nodo di connessione [B1, B4] non riuscirà a soddisfare i criteri di questo filtro.
Input Output

Accettato

Output

Rifiutato







Filtraggio per angolo tra assi

Aggiungere un filtro per l'ala del pilastro per incontrare sempre l'ala della trave e avere le anime degli elementi parallele.


Con le forme a W, è possibile utilizzare l'asse Y che è sempre normale all'anima. Per la connessione Giunto a flangia bullonato, con rinforzo, l'angolo tra gli assi Y dei due elementi dei dati della struttura deve essere 0 (devono essere paralleli).


Aggiungere il nodo di Dynamo Filter.ByAngleBetweenAxes. Il nodo utilizza come input un nodo di connessione o un elenco di nodi di connessione, gli indici degli elementi strutturali del nodo di connessione da verificare, i due assi da verificare (X, Y o Z), l'inizio e la fine dell'intervallo dell'angolo di inclinazione (0-90°), in gradi.

In questo esempio, viene verificato che l'angolo tra gli assi Y del primo elemento (index = 0) e del secondo elemento (index = 1) nel nodo di connessione sia 0.


Poiché l'anima di B3 non è parallela all'anima di B1 B1, il nodo di connessione [B1, B3] non riesce a soddisfare i criteri di questo filtro.

Input Output

Accettato

Output

Rifiutato







Filtraggio per forma di sezione

È possibile utilizzare il nodo di Dynamo Filter.BySectionShape per verificare la forma di sezione del profilo utilizzata per l'elemento dei dati della struttura. È possibile trovare la forma di sezione nella finestra di dialogo Proprietà del tipo di Revit, in Strutturale, nell'elenco Parametri del tipo.

Il nodo di Dynamo Filter.BySectionShape utilizza come input un nodo di connessione o un elenco di nodi di connessione, l'indice dell'elemento strutturale del nodo di connessione da verificare, la forma di sezione, per il quale deve essere utilizzato un nodo di Dynamo aggiuntivo denominato Input.StructuralSectionShapes.
Nota: Questo nodo di connessione può anche essere esposto nel Lettore Dynamo.
In questo esempio, viene verificato che il primo elemento (index = 0) nel nodo di connessione presenti la forma di sezione Profilato a I - Ala parallela.


Input Output

Accettato

Output

Rifiutato





[ ]

Filtraggio per tipo di sezione

È possibile utilizzare il nodo di Dynamo Filter.BySectionType per verificare il nome del tipo di sezione utilizzato per l'elemento dei dati della struttura.

Il nodo di Dynamo utilizza come input un nodo di connessione o un elenco di nodi di connessione, l'indice dell'elemento strutturale del nodo di connessione da verificare, il nome del tipo di sezione, per il quale deve essere utilizzato un nodo di Dynamo aggiuntivo denominato Input.StructuralDataTypes.

Nota: Questo nodo di Dynamo può essere esposto anche come input nel Lettore Dynamo.
In questo esempio, viene verificato che il secondo elemento (index = 1) nel nodo presenti il nome del tipo W12X26.


Input Output

Accettato

Output

Rifiutato





[ ]

Filtraggio per profilo di sezione

È possibile utilizzare il nodo di Dynamo Filter.BySectionProfile per verificare il profilo di sezione utilizzato per l'elemento dei dati della struttura.

Il nodo di Dynamo utilizza come input un nodo di connessione o un elenco di nodi di connessione, l'indice dell'elemento strutturale del nodo di connessione da verificare, il nome del profilo, per il quale deve essere utilizzato un nodo aggiuntivo denominato Input.StructuralDataTypes.
Nota: Questo nodo di Dynamo può essere esposto anche come input nel Lettore Dynamo.
In questo esempio, viene verificato che il secondo elemento (index = 1) nel nodo di connessione presenti il profilo Forme a W.


Input Output

Accettato

Output

Rifiutato





[ ]

Filtraggio per angolo tra travi

Il filtro per angolo tra gli assi verifica l'angolo tra X, Y e Z e riceve l'input compreso tra 0 e 90°.

Il filtro per angolo tra le travi è un caso particolare di tale filtro, dove entrambi gli assi sono X.

La differenza è che, per i nodi di connessione da estremità a estremità, questo filtro può ricevere l'input compreso tra 0 e 180°. Per il tipo da corpo a estremità o da corpo a corpo, si comporta come l'angolo tra gli assi. Questa differenza consente di identificare in modo univoco i casi che non potrebbero essere identificati altrimenti. Ad esempio, gli angoli supplementari tra un pilastro e una trave di una struttura a telaio asimmetrica con una trave:


Filtraggio per posizione verticale

Il nodo di Dynamo Filter.ByVerticalPosition utilizza come input un nodo di connessione (o un elenco di nodi), l'indice dell'elemento strutturale del nodo di connessione da controllare e una stringa di posizione, che può essere "Top" o "Bottom", in base alla posizione di filtraggio desiderata. Ad esempio, questo filtro è utile per posizionare sempre le connessioni della piastra di base nella parte inferiore del pilastro.

Nota: Per connessioni che vengono posizionate per un membro di input (ad esempio le connessioni "Piastra di base"), utilizzare Filter.ByVerticalPosition per assicurarsi che i valori per le forze vengano considerati per l'estremità corretta del membro di input.

Filtraggio per forze all'estremità dell'elemento

Il nodo di Dynamo Filter.ByMemberEndForces utilizza come input un nodo di connessione (o un elenco di nodi), l'indice dell'elemento strutturale del nodo di connessione da controllare, il tipo di risultato (Fx, Fy, Fz, Mx, My, Mz; è possibile utilizzare il nodo Input.ResultTypes), l'inizio e la fine dell'intervallo di forze (per cui le unità di Revit vengono prese in considerazione). Questo nodo di Dynamo può essere utilizzato per posizionare le connessioni in base ai valori delle forze in corrispondenza dell'estremità dell'elemento del telaio, per le forze definite nella finestra di dialogo Forze all'estremità dell'elemento di Revit.

Filtraggio per risultati dell'analisi

Il nodo di Dynamo utilizza come input un nodo di connessione (o un elenco di nodi di connessione), l'indice dell'elemento strutturale del nodo di connessione da controllare, il tipo di risultato (Fx, Fy, Fz, Mx, My, Mz; è possibile utilizzare il nodo Input.ResultTypes), il pacchetto di risultati dell'analisi con la condizione di carico o la combinazione di carichi o l'inviluppo desiderato (richiede il nodo Input.AnalysisResults) e l'inizio e la fine dell'intervallo di forze (per cui le unità di Revit vengono prese in considerazione). È possibile utilizzare questo nodo per posizionare le connessioni in base ai valori delle forze in corrispondenza dell'estremità dell'elemento del telaio, per i risultati dell'analisi memorizzati in Structural Analysis Toolkit.

Nota: Per considerazioni sulle prestazioni, occorre posizionare "Filter.ByAnalysisResults" o "Filter.ByMemberEndForces" alla fine dello script (dopo il filtraggio per condizioni geometriche).

Passaggio successivo: Aggiunta di connessioni allo script Dynamo