Zobrazit plnou verzi příspěvku: Vkládání bloku

Petrsorge
05.09.2008, 09:30
Dobrý den všem:-)
 
Zase jednou přicházím s inteligentním dotazem....
Jedná se o vkládání bloku z jiného výkresu čistě pomocí příkazové řádky (z důvodu tvorby makra)
 
Situace: Mám čtyři bloky nadefinované v jednom souboru...
Chci: Dostat jeden z bloků pomocí příkazové řádky do jiného výkresu...
Dostal jsem se k:  _-insert
                             [Vložení cesty k souboru s blokem]
Výsledek: Logicky vloží celý soubor jako blok
Dotaz: Je nějak možné specifikovat který blok ze souboru se má vložit nebo to opravdu musím rozsekat do jednotlivých souborů?

Pepa
05.09.2008, 09:46
a což takhle využít PALETY NÁSTROJŮ, jednoduché, elegantní, vytvořeno pár kliky myší. A nemusíte psát žádná makra;-)

Petrsorge
05.09.2008, 12:15
[QUOTE=Pepa]a což takhle využít PALETY NÁSTROJŮ, jednoduché, elegantní, vytvořeno pár kliky myší. A nemusíte psát žádná makra;-)[/QUOTE]
 
No to je prave to co nelze....
Situace je taková že kolega má souřadnice asi 500 zařízení ke kterým pomocí makra které vytvoří hodí vztažky s popisem. A tím popisem je blok s názvem zařízení, výškou a seznamem kabelů.
 
Nevímjak se chystá vytvořit makro a to pak spustí v CADu a všecko se krásně propojí. Čili nějaké klikání myší je pro něj naprosto neakceptovatelné. Všecko musí jít přes příkazy.
 
Ale potřebuje tam vkládat ten blok ze souboru. Proto ta moje otázka.Petrsorge2008-09-05 12:15:50

Peter Jirat
05.09.2008, 12:40
Tak proč ten blok neuložit jako samostatné dwg a ten pak vkládat? Jaká je výhoda mít ho někde zašitý v jiném souboru?
Teď jsem si přečetl poslední řádek vašeho dotazu, takže jednoduchou cestu znáte.Peter Jirat2008-09-05 12:48:05

Ferdinand
05.09.2008, 12:53
Při příkazu _-insert musíte zadat konkrétní název vkládaného bloku. Ten je buď už do akt. výkresu vložen - tudíž se vloží znova anebo pokud v akt. výkresu se nenachází, Acad ho bude hledat v adresářích, které máte nastavené v Možnostech. Takže co blok to samostatný výkres.

Petrsorge
05.09.2008, 13:18
Hmmm sem si to myslel... Vsechny ostatní postupy znám jen jsem doufal ze by to mohlo jít tak jak jsem původně poslal...
No co se dá dělat... Stejně jsem je už ráno rozdělil do samostatných souborů....
Ale i tak vsem dekuji

PepaR
05.09.2008, 23:34
Určitě by pomohlo DesignCenter.

Vladimír Michl
07.09.2008, 14:59
Obvykle se používají buď samostatné DWG s jednotlivými bloky nebo spíš šablonový DWT výkres s již nadefinovanými bloky. Ty pak stačí vkládat přes vnitřní [CMD]_INSERT[/CMD].

Kackac
08.09.2008, 11:21

[QUOTE=Vladimír Michl]Ty pak stačí vkládat přes vnitřní [CMD]_INSERT[/CMD].[/QUOTE]Mohu se zeptat, co je vnitřní _INSERT? Jak funguje, resp. jak ho rozeběhnu, je-li to něco jiného než normální _INSERT?

Vladimír Michl
08.09.2008, 11:40
Ne, to je normální INSERT - pokud najde zadané jméno bloku ve vnitřní tabulce definic, vloží ten, pokud jej nenajde, vkládá externí DWG soubor daného jména.

Kackac
08.09.2008, 12:57
Aha, děkuji. Už mi to docvaklo, jak jste to myslel dohromady s tou šablonou s nadefinovanými bloky, nějak jsem to pochopila po svém a špatně.

Petrsorge
08.09.2008, 13:33
[QUOTE=PepaR]Určitě by pomohlo DesignCenter.[/QUOTE]
 
No to by myslim nepomohlo... Tam se musi klikat myší. Tady jde čistě o strojově vytvořený výkres bez zásahu uživatele

Petrsorge
08.09.2008, 13:37
[QUOTE=Vladimír Michl]
Obvykle se používají buď samostatné DWG s jednotlivými bloky nebo spíš šablonový DWT výkres s již nadefinovanými bloky. Ty pak stačí vkládat přes vnitřní [CMD]_INSERT[/CMD].[/QUOTE]
 
DWT je samozřejmě řešení stejně jako první vložení bloku do výkresu ručně. Ale to se tvůrci makra nelíbí.
Chce stvořit výkres čistě bez zásahu zvenčí (což odporuje prvotnímu vložení bloků do výkresu) a očekává jistou univerzálnost celé aplikace (čímž se zamítá šablona)
 
Ale myslím že to už je diskuse o něčem jiném.
Každopádně řešení je poze tvorba bloků stylem "Jeden blok= jeden výkres"

Vladimír Michl
08.09.2008, 13:44
A proč by se musely ty bloky vkládat ručně? Vložení bloků do šablony (ať už jednotlivě nebo hromadně z externího souboru šablony) přeci může být stejně "strojová" operace jako kterákoliv jiná.

Petrsorge
08.09.2008, 13:53
[QUOTE=Vladimír Michl]A proč by se musely ty bloky vkládat ručně? Vložení bloků do šablony (ať už jednotlivě nebo hromadně z externího souboru šablony) přeci může být stejně "strojová" operace jako kterákoliv jiná.[/QUOTE]
 
To je snad i pravda Byť nevim jak. Ale můžu na to odpovědět rovnou aniž bych to probíral s kolegou... "ALE TO JE OPERACE NAVÍC"
Na todle je děsnej puntičkář

Ferdinand
08.09.2008, 16:25
Já si myslím, že AutoCADu ta 1 operace navíc nějak extra nebude vadit. Anebo to snad zdržuje příliš dlouho (tj. nějaký zlomek sekundy)? Poněvadž to má být "strojová" práce, tak obsluha stroje přece pouze přihlíží (?).

Kackac
08.09.2008, 16:48
To Ferdinand: Řekla bych, že byla myšlena operace navíc, kterou je třeba naprogramovat, ne provést autocadem.To Petrsorge: a není jedno, jestli je vkládáte z jednoho výkresu, nebo z jiného výkresu = šablony?
Tak jako tak to vložení nějak napsat musíte a pokud máte zdrojové soubory s bloky nebo výkresy bloků v cestě, tak to na kód zase tak zásadní vliv mít nebude, nebo mi to tak alespoň přijde...

Vladimír Michl
08.09.2008, 21:06
To složité programování navíc spočívá v zařazení jednoho příkazu:
[CODE]
(command "_-INSERT" "MujDWGseVsemiBloky" nil)
[/CODE]

Petrsorge
09.09.2008, 10:34
Lidi už to tady ukončete... Já vás všechny chápu a rozumím.
Já to za složité nijak zvlášť nepovažuju a kdybych to dělal já (jako že bych rád ale nejak neovládám VB dost na to abych se do toho pouštěl), tak to dělá někdo jiný. A to byste ho museli znát. Jak si jednou postaví hlavu tak přidání Mr. Michlem zmíněného řádku do programu je zbytečné :
"...když pak stejně musím na ten blok odkazovat. Tak je pro mě lepší odkázat na celej soubor a ušetřím jeden řádek. Ne?" (To je tak na 97.76% přesná smyšlená citace  )
Takže nemá asi smysl to dál řešit.....
Jenom musím doplnit že první výsledky kolegova snažení jsou více než povzbudivé.... Výsledek je lepší než jsem sám čekal :-)

Buba
09.09.2008, 17:31
Keď načíta celý súbor s blokmi _insert *.DWG ESC, a potom vloží ten potrebný blok z toho DWG, tak nepotrebuje mať na každý blok jeden súbor. Na záver dá _purge a všetky nadefinované a nepoužité bloky zmaže. Možno by to bolo pre neho riešenie ak som správne pochopila o čo mu ide.