Autolisp:利用AuoCAD之Lisp编程案例之自动智能绘制枫叶玫瑰
目录
输出结果
实现代码
;风玫瑰程序: GXFMG.LSP 1989.1.
(defun dbh(a)
(* pi (/ a 180.0))
)
(defun C:FMG( )
(setq pt (getpoint "风玫瑰中心点—Jason niu:"))
(setq len (getdist "O-D1之距:"))
(setq d1 (polar pt (dbh 0) len))
(setq len (getdist "O-D2之距:"))
(setq d2 (polar pt (dbh 22.50) len))
(setq len (getdist "O-D3之距:"))
(setq d3 (polar pt (dbh 45.00) len))
(setq len (getdist "O-D4之距:"))
(setq d4 (polar pt (dbh 67.50) len))
(setq len (getdist "O-D5之距:"))
(setq d5 (polar pt (dbh 90.00) len))
(setq len (getdist "O-D6之距:"))
(setq d6 (polar pt (dbh 112.5) len))
(setq len (getdist "O-D7之距:"))
(setq d7 (polar pt (dbh 135.00) len))
(setq len (getdist "O-D8之距:"))
(setq d8 (polar pt (dbh 157.5) len))
(setq len (getdist "O-D9之距:"))
(setq d9 (polar pt (dbh 180.00) len))
(setq len (getdist "O-D10之距:"))
(setq d10 (polar pt (dbh 202.50) len))
(setq len (getdist "O-D11之距:"))
(setq d11 (polar pt (dbh 225.00) len))
(setq len (getdist "O-D12之距:"))
(setq d12 (polar pt (dbh 247.50) len))
(setq len (getdist "O-D13之距:"))
(setq d13 (polar pt (dbh 270.0) len ))
(setq len (getdist "O-D14之距:"))
(setq d14 (polar pt (dbh 292.50) len))
(setq len (getdist "O-D15之距:"))
(setq d15 (polar pt (dbh 315.00) len))
(setq len (getdist "O-D16之距:"))
(setq d16 (polar pt (dbh 337.50) len))
(command "line" d10 d2 \r)
(command "line" d11 d3 \r)
(command "line" d12 d4 \r)
(command "line" d14 d6 \r)
(command "line" d15 d7 \r)
(command "line" d16 d8 \r)
(command "line" d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16 d1 \r)
)