비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 92392
다음
Lv.0
등록일: 2011-07-222011-07-22T10:31:30+09:00 2011-07-22T10:31:30+09:00카테고리: AutoCAD & CADian

사칙연산 리습 문의 드립니다.

 


사칙연산을 위해 아래 같은 리습을 사용중인데요.


소수점 관리가 안되네요..
예를들어
숫자 1 을 ad 명령어치고 /3 을 하면 0.3333 이렇게 나옵니다.
여기서 소수점 두째자리에서 끈고 싶은데.. 어떻게 해야하는지 알려주세요.
고수님들 부탁드립니다 ^^


 


(defun c:ad (/ sset  ssl  nsset  tmp  Caltxt olderr  s)


  (command “redraw”)


  (defun caltext_error (s)
    (setq *error* olderr)
    (princ)
  )
 
  (defun CalDist ( y / Count Number? ifDot? CalString Char1 )
    (setq Count 0   Number? nil ifDot? nil   CalString “” )
    (repeat (strlen y)
      (setq Char1 (substr y (setq Count (1+ Count)) 1))
      (cond
        ((and (>= Char1 “0”)(<= Char1 “9”))
         (setq CalString (strcat CalString Char1) Number? ‘T )
        )
        ((= Char1 “.”)
         (setq CalString (strcat CalString Char1)  Number? nil  ifDot? ‘T ))
        ((= Char1 “””)(setq CalString (strcat CalString “*25.4”)  ifDot? ‘T ))
        ((= Char1 “‘”) (setq CalString (strcat CalString “*304.8”) ifDot? ‘T ))
        (‘T
          (if (and (= Number? ‘T)(= ifDot? nil))
            (setq CalString (strcat CalString “.0” Char1))
            (setq CalString (strcat CalString Char1))
          )
          (setq Number? nil ifDot? nil)
        )
      )
    )
    (if (and (= Number? ‘T)(= ifDot? nil))
      (setq CalString (strcat CalString “.0”))
    )
    (cal CalString)
  )


  (defun Caltext_Main ()
    (setq ssl (sslength sset)  nsset (ssadd))
    (while (> ssl 0)
      (setq tmp (ssname sset (setq ssl (1- ssl))))
      (if (= (cdr (assoc 0 (entget tmp))) “TEXT”)
        (ssadd tmp nsset)
      )
    )
    (setq ssl (sslength nsset)  sset nsset)
    (princ ssl)(princ ” text entities found. “)
    (if (> ssl 0)(progn
      (setq Caltxt (getstring T “nAdd. text: “))
      (if (and (/= (substr Caltxt 1 1) “-“)
               (/= (substr Caltxt 1 1) “*”)
               (/= (substr Caltxt 1 1) “/”)
          )
          (setq Caltxt (strcat “+” Caltxt))
      )
    ))
    (while (> ssl 0)
      (setq ent (entget (ssname sset (setq ssl (1- ssl)))))
      (setq nt (rtos (CalDist (strcat (cdr (assoc 1 ent)) Caltxt))))
      (if (> (strlen nt) 0)
        (entmod (subst (cons 1 nt) (assoc 1 ent) ent))
      )
    )
  )


  (setq olderr *error* *error* caltext_error)


  (if (null cal)
      (cond
        ((= (substr (getvar “ACADVER”) 1 2) “14”)(arxload “GEOMCAL”))
        (‘T (arxload “GEOMCAL”))
      )
  )


;  (princ “nCALTEXT 1.0  by Oh Gue Chul.  E-mail : gocad@chollian.net“)
;  (princ “nSelect text to calculate…”)
  (if (setq sset (ssget)) (Caltext_Main))
 
  (setq *error* olderr)
  (princ)
  (command “redraw”)
)


;(princ ”  TEXTCAL loaded.”)
;(princ)

  • 0
  • 64 조회
공유
  • Facebook

    관련 있는 질문들

    • insert 삽입할때 레이어도 같이 변경가능할까요?
    • 캐드 파일을 PDF로 변환 할 때 문제점 도와주세요 ㅠ
    • 질문오토캐드 라인타입이 너무 많은데 어떻게 정리하나요..
    • 질문오토캐드 라인타입이 너무 많은데 어떻게 정리하나요..

    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