Zobrazit plnou verzi příspěvku: Automatické číslování položek v dynamickém bloku

Jiri.Moucka
16.10.2019, 13:04
Zdravím.Mám blok - svorkovnice, který se dynamicky mění podle počtu svorek.Dle výběru nebo protažením se protáhne osa svorkovnice a v daném rozestupu se pomocí pole umístí jednotlivé svorky.Lze nějak provést, aby se tímto způsobem k jednotlivým svorkám umístily i jejich popisky?Mám na mysli třeba jen jejich automatické očíslování.Zkoušel jsem atribut navázaný na hodnotu pole. Ten ale zcela logicky nejde kopírovat z důvodu duplicity názvu.napadlo mě vytvořit ze svorky a atributu samostatný blok, který se bude kopírovat a hodnota atributu se bude měnit dle jeho pořadí v poli. Nikde jsem ale nenašel, jak to lze udělat, a zda vůbec.Pokud do výchozí hodnoty atributu odkážu na vyhledávací tabulku nadřazeného bloku, zobrazuje vždy pouze pomlčky. Pokud odkážu na parametr délky, zobrazí u všech svorek 5.000 - což je výchozí hodnota.Předem díky za každou radu.

Vladimír Michl
16.10.2019, 13:38

To podle mne udělat nepůjde. Napadá mne jen zaexperimentovat s výškovou/Y kótou (kótami) relativně k poloze bloku, ale pochybuji že se podaří.

Jiri.Moucka
16.10.2019, 15:20
Tak vyřešeno.Nakonec stačilo vložit do stávajícího bloku blok obsahující atribut s výchozí hodnotou nastavenou na:%<\AcObjProp.16.2 Object(?BlockRefId,1).InsertionPoint \f "%lu2%pt1%pr0%zs12%ct8[0.2]">%parametr ct8[0.2] - převodní faktor - je proto, že jednotlivé body mají rozestup 5mm, takže by se místo od jedničky a po jedné označovalo od pětky a po pěti.Jen se po změně počtu svorek musí blok regenerovat, jinak budou všude jedničky.Bohužel, díky vloženým blokům nejsou tyto atributy editovatelné.

Vladimír Michl
16.10.2019, 18:06
A tu vnořenou polohu to bere jako relativní? Není problém s polohou vložení "hlavního" bloku?Pokud to funguje správně, je to elegantní řešení. Jste-li v plném AutoCADu, asi by šla udělat editační funkce na ruční úpravu těch čísel.

Petr75
18.10.2019, 10:47
Mám také něco podobného vytvořené a řeším to vzorcem. Rozteč svorek je 5.(7.50+2.5)/5+1-1%<\AcExpr ((%<\_FldPtr 1604507544880>%+2.5)/5+%<\_FldPtr 1604507544560>%-1) \f "%lu2%pr0">%7.50 - je dané polohou textu a udává zvyšování čísla.%<\AcObjProp Object(%<\_ObjId 1604628732656>%).TextAlignmentPoint \f "%lu2%pt1">%1 - je dané koncovým podem pomocné úsečky a udává počáteční číslo svorky.%<\AcObjProp Object(%<\_ObjId 1604628732928>%).StartPoint \f "%lu2%pt1%pr0">%

Jiri.Moucka
18.10.2019, 10:53
Nadřazený blok musí mít správně nastaveny souřadnice - tj. 0 musí být v požadované nule.Souřadnice to bere relativně. Bloků mám ve výkresu asi 15 na různých místech a vždy se čísla zobrazují správně.Mám pouze LT.Jen pro informaci:Na vnořený blok nelze použít příkaz -ATREDIT - atribut nenajde.Lze použít nástroj Autonumber blok z LT Extension.
Jiri.Moucka2019-10-18 11:46:24