小弟看完您回答的程序,想请问以下我这样的理解解释正确吗?
另外我对于以下这两段命令比较不清楚可以详细解答一下吗? (ssget '((0 . "LINE"))) i -1 ) (setq s1 (ssname ss (setq i (1+ i))))
还有关于 (cdr => 除去第一个元素后的串列. 这书上解释的意思,是说明将串列中所有的dxf资料只保留第一笔吗?
另外,这程序如果要将其改为先选取物件偏移在转成xline线该怎样改呢?
烦请您可以解答一下 谢谢!
(defun c:test () (setq ss (ssget '((0 . "LINE"))) i -1 ) ;选取串列值 图元代码 0 "line" 为选集 i -1 ,并将使资料设为变数 ss
(while ;判断
(setq s1 (ssname ss (setq i (1+ i)))) ;设定变数 i 为 1+i 并依索引值 ss 取出选择图元名,并将使资料设为变数 s1
(setq pt10 (cdr (assoc 10 (entget s1))) pt11 (cdr (assoc 11 (entget s1))) ) ;由选集 s1 找寻DXF号码 10 11 分别设定给变数 pt10 pt11
(entdel s1) ;删除图元,变数 s1
(command "xline" pt10 pt11 "") ;输入 xline 命令第1.2点 ) ) |