비밀번호를 잊으셨나요?

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

계정이 있나요? 로그인

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 108574
다음
진행 중
Lv.0
등록일: 2017-06-232017-06-23T18:25:28+09:00 2017-06-23T18:25:28+09:00카테고리: AutoCAD & CADian

더하는 리습을 짜고 있습니다(독학중).

(defun c:sum()
 (setq ob (ssget))
 (setq n (sslength ob))
 (setq i 0)
 (while (< i n)
  (setq a (cdr (assoc 1 (entget (ssname ob i)))))
 (princ a)
 (setq i (+ 1 i))
 )
)

제목 그대로 더하기 리습입니다.

어찌어찌 해서 문자(값)에 대한 숫자를 추출했는데

2개 이상일 때 더하는걸 어떻게 적용을 해야 하는건가요…

아직 너무 초급 단계라.. 처음부터 잘못된건가요?

  • 0
  • 4 4 답변
  • 13 조회
공유
  • Facebook

    관련 있는 질문들

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

    4 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. 수야12 Lv.21
      2017-06-26T10:44:28+09:00답변 등록 답변 등록 일시 2017-06-26 10:44 am
      (defun c:sum(/ ob n sum i num sum str);변수는 특별한 경우가아니면 지역변수로 등록하세요 나중에 사용하는 리습이 
                                            ;; 늘어나면 변수끼리 충돌예방이 됩니다 .
       (setq ob (ssget))
       (setq n (sslength ob) sum 0)
       (setq i 0)
       (while (< i n)
        (setq a (cdr (assoc 1 (entget (ssname ob i)))))
        (setq num(atof a)) ;문자를 실수로 변환 ; atoi 문자를 정수로변환 
        (setq sum(+ sum num)) ;sum에 더하기 
        (setq i (+ 1 i))
       )
       (setq str(rtos sum 2 1)) ;결과값을(실수 또는 정수) 문자로 변환 ;
       (command “_Text” (getpoint “n문자위치 선택:”) “” “” str )
       (princ)
      )
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    3. [Deleted User]
      2017-06-26T14:44:05+09:00답변 등록 답변 등록 일시 2017-06-26 2:44 pm

      좋은 말씀 감사드립니다.

      변수가 똑같으면 충돌이 되는지는 몰랐습니다.

      지금 테스트 해보니 아주 잘됩니다.

      다만 여러줄 문자의 경우는 숫자로 인식이 안되서 그런지 제외되더군요..

      여러줄 문자의 경우 MTEXT라고 알고 있는데 여러줄 문자에도 숫자가 들어가 있으면

      더해주는 명령어는 없는지요?

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    4. 수야12 Lv.21
      2017-06-27T07:25:03+09:00답변 등록 답변 등록 일시 2017-06-27 7:25 am
      왜 안되는지는 돌김님이 만드신 코드로 출력해보시면 알겁니다 atof나atoi는 문자내용이 “숫자형식”으로
      돼있어야 한답니다  eg. “1234” 이런식은 ok~!!  “a1234” 이런형식은 No~!!

      여러줄 문자 같은경우는 사용자 마다 양식이 다르기 때문에 사용자 양식에 맞춘 코드를 짜야 합니다 

      그래서 보통 사용자들이 특정한 조건을 얘기 하시고 그것에 맞춰서 만들어 달라고 요청하는 경우가 
      많죠.. 가령 3줄 문자인데 가운데 줄의 숫자를 바꾸고 싶다거나 하는식으로  
      독학(물론 거의 대부분 독학이시지만 ^^)하신다면 일단 리습관련 커뮤니티를 추천드립니다  사이트 광고가 될수도 있으니 
      쪽지주시면 알려 드리겠습니다 보통 이곳 고캐드에서 활동하시는 분이 그곳에서도 활동하시는데 
      일단 그곳은 리습강좌와 리습이 정리 돼있어서 초보들 연구하기에 좋습니다 
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    5. [Deleted User]
      2017-06-28T08:26:02+09:00답변 등록 답변 등록 일시 2017-06-28 8:26 am

      리습관련 커뮤니티는 몇군데 알고 있긴 합니다.

      그래도 혹시 모르니 쪽지 좀 부탁드리겠습니다.

      여러줄 문자는 말씀하신대로 a1234라고 하면 1234만 인식하게끔 할 예정입니다.

      제가 쓰고 있는 여러줄 문자들은 속성만 여러줄문자이며 실제로는 1줄로 사용되고 있습니다.

      좋은 정보 감사드립니다!!

      • 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