CAFE

★ CAD/LISP/분과 Q&A

[[전기]]퍼지 필터 리습인데요

작성자비치|작성시간12.05.18|조회수388 목록 댓글 6

 

성심 성의껏 질문을 작성하여 주세요, 대충하시면 답변도 대충작성합니다.^^

 

 - 제목 작성시 금지어

   만들어주세요? 해주세요? 안되는데 이렇게 변경해주세요? 등등

- 특정분과 질문은 제목에 분과삽입 [건축] 

   좋은예) [분과]무엇에 대해 문의합니다. /[분과]B로 바꾸는 방법을 알고싶습니다.

- 말머리 필수 

 

① CAD 종류   : 오토캐드

② VERSION   :  2012

③ 운영 체제    : 윈도우 xp

  

④ 질문내용 및 스크린샷(이미지 및동영상)

    

 

    

누군가 주어서 사용하는

 

퍼지하고 필터 같이하는 리습입니다

그런데 리습실행 종료되면 -.-;; 레이어가 0 번으로 바뀝니다

 

첨에 리습실행하는 레이어는 다른 레이어 인데 퍼지하고 필터가 진행되다 보니 그런거 같읍니다

 

원래 리습 실행하는 레이어 서 종료가 되도록  도움바랍니다.

 

 


(defun rrbI:LayerFiltersDelete  (strKeepWC / objXDict)
 ;; This function insures that an Extension Dictionary exists, and works on both locations for layer filters
 (vl-load-com)                                                                  ; load ActiveX if needed
 (vl-catch-all-apply                                                            ; trap error if no extension dictionary
  (function
   (lambda ()
    (setq objXDict (vla-GetExtensionDictionary                                  ; bind dictionary to variable
                    (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))))))))
 (cond (objXDict                                                                ; if the extension dictionary exists
        (or                                                                     ; use OR to return T for success
         (rrbI:DeleteAllXRecs objXDict "ACAD_LAYERFILTERS" strKeepWC)           ; pre-2005 layer filters
         (rrbI:DeleteAllXRecs objXDict "AcLyDictionary" strKeepWC)))))          ; 2005 layer filters

(defun rrbI:DeleteAllXRecs  (objXDict dictName strKeepWC / objDict i)
 ;; This function performs the chore of deleting each filer that doesn''t match the wildcard
 (vl-catch-all-apply                                                            ; trap errors
  (function
   (lambda ()
    (setq objDict (vla-Item objXDict dictName))                                 ; get layer filters dictionary
    (vlax-for objXRec  objDict                                                  ; loop thru all XRecords in the dictionary
     (cond ((not (and strKeepWC (wcmatch (vla-Get-Name objXRec) strKeepWC)))    ; if deleting all filters, or current doesn''t match wildcard
            (setq i (1+ (cond (i)                                               ; increment counter
                              (0))))                                            ; initialize counter
            (vla-Delete objXRec)))))))                                          ; delete filter
 (cond (i (princ (strcat "\n" (itoa i) " filters deleted.")))))                 ; if counter is bound, report number of filters deleted

 

;;;;;;;;;**************************2005,4 new lisp**********************************
(defun c:ppp ()                                 ;퍼지를 한방에..
     (terpri)
          (command "layer" "s" "0" "")
          (repeat 3                   
           (command "purge" "a" "" "n")
           (command "layer" "t" "*" "")              
                           
                     )
  (rrbI:LayerFiltersDelete nil)                     ; pass nil to subr if user hit <Enter>
                (princ)
         )

(princ)

 

 

 

 

 

 

⑤ 파일첨부 (LISP/DWG) - DWG 첨부시 보다 정확한 답변을 얻을수 있습니다.

 

 

 

 

※ 유의사항

 - ①말머리 : 말머리를 달아야 구분이 쉽겠죠^^

 - ②Screenshot : 이해를 돕기위해 삽입요망.

 - ③파일 첨부 : 상위버전에서 테스트할 파일이 아니면 가급적 하위버전으로 저장후 첨부.

                          해당리습/해당파일(DWG) 도 같이 첨부하여 주세요.

 - ④       목 : 질문 내용 반영(개략적인 내용),       예) 해치를 만들고 싶어요, pline을 연결할려면?

 - ⑤질문글 삭제금지 : 질문후 댓글이 달린글은 삭제금지.

    여러 리플러들이 소중한 시간을 내어서 고민한후 댓글을 작성한 이상 "강력조치" 토록 하겠음. 

 

※ 정답만이 댓글은 아닙니다. 그 답이 맞던 틀리던 그건 그 댓글로서 존중되어야 합니다.

    회원님들이 글을 읽었다는것과 댓글을 달았다는건 그만큼 관심을 가지고 있고 또 그 답을 해주기 위해

    검색도 해보고 도움말도 보고 고민도 하는 일련의 과정을 거치면서 나오기 때문이죠.

    이에 대한 고마움과 감사함을 모르는 테러행위(?)는 없었으면 합니다.

 

 

 

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
  • 작성자비치 작성자 본인 여부 작성자 | 작성시간 12.05.18 썬플라워님 그거 지우니 되네요 감사해요 ㅎ
    제가 아무껏도 몰라 간단한것도 수정이 안되서 올렷는데 감사합니다
  • 작성자비치 작성자 본인 여부 작성자 | 작성시간 12.05.18 담에 어려운거는 아니고 간단하고 수정할거 있음 답변점 부탁드릴게요
    다른분들에게 도 부탁합니다.
  • 답댓글 작성자썬플라워 | 작성시간 12.05.18 네 수고하세요
  • 작성자3:16 | 작성시간 12.05.19 썬플라워님 수고하셨어용^^*
  • 작성자겁쟁이 | 작성시간 15.07.27 감사합니다...
댓글 전체보기
맨위로

카페 검색

카페 검색어 입력폼