Zobrazit plnou verzi příspěvku: Chyba v příkazu _ddedit

iand
18.01.2007, 09:10
Potřebuji použít v ACADu 2004 příkaz _ddedit v lispu. Příkaz by měl umět zpracovat
text, mtext, dimension a attribute.
Při spuštění příkazu _ddedit z příkazového řádku vše funguje. Při spuštění z lispu funguje jen text,
u ostatních entit vznikne chyba "irfcld".
Ví někdo, v čem je chyba?

Příklad použití:

;;; tt.lsp
;;; editace textu, mtextu, koty z výběrové množiny

(defun c:tt ( / ss sslen cnt ent)
(setq ss (ssget
      '((-4 . "<OR")
        (0 . "TEXT")
        (0 . "MTEXT")
        (0 . "DIMENSION")
        (-4 . "OR>")
       )
    )
)
(setq sslen (sslength ss))
(setq cnt 0)
(while (< cnt sslen)
    (setq ent (ssname ss cnt))
    (command "_ddedit" ent "")
    (setq cnt (1+ cnt))
    (princ)
)
)


A. spuštění z lispu: funguje jen text, mtext ani dimension nefungují (attribute jsem nezkoušel):

Příkaz: tt
Vyberte objekty: nalezeno: 1                                               ;vybrán text
Vyberte objekty: nalezeno: 1, celkem 2                                    ;vybrán mtext
Vyberte objekty:
_ddedit
Vyberte objekt poznámky nebo [Zpět]:                                       ;text zpracuje správně
Příkaz: _ddedit
Vyberte objekt poznámky nebo [Zpět]:   CHYBA aplikace: irfcld              ;mtext popř. i dimension havaruje
Příkaz: ; chyba: Nastala chyba uvnitř funkce *error*příliš mnoho argumentů ;co je to za chybu?

B. spuštění z klávesnice: funguje všechno

Příkaz: (setq ent (entsel))
Vyberte objekt: (<Jméno entity: 7ef605d0> (11.7618 19.7676 0.0))           ;vybrán mtext piknutím
Příkaz: _ddedit                                                            ;mtext zpracuje správně
Vyberte objekt poznámky nebo [Zpět]: "AAAAAAAAAAA\\PLLLLLLLLLLL"

Vyberte objekt poznámky nebo [Zpět]: !ent                                  ;vybrán mtext pomocí !ent
(<Jméno entity: 7ef605d0> (11.7618 19.7676 0.0))
"AAAAAAAAAAA\\PLLLLLLLLLLL"                                                ;opět mtext zpracuje správně
Vyberte objekt poznámky nebo [Zpět]:


iand
30.01.2007, 18:19
Vážení,
najde se někdo, kdo na to přijde?
Otestujte to prosím někdo na ACADu2006, třeba zlobí ten editor :lisped, byly s ním potíže odjakživa.
Dost bych potřeboval, aby to fungovalo.
Díky Ivan Anděl

PepaR
31.01.2007, 17:34
Zkuste se mrknout do zdrojáku této funkce, ta zpracová taktéž TEXT, MTEXT i kóty.
 
uploads/20070131_173403_ddntext.zip

iand
31.01.2007, 18:24
Díky,
samostatně to funguje výborně, při vyvolání z mého lispu zatím ne, snad se mi to podaří nějak správně propojit.
Ivan Anděl