Zobrazit plnou verzi příspěvku: bleader

Ferdinand
30.05.2008, 11:35
Vytvořil jsem novou fci bleader:
(defun C:bleader   (/ MM ORM SNM GRM KROK RASTR VLBL OB KR DG ZB)
  (setq ORM (getvar "orthomode"))  (setq SNM (getvar "snapmode"))  (setq GRM (getvar "gridmode"))  (setvar "osmode" 55)  (setvar "attdia" 0)  (if (/= ORM 0)    (setvar "orthomode" 0)    nil  )  (setq MM (getvar "dimscale"))  (setq KROK (getvar "snapunit"))  (setq RASTR (getvar "gridunit"))  (setq OB (strcase "FBM-DET_4"))  (setq KR (strcase "FBM-DET_0"))
  (command "_snap" "10" "" "_grid" "100" "")  (if (/= SNM 1)    (setvar "snapmode" 1)    nil  )  (if (/= GRM 1)    (setvar "gridmode" 1)    nil  )
  (initget "D K")
  (setq keypart (getkword "\nPoložka bude v [obDélníku/Kroužku]: <K> "))  (if (= keypart nil)    (setq keypart "K")  )
  (cond ((= keypart "D")  (setq VLBL OB)  (setq part 1) ) ((= keypart "K")  (setq VLBL KR)  (setq part 2) )  )
  (command "_leader"    pause    pause    (setq ZB (getvar "lastpoint"))    "_F"    "_N"    "_A"    ""    "_B"    (setvar "orthomode" 1)    VLBL    "_PS"    MM    ZB    MM    MM    pause  )
  (setvar "osmode" 39)  (setvar "orthomode" ORM)  (setvar "snapmode" SNM)  (setvar "gridmode" GRM)  (setvar "snapunit" KROK)  (setvar "gridunit" RASTR)
  (redraw)  (princ))
která při provádění na p.ř. píše hlášku (při startu fce)
Command: _BLEADER Unknown command "BLEADER".  Press F1 for help.
a pak ještě další hlášku (za výzvou k zadání názvu bloku)
"1.dwg": Can't find file in search path:
C:\...
...
1. Jak lze docílit, aby znal i uživatelsky nadefinované fce?
2. Potřebuji, aby při zadání vynášecí čáry byla orthomode=0 a při zadávání otočení byla orthomode=1.

Vladimír Michl
30.05.2008, 15:05
ad 1) ale on ji zná - jinak by nešla spustit; to hlášení je zřejmě z pokusu o opakování příkazu (někde je Enter navíc)
ad 2) nejlépe je (pokud to jde) požadované body zadávat mimo (před) spuštěním samotné funkce (command)