从图书馆借了一本机械工业出版社出版的《AUTOCAD 二次开发实用教程》
书中有关于绘制圆形瓷砖,笔者自己试了试,改了改
(defun c:circletile()
(setq bp (getpoint "\n the garden of initial point:"))
(setq a (getangle "\n the angle of garden load:"))
(if (not a) (setq a 0.0))
;(initget 7)
(setq l (getint "\n 花园横向圆瓷砖的个数:"))
(setq w (getint "\n 花园纵向圆瓷砖的个数:"))
(setq r(getint "\n 圆瓷砖的半径:"))
(command "color" 1)
(command "line" bp (setq p1 (polar bp 0.0 (* r(* 2 l))))
(polar p1 (/ pi 2.0) (* r (* 2 w)))
(polar bp (/ pi 2.0) (* r(* 2 w)))
"close")
(setq cp (polar bp (/ pi 4) (* r (sqrt 2)))
cp1 cp)
(command "color" 7)
(repeat w
(repeat l
(command "circle" cp1 r)
(setq cp1 (polar cp1 0 (* 2 r)))
)
(setq cp1 (polar cp (/ pi 2) (* 2 r))
cp cp1)
)
(princ)
)
在CAD命令行输入 circletile,即可实现。