Zobrazit plnou verzi příspěvku: Regenerace vložených bloků po předefinování

Kubeczka
10.06.2020, 08:51
Zdravím,potřebuji předefinovat vložené bloky:a. změnit uvnitř bloku pozice čar a atributůb. předefinovat barvy čar, textů a atributů (příp. hladiny)ad a): vložím blok o stejném názvu s přidáním znaku "=" - "jmeno_bloku=" to změní v bloku pozice čar a textů, ale nezmění pozice atributůad b): pomocí LISPu předefinuji v tabulce bloku barvy (potřebuji to udělat hromadně na několika výkresech). Když daný blok edituji, tak je vidět, že barvy(popř. hladiny) byly předefinovány správně.Jakmile uložím blok, tak se zobrazí v původních barvách.Jakým způsobem docílit refresh bloků? Příkazem "_regenall" to nejde.Děkuji

Vladimír Michl
10.06.2020, 09:49
Předefinování bloku by se mělo projevit hned, pokud to nejsou nějaké dynamické bloky. Polohy atributů (i těch ručně přesunutých) se mají zachovat nebo promítnout (resetovat) z nové definice bloku?

Kubeczka
10.06.2020, 10:28
Neděje se tak. Dynamické bloky to nejsou.Polohy atributů by se měly promítnout z nové definice bloku, ale neděje se tak.ad b)  Barvy atributů po uložení bloku jsou původní. Při editaci se zobrazí správně.

Mara821
10.06.2020, 10:36
Na atributy v bloku by měl pomoct příkaz ATTSYNC.

Kubeczka
10.06.2020, 11:01
Příkaz ATTSYNC funguje skvěle.Ale nedaří se mi ho použít v LISP programu

Kubeczka
10.06.2020, 11:06
Zkusím LISpem projít názvy všech vložených bloků a aplikovat příkaz ATTSYNC na každého z nich ve smyčce

Mara821
10.06.2020, 11:13
Zkuste (acet-attsync "název bloku"). Název bloku by měl být ten standardní (získaný přes vla-get-effectiveName), ne ten anonymní název. A mělo by to stačit provést jen jednou pro každou definici bloku.

Kubeczka
10.06.2020, 11:35
Děkuji. Už to funguje i v LISPu