비밀번호를 잊으셨나요?

비밀번호를 잊으셨나요? 비밀번호를 재설정하려면 이메일 주소를 입력해주세요.

계정이 있나요? 로그인

You must login to ask a question.

비밀번호를 잊으셨나요?

아직 계정이 없으신가요? 회원가입 하기

해당 질문을 신고하는 이유를 간단히 입력해주세요.

해당 답변을 신고하는 이유를 간단히 입력해주세요.

해당 유저를 신고하는 이유를 간단히 입력해주세요.

로그인회원가입

고캐드 – 캐드(CAD) 정보의 중심

고캐드 – 캐드(CAD) 정보의 중심 Logo 고캐드 – 캐드(CAD) 정보의 중심 Logo

고캐드 – 캐드(CAD) 정보의 중심 Navigation

  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
검색
질문하기

Mobile menu

닫기
질문하기
  • 홈
  • 카테고리
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 투표
  • 커뮤니티 그룹
  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
홈/ 질문/Q 109544
다음
진행 중
Lv.0
등록일: 2018-03-092018-03-09T22:07:48+09:00 2018-03-09T22:07:48+09:00카테고리: AutoCAD & CADian

선택한 사각형 객체 내부를 자동트림해주는 리습이 있을까요?

안녕하세요?

도면내에 사각형(pline)을 선택하여 그 내부를 자동으로 트림하려고합니다.
걸쳐있는 글자나 블록은 제외하고 트림하는 lisp을 구합니다.






이것은 기존에 외부 트림이라고 나온것인데

저는 내부를 좀 없애고 싶은데 영 이런 리습방면에 무지라… 좀  수정해주실분 있을까여?

기존 내부 자동트림





(defun c:mp ( / Os_Md Et_pLo Lt_vtx Min_rX Min_rY Max_rX Max_rY
                 _tmp01 _tmp02 _tmp03 _tmp04 _tmL01 _tmAdd _tmRpt)
  (setq olderr *error* *error* errchck)
  (setq Os_md (getvar “Osmode”))
  (setvar “cmdecho” 0)
  (setvar “Osmode”  0)
  (setq Et_pLo (car (entseL “n 테두리 요소를 선택하세요 “)) ) ;
  (redraw Et_pLo 3)
  (setq Lt_vtx niL)
  (foreach f_e (entget Et_pLo)
    (if (= (car f_e) 10) (setq Lt_vtx (append Lt_vtx (List (cdr f_e))) ) ) ; i
  ) ; r
  (setq Min_rX (min (car  (car Lt_vtx)) (car  (cadr Lt_vtx)) (car  (caddr Lt_vtx)) (car  (cadddr Lt_vtx)))
        Max_rX (max (car  (car Lt_vtx)) (car  (cadr Lt_vtx)) (car  (caddr Lt_vtx)) (car  (cadddr Lt_vtx)))
        Min_rY (min (cadr (car Lt_vtx)) (cadr (cadr Lt_vtx)) (cadr (caddr Lt_vtx)) (cadr (cadddr Lt_vtx)))
        Max_rY (max (cadr (car Lt_vtx)) (cadr (cadr Lt_vtx)) (cadr (caddr Lt_vtx)) (cadr (cadddr Lt_vtx))) )
  (setq _tmp01 (list Min_rX Min_rY)
        _tmp02 (list Max_rX Min_rY)
        _tmp03 (list Max_rX Max_rY)
        _tmp04 (list Min_rX Max_rY) ) ;
  (setq _tmL01 1 ; … 최초 이격거리
        _tmAdd  1   ; … 거리 증분    
        _tmRpt 150) ; … 반복 횟수    
  (Command “Erase” “ALL” “R” “C” _tmp01 _tmp03 “”)
  (Command “Trim” Et_pLo “”)
  (repeat _tmRpt
    (Command “F” (polar _tmp01 (dtr 225) _tmL01) (polar _tmp02 (dtr 315) _tmL01) “”)
    (Command “F” (polar _tmp02 (dtr 315) _tmL01) (polar _tmp03 (dtr  45) _tmL01) “”)
    (Command “F” (polar _tmp03 (dtr  45) _tmL01) (polar _tmp04 (dtr 135) _tmL01) “”)
    (Command “F” (polar _tmp04 (dtr 135) _tmL01) (polar _tmp01 (dtr 225) _tmL01) “”)
    (setq _tmL01 (+ _tmL01 _tmAdd))
  ) ; r
  (Command)
  (setq Min_tX (car  (getvar “ExtMin”))
        Min_tY (cadr (getvar “ExtMin”))
        Max_tX (car  (getvar “ExtMax”))
        Max_tY (cadr (getvar “ExtMax”)) ) ;
  (Command “ERASE” “W” (list Min_tX Min_tY) (list Min_rX Max_tY) “”)
  (Command “ERASE” “W” (list Min_tX Min_tY) (list Max_tX Min_rY) “”)
  (Command “ERASE” “W” (list Min_tX Max_rY) (list Max_tX Max_tY) “”)
  (Command “ERASE” “W” (list Max_rX Min_tY) (list Max_tX Max_tY) “”)
  (setq Et_List (list (ssget “C” _tmp01 _tmp02 ‘((0 . “TEXT,INSERT”)))
                      (ssget “C” _tmp02 _tmp03 ‘((0 . “TEXT,INSERT”)))
                      (ssget “C” _tmp03 _tmp04 ‘((0 . “TEXT,INSERT”)))
                      (ssget “C” _tmp04 _tmp01 ‘((0 . “TEXT,INSERT”)))) ) ;
  (foreach f_e Et_List
    (if f_e
      (progn
        (setq _ij1 0)
        (repeat (sslength f_e)
          (entdel (ssname f_e _ij1))
          (setq _ij1 (1+ _ij1))
        ) ; r
      ) ; p
    ) ; i
  ) ; f
  (setVar “Osmode” Os_Md)
(princ)
) ; de_fun
(defun dtr  (_a / )  (/ (* _a pi) 180.) )

  • 0
  • 1 1 답변
  • 104 조회
공유
  • Facebook

    관련 있는 질문들

    • 새파일 및 다른이름으로 저장 누르면 스샷처럼 뜹니다
    • 오토캐드 치수선관련 질문 ㅠㅠㅠ..
    • 캐드 2021 객체가 외부참조임.
    • 캐드2007에서 다중지시선 메뉴가 없나요?

    1 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. 아키오피스 Lv.10
      2018-03-13T09:57:53+09:00답변 등록 답변 등록 일시 2018-03-13 9:57 am

      별다른 댓글이 달리지 않는 것을 보니, LISP으로 구현하는게 쉽지않은가 봅니다.
      그냥 보이지않게 하는 것이 목적이라면 wipeout을 이용해보세여!
      참고로, ArchiOffice(Xpress)의 잘라내기 기능입니다.
      경계선 잘라내기.gif

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter

    Sidebar

    질문하기
    공지사항

    • AI CAD의 미래! 캐디안 2025 1+1 프로모션 안내 2025-05-14

    Adv 234x60

    aalan

    Adv 234x60

    aalan

    Adv 120x600

    aalan

    Explore

    • 홈
    • 카테고리
      • AutoCAD & CADian
      • Inventor & Solidworks
      • Revit & ArchiCAD
      • 자유질문
      • 기타
    • 투표
    • 커뮤니티 그룹
    aalan

    Footer

    Support

    • 회사 및 서비스 소개
    • 자주 묻는 질문
    • 문의하기

    Guide

    • 제휴/협업 안내
    • 광고 서비스 안내

    Policy

    • 서비스 이용약관
    • 개인정보 처리방침
    • 광고성 정보 수신 동의

    Contents

    • 고밍스토리
    • 리습 시리즈

    정소프트 | 사업자등록번호 : 677-40-00198 | 대표 : 정은숙 | 이메일 : gocad.manager@gmail.com
    주소 : 서울특별시 강서구 양천로 400-12, 6층 614,615,617호(등촌동, 더리브골드타워)
    Copyright. 2012-2024 GOCAD All rights reserved