nonoo님 전에 만들어주신 텍스트안의 숫자 뎃셈 리습인데요,,
저가 조금 수정했습니다..
덧셈할 숫자 입력 하고 텍스트 클릭하면 원하는 숫자만 덧셈 하는건뎅
제가 잘몰라서..;;; 두번씩 클릭 하게 되네용…ㅠㅠ
수정줌 부탁합니다..
덧셈 숫자 입력하고 여러개 문자 클릭 하면 바루 변환 하게좀,,;;;
(defun c:e66 ()
(vl-load-com)
(setq #a ‘(“X” . “(“));;리스트의 첫번째와 두번째사이의 숫자만연산
(setq #j (getreal “n더해질 값 지정: “))
(prompt “n≫≫≫덧셈할문자들을 선택:”)
(setq #b(ssget(list ‘(0 . “text”)'(-4 . “
‘(1 . “*#*”)
(cons 1(strcat “*”(cdr #a)”*”))
‘(-4 . “and>”)
)
)
)
(setq #index 0)
(repeat (sslength #b)
(setq #c(vla-get-textstring(vlax-ename->vla-object(ssname #b #index))))
(setq #d(vl-string-search (car #a) #c))
(setq #e(vl-string-search (cdr #a) #c))
(setq #f(atof(substr #c (+ #d 2) (- #e (1+ #d)))))
(setq #index(1+ #index))
(setq #g(- #f #j))
(if(zerop(rem #t(fix #g)))
(setq #g(itoa(fix #g)))
(setq #g(rtos #g))
);;if
(setq #h(vlax-ename->vla-object(car(entsel #c))))
(setq #c(vla-get-textstring #h))
(setq #d(vl-string-search (car #a) #c))
(setq #e(vl-string-search (cdr #a) #c))
(vla-put-textstring #h (strcat (substr #c 1 (1+ #d))#g(substr #c (1+ #e))))
)
);;defun