1114x
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ěď:

Díky použití regulárních výrazů je možné převést více objektů – například celou řadu profilů IPE – pomocí jediného záznamu.

Příklad

Převod např. IPE120 v Tekle na IPE 120 | Euronorm 19-57; ... | SZS v RFEM 6 by měl fungovat i pro všechny ostatní průřezy řady profilů IPE.

Pro vytvoření převodu pro celou řadu profilů IPE se regulární výraz sestaví následovně:

Konverze z Tekla 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

Pro výraz (\d+) lze dosadit libovolné celé číslo (IPE200, IPE300,...).

Pomocí výrazu $1 se odkazuje na dosazené číslo. Na následujícím obrázku byl regulární výraz doplněn do tabulky převodu Tekla.

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

Konverze z Tekla 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

Dále jsou uvedeny a vysvětleny možné problémy při definici regulárních výrazů.

Název profilu 400*400 se nekonvertuje pomocí výrazu (\d+)*(\d+).

Hvězdička * má v regulárních výrazech zvláštní význam, a proto není interpretována jako obyčejný znak. Chcete-li hvězdičku použít jako samostatný znak v regulárním výrazu, lze ji zapsat pomocí zpětného lomítka \, čímž se její zvláštní význam potlačí.

Konverze z Tekla 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 se nekonvertuje pomocí výrazu RHS(\d+)\*(\d+)\*(\d+).

Používají-li se více podobné regulární výrazy, může to vést k tomu, že se použije nesprávný regulární výraz (příklad na obrázku).

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

Konverze z Tekla 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 mohu převést materiál/průřez z RFEM 6 nezávisle na označení normy.

Ve srovnání s RFEM 6 přidělují Revit a Tekla svým materiálům a průřezům názvy nezávisle na normách. Aby se např. průřez HEA 300 v RFEM 6 z různých norem v Revitu resp. Tekle převedl na HEA 300 bez přiřazení normy, lze pomocí regulárního výrazu .*$ označení normy v názvu ignorovat.

Konverze z RFEM 6 do Tekla 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ě.

Používají-li se podobné regulární výrazy, může to vést k tomu, že se vždy načte pouze první výraz v tabulce (příklad na obrázku). U nerovnoramenného L-profilu (červeně) je chybně použit regulární výraz rovnoramenného L-profilu (žlutě), protože je od začátku do konce sestaven naprosto stejně.

Aby bylo možné tyto výrazy od sebe odlišit, musí chybně použitý výraz začínat znakem ^ a končit znakem $. Tím se stanoví, že regulární výraz se použije pouze tehdy, pokud název profilu přesně odpovídá tomuto vzoru od začátku do konce. V následující tabulce je to ukázáno na příkladu:

Konverze z Tekla 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 ve názvu průřezu třemi hodnotami. Tekla používá pro rovnoramenné profily v názvu průřezu pouze dvě hodnoty. Jak mohu oba případy zohlednit současně?

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

Konverze z RFEM 6 do Tekla 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 se regulární výraz definuje následovně:

Konverze z RFEM 6 do Tekla 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 totožné s prvním. (Pokud ano, pak se tento regulární výraz použije)

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

Jak se konvertují názvy průřezů s desetinnými čísly?

V RFEM existují řady průřezů, u nichž jsou rozměry průřezů v názvu průřezu uvedeny jako desetinné číslo (např. duté profily CHS). Pro následující příklad mají být s jedním výrazem konvertovány tyto průřezy:

  • 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 tedy může volitelně obsahovat desetinnou tečku. Regulární výraz pro toto pravidlo se sestaví následovně:

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

\d* zachytí žádnou nebo jednu číslici.

\.? zachytí volitelně desetinnou tečku (tím jsou zohledněna celá čísla bez desetinné tečky)

\d* zachytí žádnou nebo jednu číslici za desetinnou tečkou.

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

Konverze z RFEM 6 do Tekla 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č se průřez KREIS_M1 500 nekonvertuje?

U několika málo průřezů se označení pro převod kvůli webovým službám liší od zobrazeného označení v německém jazyce. Převod pro KREIS_M1 500 musí být definován 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í.



;