Zobrazit plnou verzi příspěvku: nastavení více Layoutů

Ferdinand
06.03.2006, 13:03
Situace:
-Výkres se 42 Layouty, každý Layout je sestaven z několika Viewportů
- Vytvořím 8 nových Layoutů přetažením z jiného výkresu (pomocí DesignCenter)
- Chci nastavit těm novým 8 Layoutům jiný vzhled stránky dle předchozích 42

:
Jde to nějak elegantně vyřešit, aby toto - shodné - nastavení bylo možné provést všem 8 novým Layoutům naráz?

Zkoušeno:
a.) Hledat ve Fóru: pagesetup
b.) Hledat ve Fóru: nastavení vzhledu stránky
dokonce c.) Help AutoCADu
d.) Vybrat 8 Layoutů - File - PageSetup... (problém: bere pouze jeden Layout a sice to aktuální ...)



Vladimír Michl
06.03.2006, 13:33
Na to bude potřeba krátká utilitka. Pro přiřazení nastavení stránky všem rozvržením lze použít přiložený LISP multi-pagesetup. Pro přiřazení jen některým rozvržením je v něm potřeba nahradit funkci (layoutlist) seznamem požadovaných rozvržení - např. '("Rozvržení8" "Rozvržení9" "Rozvržení10").
Funkci je potřeba načíst (_APPLOAD) a spustit pomocí:(multi-pagesetup "mojenastavení" "mojetiskárna")
2006-03-06_133303_multi-pagestup.lsp

Ferdinand
06.03.2006, 13:44

No to byla teda pružná reakce! Děkuji moc! Vyzkouším.

Takže jedu:
_Appload...
Spouštím
(multi-pagesetup "mojenastavení" "mojetiskárna")
tj. pokud
mojenastavení=LASER-1.CTB
mojetiskarna=Oce3121.pc3
tak by to mělo brát... Podívám se...
píšu na příkazový řádek:
(multi-pagesetup "LASER-1.CTB" "Oce3121.pc3")

... proběhlo tohle:

Command: _appload
multi-pagesetup.lsp successfully loaded.


Command:
Command:
Command: (multi-pagesetup "LASER-1.CTB" "Oce3121.pc3")
; error: no function definition: MULTI-PAGESETUP

píšu znova na příkazový řádek:

(multi-pagesetup LASER-1.CTB Oce3121.pc3)

říká mi opět že

Command: (multi-pagesetup LASER-1.CTB Oce3121.pc3)
; error: no function definition: MULTI-PAGESETUP

Co je špatně?




Ferdinand2006-3-6 14:1:3

Vladimír Michl
06.03.2006, 14:07
ne, ty názvy nejsou .CTB a .PC3, ale přímo jména nastavení a tiskárny (např. "MOJESTRÁNKA" a "HP DesignJet 4500") - viz příkaz _PAGESETUP nebo _PLOT

Ferdinand
06.03.2006, 14:52


Asi to bude chtít přesunout do fóra Programování...
Pokud se dívám na průběh příkazu -plot (v Layoutu), tak je tam tohle:

Command: -plot
Detailed plot configuration? [Yes/No] <No>: Y

Enter a layout name or [?] <OK.SA#A4>: ?

Layout(s) in drawing:
Model
OK.S1#A4-15
OK.S2#A4-15
OK.S3#A4-15
OK.S4#A4-15
OK.S5#A4-15
OK.SA#A4
R201(1)#A3
R201_11#A3-50
R201_13#A3-50
R201_17#A3-50
R201_19#A3-50
R201_36#A3-50
R201_38#A3-50
R201_39#A3-50
R201_56#A3-50
R201_58#A3-50
R201_59#A3-50
R201_60#A3-50
R201_64#A3-50
R202(1)#A3
R202_17#A3-50
R202_19#A3-50
R202_36#A3-50
R202_38#A3-50
R202_39#A3-50
R202_56#A3-50
R202_58#A3-50
R202_59#A3-50
R202_60#A3-50
R202_64#A3-50

Enter a layout name or [?] <OK.SA#A4>:
Enter an output device name or [?] <\\Oce3121a\Print>:
Enter paper size or [?] <A4>:
Enter paper units [Inches/Millimeters] <Millimeters>:
Enter drawing orientation [Portrait/Landscape] <Portrait>:
Plot upside down? [Yes/No] <No>:
Enter plot area [Display/Extents/Layout/View/Window] <Layout>:
Enter plot scale (Plotted Millimeters=Drawing Units) or [Fit] <Fit>:
Enter plot offset (x,y) <0.00,0.00>:
Plot with plot styles? [Yes/No] <Yes>:
Enter plot style table name or [?] (enter . for none) <LASER-1.ctb>:
Plot with lineweights? [Yes/No] <Yes>:
Scale lineweights with plot scale? [Yes/No] <No>:
Plot paper space first? [Yes/No] <No>: Y
Hide paperspace objects? [Yes/No] <No>:
Write the plot to a file [Yes/No] <N>:
Save changes to page setup [Yes/No]? <N> Y
Proceed with plot [Yes/No] <Y>: N

Aha, takže první parametr zadat \\Oce3121a\Print a druhý LASER-1.ctb? Zkusíme...
...není to ono. Opačně...
...taky ne. Žeby ta "mojestránka" byla OK.SA#A4 ?
...taky ne. Opačně...
...taky ne. furt je to

; error: no function definition: MULTI-PAGESETUP


...sorry že jsem tak nechápavej...

Jo a nešlo by
a.) ho přimět, aby vypsal ten seznam Layoutů dle toho, jak jsou za sebou a nikoli dle ABC?
b.) získat nějakým příkazem seznam obsahující všechny Page Setup Name (opět: dle toho, jak jsou za sebou a nikoli dle ABC), aníž bych musel otevírat dialog Pagesetup?

 


Ferdinand2006-3-6 15:43:20

Vladimír Michl
06.03.2006, 16:02
Trochu více okomentovaná verze toho LISPu je na:http://www.cadforum.cz/cadforum/qaID.asp?tip=4893
Příkaz _-PLOT si odzkoušejte s "Detailed configuration"=No (ona LISP funkce nedělá nic jiného než že volá tento příkaz)
Tedy první parametr oné LISP funkce je "page setup name" a druhý parametr je "output device name". Názvy rozvržení (nechcete-li nastavovat všechny) si dejte do toho seznamu (na místě funkce (layoutlist) )

Ferdinand
07.03.2006, 17:38

[QUOTE=Vladimír Michl]Trochu více okomentovaná verze toho LISPu je na:http://www.cadforum.cz/cadforum/qaID.asp?tip=4893

[/QUOTE]
...nevidím tam žádný nový komentář kromě Váma opsaných 2 vět...


[QUOTE=Vladimír Michl]

Příkaz _-PLOT si odzkoušejte s "Detailed configuration"=No (ona LISP funkce nedělá nic jiného než že volá tento příkaz)

[/QUOTE]
...to jsem si taky mezitím všimnul...


[QUOTE=Vladimír Michl]

Tedy první parametr oné LISP funkce je "page setup name" a
druhý parametr je "output device name". Názvy rozvržení (nechcete-li
nastavovat všechny) si dejte do toho seznamu (na místě funkce (layoutlist) )[/QUOTE]

...ale jak se snažím, tak se snažím, nedostanu nic jiného než

Command: _appload multi-pagesetup.lsp successfully loaded.


Command:
Command:
Command:
Command:
Command: _pagesetup ;tady jsem se podíval v dialogu PageSetup na Page setup name, abych mohl napsat přesné znění některého
Command: (multi-pagesetup "*05_ar#A2.1-100*" "\\Oce3121a\Print")
; error: no function definition: MULTI-PAGESETUP



Karel Popela
08.03.2006, 09:45
Stáhl jsem si verzi z toho tipu a funguje mi. Nemůže to být těmi divokými názvy vašich nastavení?

K.P.


Ferdinand
08.03.2006, 14:44

V tom to není, v názvu Layoutu můžou být libovolné znaky (kromě neakceptovatelných). Mně neprovádí ten příkaz multi-pagesetup (nechce to znát).

...tak jsem si to mezitím stáhl taky ještě jednou. Naše síťová tiskárna se jmenuje "\\Oce3121a\Print" . Ovšem zrada byla asi v tom, že jsem nevěděl, že "\\" se má psát do přík. řádku jako "\\\\" a "\" jako "\\" .
Vyřešeno, z mé strany uzavírám a děkuji za trpělivost.


Ferdinand2006-3-8 14:59:8