그림과 같은 2d 선에 수작업으로 원안에 선을 하나하나 Trim 시키고 있는데요.
원안에 선만 한번에 삭제하는 그런방법이 있을까요?
현재는 Trim 명령어 치고 전체 선택하고 원안 선을 하나 하나 톡톡 클릭해서 지우고 있습니다.
제가 원하는건 한번에 원안에 선만 싹다 날리고 싶습니다.
고수님들 도와주세요~
비밀번호를 잊으셨나요? 비밀번호를 재설정하려면 이메일 주소를 입력해주세요.
해당 질문을 신고하는 이유를 간단히 입력해주세요.
해당 답변을 신고하는 이유를 간단히 입력해주세요.
해당 유저를 신고하는 이유를 간단히 입력해주세요.
(defun c:ct (/ *error* _mrSta _mrEnd gvL gv _mrCirclePoint ss o nO cPtList)
(defun *error* (msg)(_mrEnd)
(if (not (wcmatch (strcase msg) “*BREAK,*CANCEL*,*EXIT*”))
(princ (strcat “n** Error: ” msg ” **”)))(princ)
)
(defun _mrSta ()
(and (= 8 (logand 8 (getvar ‘UNDOCTL)))(vla-endundomark acDoc))
(vla-startundomark acDoc)
(setq gv (mapcar ‘getvar (setq gvL ‘(“OSMODE” “CMDECHO”))))
(mapcar ‘setvar gvL ‘(0 0))
)
(defun _mrEnd ()(and gvL gv (mapcar ‘setvar gvL gv))(vla-endundomark acDoc))
(defun _mrCirclePoint (obj / d ep td p)
(setq d (/ (setq ep (vlax-curve-getEndParam obj)) 144) td 0)
(while (> ep td)
(setq p (cons (vlax-curve-getPointAtParam obj td) p))
(setq td (+ td d))
) p
)
(vl-load-com)
(setq acObj (vlax-get-acad-object))
(setq acDoc (vla-get-activedocument acObj))
(_mrSta)
(and
(setq ss (ssget ‘((0 . “circle”))))
(foreach e (vl-remove-if ‘listp (mapcar ‘cadr (ssnamex ss)))
(setq o (vlax-ename->vla-object e))
(setq nO (car (vlax-invoke o ‘offset (* (vla-get-radius o) -0.0001))))
(vla-getboundingbox nO ‘mi ‘mx)
(vla-ZoomWindow acObj mi mx)
(setq cPtList (_mrCirclePoint nO))
(vla-delete nO)
(command “_trim” e “” “f”)(foreach p cPtList (command p))(command “” “”)
(vla-ZoomPrevious acObj)
)
)(_mrEnd)(princ)
)(princ “[명령어 : CT ]”)(princ) ;;;;;;;;;아키모아 달수님작
정말 정말 감사합니다!