각도가 같은 선만 추출하기
본문 바로가기
■ 유용한 캐드&리습/▫ AutoLISP

각도가 같은 선만 추출하기

by 아키모아 주말농부 2024. 12. 31.
728x90

;;======================
;  각도가 같은 선만 추출하기(2008.02.18 주말농부)
;  ->선택된 객체와 동일한 각도의 선만 선택됨
;;--------------------------------------
(defun c:q(/ en en1 ss1 ss2 ed ed1 ag1 ag2 pt1 pt2 k)
   (setq en1 (car (entsel "\n기준선 선택->")))
   (setq ed1 (entget en1))
(if (= "LINE" (dxf 0 ed1)) (progn
   (prompt " 객체선택->")
   (setq ss1 (ssget '((0 . "LINE"))) )
   (setq pt1 (dxf 10 ed1) pt2 (dxf 11 ed1))
   (setq ag1 (angle pt1 pt2))
   (setq ag1 (rem ag1 pi))
   (setq ssn (sslength ss1))
   (setq k 0)
   (setq ss2 (ssadd))
   (setq ss2 (ssadd en1 ss2))
   (repeat ssn
      (setq en (ssname ss1 k))
      (setq ed (entget en))
      (setq pt1 (dxf 10 ed) pt2 (dxf 11 ed))
      (setq ag2 (angle pt1 pt2))
      (setq ag2 (rem ag2 pi))
      (if (equal ag1 ag2 0.00001)
         (setq ss2 (ssadd en ss2))
      )
      (setq k (+ k 1))
   )
   (sssetfirst nil ss2)(terpri)
   (prin1 (sslength ss2)) (prompt "개의 객체을 선택함")
   (prompt "<각도:" ) (prin1 (rtd ag1)) (prompt "도>")
))
(prin1))

각도가_같은선_선택.lsp
0.00MB

728x90