对选择集筛选和排序的问题
(defun tj (ss)(setq n 0 ss1 nil)
(repeat (sslength ss)
(setq en (ssname ss n))
(setq endata (entget en))
(setq p1 (cdr (assoc 10 endata)))
(setq p2 (cdr (assoc 11 endata)))
(if(> (abs (sin (angle p1 p2))) 0.1)
(progn
(setq ss (ssdel en ss))
(setq n (- n 1))
)
(setq ss1 (cons en ss1))
)
(setq n (1+ n))
)
(vl-sort ss1
(function (lambda (e1 e2)
(< (car (cdr (assoc 10 (entget e1))))
(car (cdr (assoc 10 (entget e2))))
)
)
)
)
(setq ss2 (ssadd))
(reverse ss1)
(repeat (vl-list-length ss1)
(setq en2 (car ss1))
(setq ss1 (cdr ss1))
(setq ss2 (ssadd en2 ss2))
)
(setq ss ss2)
)大神们帮忙看下,此程序是筛选出角度小于5度左右的线,然后排序
结果却不对,几个集合,和表为空
建设楼主上传相应的 Dwg 以利调试
页:
[1]