비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 178819
다음
진행 중
무니미니
무니미니Lv.0
등록일: 2022-12-052022-12-05T10:12:17+09:00 2022-12-05T10:12:17+09:00카테고리: AutoCAD & CADian

치수입력시 소수점 후행억제가 않됩니다.

치수입력시 소수점 후행억제가 않됩니다.

오랜만에 글올립니다.

치수입력시에 그림1과 같이 입력시에 사용하는 리습입니다.

뭐가 문제인지 후행억제가 안되는데 리습의 문제인지 캐드 옵션상의 문제인지 제가 아는 지식으로는 해결하기가 어려워서 고수님들의 도움요청을 부탁드립니다.

정수 각도일때만 후행 억제하고 정수각이 아닐때는 현재로 좋습니다.

간절합니다. 고수님들 부탁드립니다.

 

 

(DEFUN C:AQ (/ ENT PT1 PT2 pt3 pt4 PT5 pt6 AN an1 an2 an3 an4)

(setq *Osmode_Save (getvar “osmode” ))
(setq oldlayer (getvar “clayer”))
(setvar “clayer” “dim”)

(SETQ ent(entget (car (entsel “npick a line : “))))
(setq pt1(cdr (assoc 10 ent)))
(setq pt2(cdr (assoc 11 ent)))
(setvar “osmode” 103)

; (setq pt6(polar pt4 (dtr 330) 8.26 ))
(setq an(angle pt1 pt2))
(if (<= an (/ pi 4)) ;0~45
(setq an1 an)
(if (<= an (/ pi 2)) ;45~90
(setq an1 (- (/ pi 2) an))
(if (<= an (/ (* pi 3) 4)) ;90~135
(setq an1 (- an (/ pi 2)))
(if (<= an pi) ;135~180
(setq an1 (- pi an))
(if (<= an (/ (* 5 pi) 4)) ;180~225
(setq an1 (- an pi))
(if (<= an (/ (* 3 pi) 2)) ;225~270
(setq an1 (- (/ (* 3 pi) 2) an))
(if (<= an (/ (* 7 pi) 4)) ;270~315
(setq an1 (- an (/ (* pi 3) 2)))
(setq an1 (- (* pi 2) an)) ;315~360
)
)
)
)
)
)
);;IF
(setq an2(angtos an1 0 3))

(if (zerop an1)
(setq an3(strcat (angtos an1 0 5)”%%d”))
(setq an3(vl-string-subst “%%d” “d” (angtos an1 1 2)))
);;if

(setq an4(strcat an3 ))
(setvar “osmode” 512)
(command “_leader” PAUSE PAUSE “” an4 “”)

(setvar “osmode” *Osmode_Save)
(setvar “clayer” oldlayer)
(princ)
);===END OF PROGRAM===

 

  • 0
  • 7 7 답변
  • 108 조회
공유
  • Facebook

    관련 있는 질문들

    • 동적블록 신축에서 길이를 늘릴때 최종 길이를 입력 또는 늘려야 하는 차이만큼의 길이를 입력
    • 캐드 타일 개수 구하기
    • 캐드 선택할 때 마우스 옆에 박스안 초록동그라미, 파란동그라미 표시 어떻게 없애나요?
    • 캐드 용량이 16.8MB 인데 10MB 이하로 줄이고 싶습니다

    답변을 남겨주세요
    응답 취소

    답변을 등록하기 위해서는 로그인이 필요합니다.

    비밀번호를 잊으셨나요?

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

    7 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. 수야12 Lv.21
      2022-12-05T12:26:30+09:00답변 등록 답변 등록 일시 2022-12-05 12:26 pm
      (수정됨)

      d값 이후가 “0” 이 아닐때는 제 값을 표현 해야 하니

      값비교용으로

      (setq anv (fix an1)) ;값비교용 변수를 만듭니다

      (if (= an1 anv);fix한 값과 앵글값이 같으면 정수각

      (setq an3(vl-string-subst “%%d” “d” (angtos (fix an1) 1 0)))

      (setq an3(vl-string-subst “%%d” “d” (angtos an1 1 2)))

      )

      이런식으로

      참고사항 각도값은 60분법 기준입니다 호도값이 아니라..

      • 0
      • 댓글 달기
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
      • 무니미니 Lv.0
        2022-12-05T14:50:08+09:00에게 댓글을 달았습니다. 답변 등록 일시 2022-12-05 2:50 pm

        수야12님 항상 도움주셔서 감사합니다.
        리습에는 무지한 지라 어디부분을 저렇게 고쳐야 하는지 좀더 상세히 설명해주실수는 없을까요?
        여기 저기 바꿔가며 테스트 해보는데 잘되질 않네요!!!
        감사합니다.

        • 0
        • 댓글 달기
        • 공유
          공유
          • 공유 Facebook
          • 공유 Twitter
        • 수야12 Lv.21
          2022-12-05T18:54:56+09:00에게 댓글을 달았습니다. 답변 등록 일시 2022-12-05 6:54 pm

          (DEFUN C:AQ (/ ENT PT1 PT2 pt3 pt4 PT5 pt6 AN an1 an2 an3 an4)

          (setq *Osmode_Save (getvar “osmode” ))
          (setq oldlayer (getvar “clayer”))
          (setvar “clayer” “dim”)

          (SETQ ent(entget (car (entsel “npick a line : “))))
          (setq pt1(cdr (assoc 10 ent)))
          (setq pt2(cdr (assoc 11 ent)))
          (setvar “osmode” 103)

          ; (setq pt6(polar pt4 (dtr 330) 8.26 ))
          (setq an(angle pt1 pt2))
          (if (<= an (/ pi 4)) ;0~45
          (setq an1 an)
          (if (<= an (/ pi 2)) ;45~90
          (setq an1 (- (/ pi 2) an))
          (if (<= an (/ (* pi 3) 4)) ;90~135
          (setq an1 (- an (/ pi 2)))
          (if (<= an pi) ;135~180
          (setq an1 (- pi an))
          (if (<= an (/ (* 5 pi) 4)) ;180~225
          (setq an1 (- an pi))
          (if (<= an (/ (* 3 pi) 2)) ;225~270
          (setq an1 (- (/ (* 3 pi) 2) an))
          (if (<= an (/ (* 7 pi) 4)) ;270~315
          (setq an1 (- an (/ (* pi 3) 2)))
          (setq an1 (- (* pi 2) an)) ;315~360
          )
          )
          )
          )
          )
          )
          );;IF

          (setq anv(angtos an1 0 2))
          (setq pos(vl-string-position (ascii ".")anv))
          (if pos(setq n 2)(setq n 0))

          (if (zerop an1)
          (setq an3(strcat (angtos an1 0 5)"%%d"))
          (setq an3(vl-string-subst "%%d" "d" (angtos an1 1 n)))
          );;if

          (setq an4(strcat an3 ))
          (setvar "osmode" 512)
          (command "_leader" PAUSE PAUSE "" an4 "")

          (setvar "osmode" *Osmode_Save)
          (setvar "clayer" oldlayer)
          (princ)
          );===END OF PROGRAM===

          • 0
          • 댓글 달기
          • 공유
            공유
            • 공유 Facebook
            • 공유 Twitter
          • 무니미니 Lv.0
            2022-12-06T11:14:26+09:00에게 댓글을 달았습니다. 답변 등록 일시 2022-12-06 11:14 am

            수야 12님 진짜 최고이십니다.
            항상 생각하면서 잘 사용하겠습니다.

            • 0
            • 댓글 달기
            • 공유
              공유
              • 공유 Facebook
              • 공유 Twitter
        • 수야12 Lv.21
          2022-12-05T17:01:11+09:00에게 댓글을 달았습니다. 답변 등록 일시 2022-12-05 5:01 pm

          제가 설계를 잘못했네요
          fix값이 제값이 안들어가네요 15.0이면 fix하면 원래는 15가 들어가야 하는데 14가 들어가네요 헐… 다시 한번 생각해봐야 할듯 합니다.

          • 0
          • 댓글 달기
          • 공유
            공유
            • 공유 Facebook
            • 공유 Twitter
          • 캐드플러스 Lv.17
            2022-12-05T18:19:10+09:00에게 댓글을 달았습니다. 답변 등록 일시 2022-12-05 6:19 pm

            그럴리가 있겠습니까?
            맞게 했습니다.
            15.0이 처음부터 15가 아니고 14.XX에서 반올림 해서 15.0이겠죠.

            • 0
            • 댓글 달기
            • 공유
              공유
              • 공유 Facebook
              • 공유 Twitter
            • 수야12 Lv.21
              2022-12-05T18:35:53+09:00에게 댓글을 달았습니다. 답변 등록 일시 2022-12-05 6:35 pm

              그런가봐요 눈에 보이는 값은 15.0인데 fix 함수를 적용하면 14로 변해 버리네요 아마 각 변환과정에서 반올림 되서 표현되나봐요 ㅎㅎ;;

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

    Sidebar

    질문하기
    공지사항

    • 국산 CAD ‘캐디안 2025’ 출시 사전 예약 진행 2024-09-27

    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

    링크 삽입/편집

    대상 URL을 입력하세요

    또는 기존의 콘텐츠에 링크

      검색어가 지정되지 않았습니다. 최근 항목 표시 검색하거나 위와 아래 화살키를 이용하여 항목을 선택하세요.