1154x
005435
2024-02-27

Conversione errata del materiale o della sezione trasversale in Revit o Tekla (regex)

Ricevo una conversione errata in Tekla/Revit quando utilizzo espressioni regolari (regex) nella tabella di conversione.


Risposta:

Attraverso l’uso di espressioni regolari, è possibile convertire più oggetti, ad esempio un’intera serie di profili IPE, tramite una sola voce.

Esempio

La conversione di ad es. IPE120 in Tekla in IPE 120 | Euronorm 19-57; ... | SZS in RFEM 6 dovrebbe funzionare anche per tutte le altre sezioni della serie di profili IPE.

Per creare una conversione per l’intera serie di profili IPE, l’espressione regolare viene costruita come segue:

Conversione da Tekla a RFEM 6 Tekla RFEM 6
espressione regolare IPE(\d+) IPE $1 | Euronorm 19-57; ... | SZS
Nome della sezione IPE120 IPE 120 | Euronorm 19-57; ... | SZS
Nome della sezione IPE300 IPE 300 | Euronorm 19-57; ... | SZS

Per l’espressione (\d+) può essere inserito qualsiasi numero intero (IPE200, IPE300,...).

Con l’espressione $1 si fa riferimento al numero inserito. Nella figura seguente, l’espressione regolare è stata aggiunta nella tabella di conversione di Tekla.

Se vengono utilizzati due numeri, con l’espressione $1 ci si riferisce al primo numero e con $2 al secondo numero. Nella tabella seguente ciò viene mostrato nell’esempio di una conversione di materiale.

Conversione da Tekla a RFEM 6 Tekla RFEM 6
espressione regolare C(\d+)/(\d+) C$1/$2 | EN 1992-1-1:2004/A1:2014
Nome del materiale C20/25 C20/25 | EN 1992-1-1:2004/A1:2014
Nome del materiale C30/37 C30/37 | EN 1992-1-1:2004/A1:2014

Di seguito vengono illustrati e spiegati i possibili problemi nella definizione di espressioni regolari.

Il nome del profilo 400*400 non viene convertito con l’espressione (\d+)*(\d+).

L’asterisco * ha un significato speciale nelle espressioni regolari e pertanto non viene interpretato come un semplice carattere. Per utilizzare l’asterisco come singolo carattere in un’espressione regolare, può essere scritto con un backslash \ per annullarne il significato speciale.

Conversione da Tekla a RFEM 6 Tekla RFEM 6
espressione regolare (\d+)\*(\d+) R_M1 $2/$1
Nome della sezione 400*400 R_M1 400/400
Nome della sezione 150*200 R_M1 150/200

Il nome del profilo RHS200*100*5 non viene convertito con l’espressione RHS(\d+)\*(\d+)\*(\d+).

Se vengono utilizzate più espressioni regolari simili, ciò può portare all’applicazione dell’espressione regolare sbagliata (esempio nell’immagine).

Con un carattere di inizio ^ è possibile stabilire che un’espressione regolare venga utilizzata solo se corrisponde all’inizio del nome del materiale o della sezione. L’espressione ^(\d+)\*(\d+) non è quindi più valida per la sezione RHS, poiché il nome della sezione RHS non inizia con un numero (ad es. 400x400).

Conversione da Tekla a RFEM 6 Tekla RFEM 6
espressione regolare ^(\d+)\*(\d+) R_M1 $2/$1
Nome della sezione 400*400 R_M1 400/400
Nome della sezione 300*300 R_M1 300/300
espressione regolare RHS(\d+)\*(\d+)\*(\d+) RRO $1x$2x$3 | EN 10219-2 | ALUKÖNIGSTAHL
Nome della sezione RHS200*100*5 RRO 200x100x5 | EN 10219-2 | ALUKÖNIGSTAHL
Nome della sezione RHS180*140*8 RRO 180x140x8 | EN 10219-2 | ALUKÖNIGSTAHL

Come posso convertire un materiale/sezione da RFEM 6 indipendentemente dalla denominazione della norma.

Rispetto a RFEM 6, Revit e Tekla assegnano i nomi dei loro materiali e delle loro sezioni indipendentemente dalle norme. Affinché, ad esempio, una sezione HEA 300 in RFEM 6 proveniente da diverse norme venga convertita in un HEA 300 senza assegnazione della norma in Revit o Tekla, con l’espressione regolare .*$ si può ignorare la denominazione della norma nel nome.

Conversione da RFEM 6 a Tekla RFEM 6 Tekla
espressione regolare HEA (\d+).*$ HEA$1
Nome della sezione HEA 300 | DIN 1025-3:1994-03 | Ferona HEA300
Nome della sezione HEA 300 | Euronorm 53-62; ... | SZS HEA300
Nome della sezione HEA 300 | GB/T 11263-2017 | -- HEA300

Le espressioni regolari per i profili a L uguali e disuguali non funzionano contemporaneamente.

Se vengono utilizzate espressioni regolari simili, ciò può portare al fatto che venga sempre letta solo la prima espressione nella tabella (esempio nell’immagine). Per il profilo a L disuguale (rosso) viene erroneamente utilizzata l’espressione regolare del profilo a L uguale (giallo), poiché questa è strutturata in modo identico dall’inizio alla fine.

Per distinguere tali espressioni tra loro, l’espressione utilizzata erroneamente deve iniziare con un ^ e terminare con un $.
In questo modo si stabilisce che l’espressione regolare viene utilizzata solo se il nome del profilo corrisponde esattamente a questo schema dall’inizio alla fine. Nella tabella seguente ciò viene mostrato con un esempio:

Conversione da Tekla a RFEM 6 Tekla RFEM 6
espressione regolare ^L(\d+)\*(\d+)$ L $1x$1x$2 | DIN EN 10056-1:1998-10 | --
Nome della sezione L40*4 L 40x40x4 | | DIN EN 10056-1:1998-10 | --
espressione regolare L(\d+)\*(\d+)\*(\d+) L $1x$2x$3 | EN 10056-1:2017 | ArcelorMittal (2018)
Nome della sezione L100*65*10 L 100x65x10 | EN 10056-1:2017 | ArcelorMittal (2018)

In RFEM, i profili a L uguali e disuguali sono definiti con tre valori nel nome della sezione. Tekla utilizza per i profili uguali solo due valori per il nome della sezione. Come posso considerare entrambi i casi contemporaneamente?

Innanzitutto, per i profili disuguali può essere generata un’espressione regolare con tre valori:

Conversione da RFEM 6 a Tekla RFEM 6 Tekla
espressione regolare L (\d+)x(\d+)x(\d+).*$ L$1*$2*$3
Nome della sezione L 100x75x8 L100*75*8

Per i profili uguali l’espressione regolare viene definita come segue:

Conversione da RFEM 6 a Tekla RFEM 6 Tekla
espressione regolare L (\d+)x(\1)x(\d+).*$ L$1*$3
Nome della sezione L 100x100x8 L100*8

(\d+) rileva il primo numero.

(\1) verifica se il secondo numero è identico al primo. (Se sì, viene utilizzata questa espressione regolare)

(\d+) rileva il terzo numero.

Come vengono convertiti i nomi delle sezioni con numeri decimali?

In RFEM esistono serie di sezioni in cui le dimensioni delle sezioni sono contenute come numero decimale nel nome della sezione (ad es. profili cavi CHS). Per l’esempio seguente, le seguenti sezioni devono essere convertite con un’espressione:

  • CHS 25x2 | EN 10219-2 | Condesa (nomi di sezione con due numeri interi)
  • CHS 26.9x2 | EN 10219-2 | Condesa (nomi di sezione con un numero decimale e un numero intero)
  • CHS 32x2.9 | EN 10219-2 | Condesa (nomi di sezione con un numero intero e un numero decimale)
  • CHS 37.5x2.9 | EN 10219-2 | Condesa (nomi di sezione con due numeri decimali)

Ogni numero può quindi contenere opzionalmente una virgola decimale. L’espressione regolare per questa regola viene costruita come segue:

CHS (\d*\.?\d*)x(\d*\.?\d*).*$

\d* rileva nessun numero o un numero.

\.? rileva opzionalmente il punto decimale (i numeri interi senza punto decimale vengono quindi considerati)

\d*rileva nessun numero o un numero dopo il punto decimale.

.*$ la denominazione della norma nel nome viene ignorata.

Conversione da RFEM 6 a Tekla RFEM 6 Tekla
espressione regolare CHS (\d*\.?\d*)x(\d*\.?\d*).*$ RO$1*$2
Nome della sezione CHS 25x2 | EN 10219-2 | Condesa RO25*2
Nome della sezione CHS 26.9x2 | EN 10219-2 | Condesa RO26.9*2
Nome della sezione CHS 32x2.9 | EN 10219-2 | Condesa RO32*2.9
Nome della sezione CHS 37.5x2.9 | EN 10219-2 | Condesa RO37.5*2.9

Perché la sezione KREIS_M1 500 non viene convertita?

Per poche sezioni, la denominazione per la conversione differisce a causa dei web service dalla denominazione visualizzata in lingua tedesca. La conversione per KREIS_M1 500 deve essere definita come CIRCLE_M1 500. Ciò vale anche per le seguenti denominazioni di sezione:

  • KREIS→CIRCLE
  • RRO→RHS
  • QRO→SHS
  • KHP→CHS
  • Kabel→Cable

Autore

Paul sviluppa soluzioni di interfaccia nel Product Engineering e offre inoltre supporto nel Customer Support. In questo contesto mantiene sempre sotto controllo l’integrazione continua del sistema.



;