Zobrazit plnou verzi příspěvku: Nahradit (command) za (command-s)

zdrk
10.09.2014, 11:03
Používám tento lisp ma spojování do křivek(defun C:Krivspoj( / ss index n Ano tepent) ;spoj "krivky" s mezerou do 2 (command "_select" pause) (setq ss (ssget "_p"))    (setq index 0   n (sslength ss))    (repeat n      (setq typent (cdr (assoc 0 (entget (ssname ss index)))))       (if (or (equal typent "LINE") (equal typent "ARC")) (setq Ano T))       (setq index (+ 1 index))) (command "_pedit" "_m" "_p" "") (if Ano (command "_y")) ;Kdyz je cara nebo oblouk (command "_j" "_j" "_e" "2.00" "") (princ)) Vypisuje tuto chybu:Chyba: Neznámé selhání příkazů (command-s)Nelze vyvolat (command) z *chyba* bez předchozí volání (*push-error-using-command*).Doporučuje se převést volání příkazu (command) na (command-s).Který nahradit nebo všechny. Zkoušek už jsem skoro vše, ale výpis je pořád stejný.

Vladimír Michl
10.09.2014, 13:24

Pokud to vadí, tak raději všechny. Nicméně nedělá ta aplikace totéž co příkaz SPOJ?

zdrk
10.09.2014, 16:14
Možná dělá, ale ne úplně podle představ.Něco mi na SPOJ vadí, ale teď si nevzpomenu co.

johny
10.09.2014, 16:21
[QUOTE=Vladimír Michl] Nicméně nedělá ta aplikace totéž co příkaz SPOJ?[/QUOTE]
:) Taky jsem měl svůj lisp, s přechodem na vyšší verzi přestal trochu fungovat, tak jsem vzal na milost _join, který tehda "signifikantně" vylepšili.. Mno, ten příkaz opravdu vylepšili.. ale pořád bych řekl, že ten lisp býval spolehlivější, ikdyž už né tak výrazně... takže jsem asi trochu rezignovaně zůstal u _join.

zdrk
10.09.2014, 16:26
Klasické zlepšení k horšímu.Když to v tom lispu zaměním, píše to pořád stejnou chybu.Tady u toho lispu mi vyhovovalo, že jsem mohl vybrat cokoliv, kdekoliv a on spojil vše co mohl.U příkazu SPOJ mi to tak úplně nedaří. Snad si časem zvyknu, nebo budu používat jiný list z GG menu.zdrk2014-09-10 16:29:20

Vladimír Michl
10.09.2014, 18:05

Ale tenhle LISP můžete používat i nadále. Sám o sobě funguje i ve verzi 2015 (ověřeno). To proč vám hlásí onu chybu, je způsobeno kolizí s nějakou jinou aplikací (resp. jejím "errorhandlerem").

johny
10.09.2014, 18:47
;Nemám acad2015, vlastně teď žádný acad k dispozici, tak nevím jestli to pomůže vašemu problému, kód lze zjednodušit s setvar "peditaccept" 1. (defun C:Krivspoj ( / ss) ;spoj "krivky" s mezerou do 2  (setq ss (ssget (list '(0 . "LWPOLYLINE,ARC,LINE"))))    (setvar "PEDITACCEPT" 1)  (command "_pedit" "_m" ss "" "_j" "_j" "_e" "2." "")  (princ))

zdrk
10.09.2014, 21:15
[QUOTE=Vladimír Michl] Ale tenhle LISP můžete používat i nadále. Sám o sobě funguje i ve verzi 2015 (ověřeno). To proč vám hlásí onu chybu, je způsobeno kolizí s nějakou jinou aplikací (resp. jejím "errorhandlerem").[/QUOTE] Začarovaný kruh s povým PC opět.Na určité věci používám raději holý cad než ACA. Snažil jsem se mít vše jako v původním cadu 2009, kde bylo vše OK.Mam tam přidané GG menu, ST, a par klasických aplikací zde stažených.Trvale načtené mam Jobtime, ADDV a hodně dávno tady z diskuce stažen lisp pro zobrazení velikosti výkresu ve stavovém řádku. ADDV a velikost je načten přes aktovku. Jobtime přes menu soubor.Občas se mi zdálo, že když byl v aktovce, tak se po načtení ADDV JobTime nenačetl. Uvedena chyba, ale uz si nepamatuji jaká. Po odendání z aktovky bez problému. Ale v tom asi ta chyba nebude.