本文的目的是为了统计CAD中三种类型元素出现的次数,并输出成一个txt文件。先看整体要达到的效果。
(defun c:mm()
(setq ss (ssget))
(setq n 0)
(setq n_cir 0 n_line 0 n_arc 0)
(repeat (sslength ss)
(setq en (ssname ss n))
(setq endata(entget en))
(setq entype (cdr (assoc 0 endata)))
(cond ((= entype "CIRCLE") (setq n_cir (1+ n_cir)))
((= entype "LINE") (setq n_line (1+ n_line)))
((= entype "ARC") (setq n_arc (1+ n_arc)))
)
(setq n (1+ n))
)
(sub_write_data)
(prin1)
)
(defun sub_write_data()
(setq dat_file (getfiled "写文件练习" "C:\Users\Administrator\Desktop" "txt" 2))
(setq ff (open dat_file "w"))
(write-line (strcat "CIRCLE" (itoa n_cir)) ff)
(write-line (strcat "LINE" (itoa n_line)) ff)
(write-line (strcat "ARC" (i