(defun c:mpl()
(my->drawPLine)
)
(defun draw->Pline( lst w / pt )
(entmake (append (list '(0 . "LWPOLYLINE")
'(100 . "AcDbEntity")
'(100 . "AcDbPolyline")
(cons 90 (length lst))
(cons 43 w);全局宽度
)
(mapcar '(lambda (pt) (cons 10 pt)) lst)
)
)
);defun
(defun my->drawPLine( / pt0 li pt ss)
(setq pt0 (getpoint "输入起点")
li (list pt0 )
ss (ssadd)
)
(while (setq pt (getpoint pt0 "\n 输入下一点:"))
( draw->Pline (list pt0 pt) 90)
(setq li (cons pt li)
pt0 pt
);setq
(setq ss (ssadd (entlast) ss));setq
);while
(command "erase" ss "")
( draw->Pline (reverse li) 90)
(princ)
)