938x
005435
27.2.2024

Chybná konverze materiálu nebo průřezu v programu Revit nebo Tekla

V programu Tekla/Revit mám chybnou konverzi, když jsem v konverzní tabulce použil regulérní výrazy.


Odpověď:

Pomocí regulárních výrazů je možné převést několik objektů – například celou řadu profilů IPE – jediným zápisem.

Příklad

Konverze například IPE120 v aplikaci Tekla na IPE 120 | Euronorm 19-57; ... | SZS v RFEM 6 by měla fungovat i pro všechny ostatní průřezy z řady profilů IPE.

K vytvoření konverze pro celou řadu profilů IPE se regulární výraz vytvoří následovně:

Konverze z Tekly do RFEM 6 Tekla RFEM 6
regulární výraz IPE(\d+) IPE $1 | Euronorm 19-57; ... | SZS
název průřezu IPE120 IPE 120 | Euronorm 19-57; ... | SZS
název průřezu IPE300 IPE 300 | Euronorm 19-57; ... | SZS

Místo (\d+) může být dosazeno libovolné celé číslo. (IPE200, IPE300,...)

Výraz $1 odkazuje na dosazené číslo. Na následujícím obrázku byl regulární výraz doplněn do tabulky konverzí Tekla.

Pokud se použijí dvě čísla, výraz $1 odkazuje na první číslo a $2 na druhé číslo. V následující tabulce je to ukázáno na příkladu konverze materiálu.

Konverze z Tekly do RFEM 6 Tekla RFEM 6
regulární výraz C(\d+)/(\d+) C$1/$2 | EN 1992-1-1:2004/A1:2014
název materiálu C20/25 C20/25 | EN 1992-1-1:2004/A1:2014
název materiálu C30/37 C30/37 | EN 1992-1-1:2004/A1:2014

Níže jsou uvedeny možné problémy při definici regulárních výrazů s vysvětlením.

Název profilu 400*400 není konvertován pomocí výrazu (\d+)*(\d+).

Hvězdička * má v regulárních výrazech speciální význam a proto není interpretována jako jednoduchý znak. Aby byla hvězdička v regulárním výrazu použita jako samostatný znak, může být napsána s obráceným lomítkem \, aby se tím potlačil její speciální význam.

Konverze z Tekly do RFEM 6 Tekla RFEM 6
regulární výraz (\d+)\*(\d+) R_M1 $2/$1
název průřezu 400*400 R_M1 400/400
název průřezu 150*200 R_M1 150/200

Název profilu RHS200*100*5 není konvertován pomocí výrazu RHS(\d+)\*(\d+)\*(\d+).

Při použití několika podobných regulárních výrazů může dojít k tomu, že je použit nesprávný regulární výraz (příklad na obrázku).

Pomocí horního znaku ^ lze určit, že je regulární výraz použit pouze, pokud odpovídá začátku názvu materiálu nebo průřezu. Výraz ^(\d+)\*(\d+) tedy již není platný pro průřez RHS, protože název průřezu RHS nezačíná číslem (např. 400x400).

Konverze z Tekly do RFEM 6 Tekla RFEM 6
regulární výraz ^(\d+)\*(\d+) R_M1 $2/$1
název průřezu 400*400 R_M1 400/400
název průřezu 300*300 R_M1 300/300
regulární výraz RHS(\d+)\*(\d+)\*(\d+) RRO $1x$2x$3 | EN 10219-2 | ALUKÖNIGSTAHL
název průřezu RHS200*100*5 RRO 200x100x5 | EN 10219-2 | ALUKÖNIGSTAHL
název průřezu RHS180*140*8 RRO 180x140x8 | EN 10219-2 | ALUKÖNIGSTAHL

Jak převést materiál/průřez z RFEM 6 bez ohledu na označení normy.

Ve srovnání s RFEM 6 přiřazují Revit a Tekla svým názvům materiálů a průřezů nezávisle na normách. Aby byl například průřez HEA 300 v RFEM 6 z různých norem převeden na HEA 300 bez přiřazení normy v Revitu nebo Tekle, lze výrazem .*$ ignorovat označení normy v názvu.

Konverze z RFEM 6 do Tekly RFEM 6 Tekla
regulární výraz HEA (\d+).*$ HEA$1
název průřezu HEA 300 | DIN 1025-3:1994-03 | Ferona HEA300
název průřezu HEA 300 | Euronorm 53-62; ... | SZS HEA300
název průřezu HEA 300 | GB/T 11263-2017 | -- HEA300

Regulární výrazy pro rovnoramenné a nerovnoramenné L-profily nefungují současně.

Při použití podobných regulárních výrazů může dojít k tomu, že je vždy vyčten pouze první výraz v tabulce (příklad na obrázku). Pro nerovnoramenný L-profil (červený) je chybně použit regulární výraz rovnoramenného L-profilu (žlutý), protože je od začátku do konce stejný.

K odlišení těchto výrazů je třeba chybně použitý výraz začít ^ a zakončit $. Tím se určí, že regulární výraz je použit pouze, pokud název profilu odpovídá tomuto schématu od začátku do konce. V následující tabulce je to ukázáno na příkladu:

Konverze z Tekly do RFEM 6 Tekla RFEM 6
regulární výraz ^L(\d+)\*(\d+)$ L $1x$1x$2 | DIN EN 10056-1:1998-10 | --
název průřezu L40*4 L 40x40x4 | | DIN EN 10056-1:1998-10 | --
regulární výraz L(\d+)\*(\d+)\*(\d+) L $1x$2x$3 | EN 10056-1:2017 | ArcelorMittal (2018)
název průřezu L100*65*10 L 100x65x10 | EN 10056-1:2017 | ArcelorMittal (2018)

V RFEM jsou rovnoramenné a nerovnoramenné L-profily definovány třemi hodnotami v názvu průřezu. Tekla používá pro rovnoramenné profily pouze dvě hodnoty pro název průřezu. Jak lze zohlednit oba případy současně?

Nejprve lze pro nerovnoramenné profily vytvořit regulární výraz se třemi hodnotami:

Konverze z RFEM 6 do Tekly RFEM 6 Tekla
regulární výraz L (\d+)x(\d+)x(\d+).*$ L$1*$2*$3
název průřezu L 100x75x8 L100*75*8

Pro rovnoramenné profily je regulární výraz definován následovně:

Konverze z RFEM 6 do Tekly RFEM 6 Tekla
regulární výraz L (\d+)x(\1)x(\d+).*$ L$1*$3
název průřezu L 100x100x8 L100*8

(\d+) zachytí první číslo.

(\1) ověří, zda je druhé číslo stejné jako první. (Pokud ano, tento regulární výraz se použije)

(\d+) zachytí třetí číslo.

Jak převést názvy průřezů s desetinnými čísly?

V RFEM existují řady průřezů, kde jsou rozměry průřezů uvedeny jako desetinné číslo v názvu průřezu (např. duté profily CHS). Pro následující příklad by měly být následující průřezy přeměněny pomocí jednoho výrazu:

  • CHS 25x2 | EN 10219-2 | Condesa (názvy průřezů se dvěma celými čísly)
  • CHS 26.9x2 | EN 10219-2 | Condesa (názvy průřezů s desetinným číslem a celým číslem)
  • CHS 32x2.9 | EN 10219-2 | Condesa (názvy průřezů s celým číslem a desetinným číslem)
  • CHS 37.5x2.9 | EN 10219-2 | Condesa (názvy průřezů se dvěma desetinnými čísly)

Každé číslo tak může mít volitelně desetinou tečku. Regulární výraz pro tuto pravidlo je vytvořen následovně:

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

\d* zachytí žádné nebo jedno číslo.

\.? zachytí volitelnou desetinnou tečku (zohledněny jsou tak i celá čísla bez desetinné tečky)

\d* zachytí žádné nebo jedno číslo po desetinné tečce.

.*$ označení normy v názvu se ignoruje.

Konverze z RFEM 6 do Tekly RFEM 6 Tekla
regulární výraz CHS (\d*\.?\d*)x(\d*\.?\d*).*$ RO$1*$2
název průřezu CHS 25x2 | EN 10219-2 | Condesa RO25*2
název průřezu CHS 26.9x2 | EN 10219-2 | Condesa RO26.9*2
název průřezu CHS 32x2.9 | EN 10219-2 | Condesa RO32*2.9
název průřezu CHS 37.5x2.9 | EN 10219-2 | Condesa RO37.5*2.9

Proč není průřez KREIS_M1 500 konvertován?

Pro několik málo průřezů se označení pro konverzi díky webovým službám liší od zobrazeného označení v německém jazyce. Konverze pro KREIS_M1 500 musí být definována jako CIRCLE_M1 500. To platí i pro následující označení průřezů:

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

Autor

Pan Sivolgin podporuje vývoj produktů v oblasti rozhraní.



;