;;用 grread 或 move 移动命令,以move为例 (defun tt (ptlst / a b c) (setq a (getvar "osmode") b (entlast) ) (setvar "osmode" 0) (apply 'command (cons "_.pline" ptlst)) (command "") (setvar "osmode" a) (setq c (entlast)) (if (/= b c) (command "_.move" c "" (car ptlst) pause) ) (princ) ) ;;测试 (defun c:test (/ p lst) (setq lst (list (setq p (getpoint "\n起点: ")))) (while p (setq lst (cons (setq p (getpoint p "\n下一点: ")) lst)) ) (setq lst (cdr lst)) (tt lst) ) |