step through layers with vba?

step through layers with vba?

Anonymous
Not applicable
803 Views
1 Reply
Message 1 of 2

step through layers with vba?

Anonymous
Not applicable

I am working with a lisp that step through layers one at a time, locking all other layers than current one. (enter or space)

While this lisp runs I can zoom etc in the drawing.

Is it possible to make this tool with VBA too?

 

gr. Laszlo

defun C:STL (/ *error* cmde lay)
  (defun *error* (errmsg)
    (if (not (wcmatch errmsg "Function cancelled,quit / exit abort,console break"))
      (princ (strcat "\nError: " errmsg))
    ); end if
    (command "_.layer" "_unlock" "*" "")
    (setvar 'cmdecho cmde)
  ); end defun - *error*
  (setq cmde (getvar 'cmdecho))
  (setvar 'cmdecho 0)
  (while (getstring "\nPress Space or Enter to go to next Layer, Escape to quit: ")
    (setq lay (cdr (assoc 2 (tblnext "layer" (not lay)))))
 (while (and lay (wcmatch lay "*|*") (setq lay (cdr (assoc 2 (tblnext "layer"))))));    
(if (not lay) (setq lay (cdr (assoc 2 (tblnext "layer" T))))); back to 0 at end
    (command "_.layer" "_thaw" lay "_set" lay "_lock" "*" "_unlock" lay "" "_regen")
  ); end while
); end defun
(princ "\nType STL to Step Through Layers, locking all other Layers.")
(princ)

 

 

 

0 Likes
Accepted solutions (1)
804 Views
1 Reply
Reply (1)
Message 2 of 2

truss_85
Advocate
Advocate
Accepted solution

I am afraid it is not but it might be possible another way but you can execute command each time. It continues to which layer did you left.

0 Likes