이 리습은 한번 선택하고 나면 명령어를 다시 쳐야 되는데 복수 선택이 될수 있게 수정 부탁드립니다.
(defun c:nj (/
pl-remove-p
sel sePt seEnt
)
(defun pl-remove-p (bp pent / a b c dis n re GetPolyVtx)
;; polyline 의 정점들을 리스트로 리턴하는 함수다. 이 함수의 설명은 여기를 클릭.
(defun GetPolyVtx(EntList / VtxList AA X)
(setq VtxList ‘())
(IF (= “LWPOLYLINE” (CDR (ASSOC 0 EntList)))
(mapcar ‘(lambda (x) (if (= 10 (car x)) (setq VtxList (append VtxList (list (cdr x))) ) ) ) EntList)
(PROGN
(SETQ AA (ENTGET(ENTNEXT (CDR (ASSOC -1 EntList)))))
(WHILE (/= “SEQEND” (CDR (ASSOC 0 AA)))
(setq VtxList (append VtxList (list (cdr (ASSOC 10 AA)))))
(SETQ AA (ENTGET(ENTNEXT (CDR (ASSOC -1 AA)))))
)
));IF
VtxList
)
(setq a pent)
;; polyline 의 정점들을 추출한다.
(setq b (GetPolyVtx a))
;; 어떤점과 가장가까운 vertex 를 찾는다.
(setq dis (distance bp (car b)) n 0 re (car b))
(mapcar ‘(lambda (x)
공유