Zobrazit plnou verzi příspěvku: select previuos skratka

DodoSVK
21.10.2010, 15:01
Dobry den, chcel by som sa vas opytat ako si mozem nastavit skratku na command select previous.
 
 
Chcel som si to najprv nastavit cez acad.pgp ale tam tento prikaz nadefinovany nieje, tak neviem ako inak si este mozem nastavit skratku.
 
V customize user interface som nasiel pre tento command makro $M=$(if,$(getvar,cmdactive),,_select;)_p
 
ale kedze neviem este s makrami velmi pracovat, neviem ako pomocou skratky toto makro vyvolat.
 
Dakujem velmi pekne za rady.
 
(obrazok s ikonou o ktory prikaz sa jedna si mozete pozriet na http://www.upnito.sk/0/7bw9rcmxs786x2ss7zyyffb4es7zsryn.JPG
 
 
 

Vladimír Michl
21.10.2010, 15:42
Obsahem makra se nemusíte zabývat - stačí v dialogu CUI myší přetáhnout tento příkaz (jmenuje se "Výběr Předchozí") nahoru do větve Klávesové zkratky > Klávesové zkratky. Pak mu v okně vpravo přiřaďte horkou klávesu - např. Ctrl+Alt+P.

DodoSVK
21.10.2010, 16:12
Dakujem, takto to funguje. Len skratky sa dali nadefinovat vzdy len  pomocou kombinacie klaves napriklad "ctrl + p".
 
Je mozne si neakym sposobom spravit skratku na tento prikaz len ako "p"?
 
Tak ako je to mozne robit napriklad cez ten acad.pgp...tam mam napriklad zadefinovanu usecku na cislo 3, polpriamku na cislo 34, priamku 35 a podobne. Len select previous tam nieje tak to nemozem zmenit tak jednoducho.
 
Vsetky skratky si robim na ciselne kody, a teda poviem konkretne select previous by som chcel zadefinovat na "11"
 
je to mozne? 
 

Vladimír Michl
21.10.2010, 17:09
"p" zrovna ne, ale "P" ano (tedy Shift+P) -- je ale třeba počítat s tím, že kdekoliv napíšete velké "P" (např. _CHPROP), spustí se Select previous.
 
Toto jsou klávesové zkratky, nezaměňujte s aliasy příkazů ("příkazovými zkratkami"). V ACAD.PGP nejde použít makra. Dalším způsobem tvorby zkratek je nadefinování vlastních LISP funkcí - (defun C:p ...

DodoSVK
22.10.2010, 14:34
vdaka, uz mi je to jasnejsie ohladne roznych druhov skratiek, ktore treba rozlisovat.
 
Ohladne Lispu viem toho zatial malo, viem len ze sa da vytvorit aj povedzme v notepade, a potom sa subor ulozi ako *.lsp
 
dalej tento lisp treba nacitat do Autocadu a potom prikaz spustim tak ako som ho pomenoval na zaciatku scriptu lispu
 
(defun c:p (  =>  teraz by som prikaz vyvolal pomocou prikazovej skratky "p"
 
Problem ktory vsak stale mam je, ze neviem ako by mal obsah lispu vyzerat aby som dosial moj ciel, a teda aby som zadefinal donho  prikaz "Select previous".
 
Viete mi poradit aj stymto? ci to je uz na dlhsie? ak stym nieje vela prace bol by som vdacny za konkretne znenie scriptu, ktore treba v lispe zadefinovat, respektive o neaky link kde sa otom mozem docitat viacej.
 
Dakujem velmi pekne! 

Vladimír Michl
22.10.2010, 15:46
Obsah LSP souboru je program - musíte jej tedy "naprogramovat". Jednoduchá makra se dají naprogramovat prostým uvedením příkazů AutoCADu do funkce (command) - tedy např.:
[CODE](command "_CIRCLE" (0 0 0) 12.3)[/CODE]
 
Konkrétně uzlový výběr předchozí výběrové množiny jde řešit - už včetně definice názvu příkazu, tedy "zkratky", např. jako:
[CODE]
(defun C:P1 ()
 (command "_MOVE" "_P" ""))
 (princ)
)
[/CODE]
nebo jako uzlový výběr

[CODE]
(defun C:P2 ()
 (sssetfirst nil (ssget "_P"))
 (princ)
)
[/CODE]

DodoSVK
22.10.2010, 16:05
Dakujem velmi pekne, presne ten druhy priklad som potreboval.
Este sa opytam, load-ovanie lispov vzdy do vykresu mi pride trochu neprakticke, takze predpokladam ze existuje neaky sposob ako zadefinovat, ktore lisp sa maju nacitat do kazdeho vykresu, s ktorym pracujeme, hned na zaciatku.
 
Alebo ma autocad zlozku pre lispy, z ktorej nacitava vsetky hned pri starte?
 
dakujem!

Vladimír Michl
22.10.2010, 16:23
Ano, má něco podobného - aktovku v příkazu [CMD]_APPLOAD[/CMD]. Co přetáhnete myší do aktovky, to bude načteno pro každý výkres.
 
Další informace a odkazy viz:
http://www.cadwiki.cz/Zkratky-prikazu-AutoCADu.ashx

DodoSVK
25.10.2010, 16:35
dakujem