這個用一個小插件就可以完成批量繪制圓:
(defun C:tes ( / &k1 &kw1 &ob1 c40 i n1 pt1) (if (null vlax-dump-object) (vl-load-com) ) (if (and (setq c40 (getdist "\n請輸入圓的半徑")) (> c40 0);輸入的值大于0 (princ "\n請選擇要繪制圓的多段線") (setq &kw1 (ssget '((0 . "LWPOLYLINE")))) ) (progn (while (setq &k1 (ssname &kw1 0)) (setq &kw1 (ssdel &k1 &kw1) &ob1 (vlax-ename->vla-object &k1)) (setq n1 (fix (vlax-curve-getEndParam &ob1)) i 0);取得坐標數量 (if (null (vlax-curve-isClosed &ob1)) (setq n1 (1+ n1)) );如果不封閉就增加一個點 (repeat n1 (setq pt1 (vlax-curve-getPointAtDist &ob1 (vlax-curve-getDistAtParam &ob1 i)));得到點的坐標 (entmake (list '(0 . "CIRCLE") (cons 10 pt1) (cons 40 c40)));多段線點上繪制圓 (setq i (1+ i)) ) ) ) ) (princ));復制到記事本,以【.lsp】為后綴命名,打開CAD,autolisp加載,命令【TES】