비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 108741
다음
진행 중
Lv.0
등록일: 2017-08-072017-08-07T15:02:23+09:00 2017-08-07T15:02:23+09:00카테고리: AutoCAD & CADian

더하기 리습입니다. 수정이나 코멘트 좀 부탁드려요.

(defun c:++(/ ob n i a sum num t1 t2)
 (setq ob (ssget ‘((0 . “TEXT”))))
 (setq n (sslength ob))
 (setq i 0)
 (setq sum 0)
 (setq t2 (cdr (assoc 40 (entget (ssname ob 0)))))
 (while (< i n)
  (setq a (cdr (assoc 1 (entget (ssname ob i)))))
  (setq num (atof a))
  (setq sum (+ sum num))
  (setq i (+ 1 i))
 );while
(setq t1 (rtos sum 2 5))
(command “Text”(getpoint “n 지점 선택”) t2 “” t1)
(princ)
)
더하는 리습입니다.
몇가지 부족한 부분들이 있어서요..

1. 먼저 캐드에서 예를 들어 3이란 숫자와 3,000이라는 숫자를 더하면 3,003이 나와야하는데
6.00000이 나옵니다. 자리수를 뜻하는 “,”가 영향이 있어요. 3,003이 나오게 할려면 어떻게 하는지..

2. MTEXT에 들어가 있는 숫자도 인식할 수 있게도 가능한가요?
이것도 예를 들면 “3(TEXT)” + “3(MTEXT)” -> 6이 나오게 하고 싶습니다.

3. “++”라는 명령어로 “3” + “3” = 6이라는 결과를 얻고, 다시 enter(space)를 눌러 재명령을 하면
6이 다시 입력이 됩니다. 왜 그런건지.. 그리고 다시 enter(space)를 누르면 재명령이 안됩니다.
.. 고수님들 한수 부탁드립니다!

  • 0
  • 2 2 답변
  • 18 조회
공유
  • Facebook

    관련 있는 질문들

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

    2 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. 수야12 Lv.21
      2017-08-08T07:56:11+09:00답변 등록 답변 등록 일시 2017-08-08 7:56 am

      1. 컴마가 있을수도 있고 없을수도 있는 경우의 수가 있네요  컴마있는수과 없는수의 더하기

         컴마없는 수들만의 더하기 결과값은 컴마를 넣을것인가 안넣을것인가에 따른 결과값변화..

      2. mtext 여러행 문자일때 어떤행의 문자를 기준으로 할것인가란 문제발생및 여러경우의수 있슴.
      3. 마우스 오른키 클릭으로 진행하시면 정상작동합니다  마지막문자 선택된다는것은 
         캐드 순수기능인 “Text”로 인한 현상입니다 마지막 문자가 활성화만 될뿐 선택된것은 아니네요
      1번 문제는 제가 올린 리습에 컴마넣기 리습을 짜깁기 하시면 해결될듯(구글 검색추천)
      2번 문제 순수 한줄 문자라면  (setq ob (ssget ‘((0 . “*TEXT”)))) 이렇게 하시면 됩니다 

      가장 기본틀만 만들었습니다 나머지는 돌김님께서 공부겸 추가하세요 ^^;; 

      (defun c:++(/ ob n i a sum num t1 t2)
       (setq ob (ssget ‘((0 . “TEXT”))))
       (setq n (sslength ob))
       (setq i 0)
       (setq sum 0)
       (setq t2 (cdr (assoc 40 (entget (ssname ob 0)))))
       (while (< i n)
        (setq a (cdr (assoc 1 (entget (ssname ob i)))))
        (setq a(_PureNo a))
        (setq num (atof a))
        (setq sum (+ sum num))
        (setq i (+ 1 i))
       );while
      (setq t1 (rtos sum 2 5))
      (command “Text”(getpoint “n 지점 선택”) t2 “” t1)
      (princ)
      )
      (defun _PureNo(str / len st1 n temp)
         (setq len (strlen str))
         (setq st1 “”)
         (setq n 1)
         (while (>= len n)
            (setq temp (substr str n 1))
            (if (<= 48 (ascii temp) 57)
               (setq st1(strcat st1 temp))
            )
            (setq n (+ n 1))
         )
         st1
       ) 


      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    3. [Deleted User]
      2017-08-09T10:09:35+09:00답변 등록 답변 등록 일시 2017-08-09 10:09 am

      제가 모르는 방식의 함수들이 추가되었네요.

      공부 열심히 하겠습니다.

      조언 감사드립니다!

      • 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