Funkce na přenášení hodnot textů mezi Dtextem Mtextem a Multileaderem

Kategorie » téma: AutoCAD | AutoCAD Architecture

07.09.2013 15.14 | Jan Panoch | Komentáře: 0 komentářů | Přečteno: 12955x

Funkce na přenášení hodnot textů mezi Dtextem Mtextem a Multileaderem

Při popisování a poznámkování výkresů je třeba některé popisy vkládat opakovaně. Příkladem může být hodnota hloubky základové spáry v půdorysu základů, dimenze dřevěného prvku krovu v půdorysu nebo řezu nebo třeba specifická poznámka odkazující na detail, který se na výkresu vyskytuje vícekrát. Při požadavku na změnu popisu či poznámky je pak třeba měnit všechny tyto poznámky. To lze provést jednak pomocí příkazu find na vyhledání a nahrazení textu nebo tak, že budeme do opakujících se poznámek a popisů vkládat hodnotu zdrojového popisu jako automatické pole  - field.

tt1

Půdorys základů se dvěma opakujícími se výškovými kótami. Na výškové kóty je použita entita typu Multileader, u které je potlačena odkazová čára.

Automatické pole se vkládá do do textu stiskem kláves Ctrl+F, po kterém se objeví tabulka, kde můžeme vybrat hodnotu, která se bude do textu vkládat. Nalezení objektu a hodnoty textu, kterou chceme použít pro automatické pole je ale poněkud zdlouhavé. Celou proceduru usnadní jednoduchá lispovská funkce, která vyzve k výběru zdrojového a cílového objektu. Zdrojový objekt je Dtext, Mtext nebo Multileader, jehož hodnotu textu chceme jako automatické pole použít v jiném Dtextu, Mtextu nebo Multileaderu. Cílový objekt je ten, do kterého bude vloženo automatické pole objektu zdrojového. Při změně hodnoty textu zdrojového objektu se změní i hodnota všech textů objektů, do kterých je vloženo automatické pole zdrojového objektu.

tt2

Stejný půdorys základů jako na předchozím obrázku. Zdrojové výškové kóty jsou dvě v horním levém rohu. V ostatních výškových kótách je vloženo automatické pole s hodnotou jedné ze dvou zdrojových výškových kót. Při přepisu jedné ze dvou zdrojových kót ze změní i odpovídající cílové.

Funkce funguje napříč entitami, takže jako zdrojový objekt může být použit třeba Dtext a jako cílový Multileader.

 

Funkce se spouští příkazem ttf (Text To Field) a vyzve nejprve k výběru zdojového Mtextu, Dtextu nebo Multileaderu. V příkladu na obrázku jsem vybral horní jednořádkový Dtext.

tt3

Po výběru jsem vyzváni k výběru cílového objektu, do kterého se má hodnota zdrojového Dtextu vložit. Na obrázku jsem vybral spodní Multileader.

tt4

Do Multileaderu se vložila textová hodnota Dtextu. To že jde o automatické pole poznáme podle toho, že má šedivé pozadí. Zobrazení šedivého pozadí se řídí systémovou proměnnou fielddisplay(přepínač 0/1).

tt5

Stejným způsobem (výběrem Dtextu a následným výběrem Mtextu) přeneseme hodnotu textu z Dtextu i do Mtextu. Připomínám, že hodnoty lze přenášet i mezi dvěma Dtexty, Mtexty či Multileadery.

tt6

Jestliže přepíšu hodnotu Dtextu a zavolám příkaz pro regeneraci regen …

tt7

  ........…   změní  se  hodnoty  textů  i  dvou cílových  objektů .

tt8

 

To kdy se automatická pole aktualizují řídí systémová proměnná fieldeval.

0 – automatická pole se neaktualizují

1 - automatická pole se aktualizují při otevření výkresu

2 - automatická pole se aktualizují při uložení výkresu

4 - automatická pole se aktualizují při tisku

8 - automatická pole se aktualizují při použití etransmitu

16 - automatická pole se aktualizují při regeneraci

V proměnné fieldeval může být uložen součet některých z předchozích hodnot. Například hodnota 31 (implicitní nastavení) je součtem 1+2+4+8+16. Automatická pole se tak budou aktualizovat při jakékoliv z výše uvedených akcí.

Funkci na přenášení hodnot textů si můžete stáhnout zde:https://docs.google.com/file/d/0B8vvgahpGh3vMmd0WUI3Vnd1RlU/edit?usp=sharing

nebo ze stránky Download http://cadcz.blogspot.cz/p/download.html , kde najdete i další snad užitečné funkce ke stažení.

Načtení vlx souboru s funkcí do aktuálního výkresu AutoCADu lze provést v zásadě dvěma způsoby. Ten nejjednodušší je, že přetáhneme z okna správce souborů (třeba z Průzkumníka) ikonu vlx souboru do okna AutoCADu a funkci spustíme.
Druhý způsob je využití příkazu _appload. V dialogovém okně vybereme požadovaný soubor z funkcí a máme-li zaškrtnuto tlačítko Add to History vloží se odkaz na tento soubor do okna Histroy list, takže příště již nebudeme muset soubor vyhledávat. Budeme-li chtít funkci spouštět často, vyplatí se přidat ji do Startup Suit. Do tohoto dialogového okna se dostaneme klepnutím na tlačítko Contents. Pomocí tlačítka Add přidáme soubor s funkcí. Funkce v souborech, které se zobrazují ve Startup Suit se načítají při každém spuštění AutoCAdu a při otevření každého výkresu, takže je není třeba zvlášť načítat stačí je spustit stejně jako jakýkoliv jiný příkaz.

 

tt9

Jan Panoch

Komentáře:

Tento článek zatím neobsahuje žádné komentáře.

Přidat komentář

 *
 *
 
 *

*) Povinné položky jsou označeny hvězdičkou.