비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 112842
다음
진행 중
fikwki
fikwkiLv.0
등록일: 2021-01-282021-01-28T10:12:23+09:00 2021-01-28T10:12:23+09:00카테고리: AutoCAD & CADian

h7공차 적용 리습

홀 명령어 hh7

축 명령어 sh7
이용해 보시고 수정할게있거나 더 간략히 코드로 수정가능하면 알려주세요
그리고 (setq num (vl-string-search “%%c” chk))에서 대문자 소문자 구분없이 인덱스 번호를 찾을수있을까요
2021-01-28 수야12님 대소문자 해결 업데이트
2021-02-02 %%c가 사라지는 문제 업데이트
(if (>= 0 (setq num (vl-string-search “%%C” (strcase chk)))) -> (if (= nil (setq num (vl-string-search “%%C” (strcase chk))))
=====================================================
hh7 파일
(defun c:hh7()
(princ “n —- 공차를 기록할 치수<Dimension> 또는 치수선을 선택하세요! —–  : “)(princ)
(setq ob (ssget (list (cons 0 “DIMENSION”) )))
(setq num (sslength ob))
(setq n 0)
(while (ssname ob n)
(setq chk (ssname ob n))
(setq ent1 (entget chk))
(setq dimtol (cdr (assoc 42 ent1)))
(setq chk (cdr (assoc 1 ent1)))
(if (= nil (setq num (vl-string-search “%%C” (strcase chk))))
(progn
(cond
((> 3 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S+0.01^ 0;}”) (assoc 1 ent1) ent1)) (princ))
((> 6 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S+0.012^ 0;}”) (assoc 1 ent1) ent1)) (princ))
((> 10 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S+0.015^ 0;}”) (assoc 1 ent1) ent1)) (princ))
((> 18 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S+0.018^ 0;}”) (assoc 1 ent1) ent1)) (princ))
((> 30 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S+0.021^ 0;}”) (assoc 1 ent1) ent1)) (princ))
((> 50 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S+0.025^ 0;}”) (assoc 1 ent1) ent1)) (princ))
((> 80 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S+0.03^ 0;}”) (assoc 1 ent1) ent1)) (princ))
(princ “치수초과”)(princ)
)
)
    (progn
(setq num (vl-string-search “%%C” (strcase chk)))
(setq result (substr chk 1 (+ 5 num)))
(cond
((> 3 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S+0.01^ 0;}”)) (assoc 1 ent1) ent1)) (princ))
((> 6 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S+0.012^ 0;}”)) (assoc 1 ent1) ent1)) (princ))
((> 10 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S+0.015^ 0;}”)) (assoc 1 ent1) ent1)) (princ))
((> 18 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S+0.018^ 0;}”)) (assoc 1 ent1) ent1)) (princ))
((> 30 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S+0.021^ 0;}”)) (assoc 1 ent1) ent1)) (princ))
((> 50 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S+0.025^ 0;}”)) (assoc 1 ent1) ent1)) (princ))
((> 80 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S+0.03^ 0;}”)) (assoc 1 ent1) ent1)) (princ))
(princ “치수초과”)(princ)
)
)
)
(setq n (1+ n))
)
)
===============================================================
sh7 파일
(defun c:sh7()
(princ “n —- 공차를 기록할 치수<Dimension> 또는 치수선을 선택하세요! —–  : “)(princ)
(setq ob (ssget (list (cons 0 “DIMENSION”) )))
(setq num (sslength ob))
(setq n 0)
(while (ssname ob n)
(setq chk (ssname ob n))
(setq ent1 (entget chk))
(setq dimtol (cdr (assoc 42 ent1)))
(setq chk (cdr (assoc 1 ent1)))
(if (= nil (setq num (vl-string-search “%%C” (strcase chk))))
(progn
(cond
((> 3 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S 0 ^-0.01;}”) (assoc 1 ent1) ent1)) (princ))
((> 6 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S 0 ^-0.012;}”) (assoc 1 ent1) ent1)) (princ))
      ((> 10 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S 0 ^-0.015;}”) (assoc 1 ent1) ent1)) (princ))
((> 18 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S 0 ^-0.018;}”) (assoc 1 ent1) ent1)) (princ))
((> 30 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S 0 ^-0.021;}”) (assoc 1 ent1) ent1)) (princ))
((> 50 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S 0 ^-0.025;}”) (assoc 1 ent1) ent1)) (princ))
((> 80 dimtol) (entmod (subst (cons 1  “<>{}{\H0.71x;\C92;\S 0 ^-0.03;}”) (assoc 1 ent1) ent1)) (princ))
(princ “치수초과”)(princ)
)
)
    (progn
(setq num (vl-string-search “%%C” (strcase chk)))
(setq result (substr chk 1 (+ 5 num)))
(cond
((> 3 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S 0 ^-0.01;}”)) (assoc 1 ent1) ent1)) (princ))
((> 6 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S 0 ^-0.012;}”)) (assoc 1 ent1) ent1)) (princ))
      ((> 10 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S 0 ^-0.015;}”)) (assoc 1 ent1) ent1)) (princ))
((> 18 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S 0 ^-0.018;}”)) (assoc 1 ent1) ent1)) (princ))
((> 30 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S 0 ^-0.021;}”)) (assoc 1 ent1) ent1)) (princ))
((> 50 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S 0 ^-0.025;}”)) (assoc 1 ent1) ent1)) (princ))
((> 80 dimtol) (entmod (subst (cons 1 (strcat result “{}{\H0.71x;\C92;\S 0 ^-0.03;}”)) (assoc 1 ent1) ent1)) (princ))
(princ “치수초과”)(princ)
)
)
)
(setq n (1+ n))
)
)
업로드가 안되는관계로 코드를 올립니다
  • 0
  • 3 3 답변
  • 131 조회
공유
  • Facebook

    관련 있는 질문들

    • 질문오토캐드 라인타입이 너무 많은데 어떻게 정리하나요..
    • 질문오토캐드 라인타입이 너무 많은데 어떻게 정리하나요..
    • 캐드출력시 pc3모드이 이상현상
    • 객체 전체 간격 조정 할수 있을까요?

    3 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. 수야12 Lv.21
      2021-01-28T11:49:25+09:00답변 등록 답변 등록 일시 2021-01-28 11:49 am

      (if (= ass1 “DIMENSION”)  =  치수만 선택옵션이 있으니 의미없는 구문입니다.

      (setq num (vl-string-search “%%C” (strcase chk))) = 이렇게 해보세요
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    3. fikwki Lv.0
      2021-01-28T11:56:58+09:00답변 등록 답변 등록 일시 2021-01-28 11:56 am

      entsel에서 ssget으로 수정하면서 안바꿨네요 감사합니다

      %%c는 고쳐서 해보겠습니다
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    4. fikwki Lv.0
      2021-01-28T12:04:06+09:00답변 등록 답변 등록 일시 2021-01-28 12:04 pm

      strcase 쓰니까 잘되네요 감사합니다 

      리습을 남의것만 보고 만들다보니 미흡하네요 
      • 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