nonno님께서 올리신 문자열 변경을 응용해서 만들고 있습니다.
원본
(defun c:xx (/ #a #b #index)
(vl-load-com)
(setq #a(vla-get-textstring(vlax-ename->vla-object(car(entsel “n≫≫≫Sorce text:”)))))
(prompt “n≫≫≫Target texts↓”)
(setq #b(ssget ‘((0 . “text,mtext”))))
(setq #index 0)
(repeat (sslength #b)
(vla-put-textstring(vlax-ename->vla-object(ssname #b #index))#a)
(setq #index(1+ #index))
);;repeat
);;defun
응용

(defun c:cpp
(/ target index x_val y_val z_val total_val)
(vl-load-com)
(setq x_val (vla-get-textstring
(vlax-ename->vla-object
(car (entsel “nX값을 선택하세요!”)))))
(setq y_val (vla-get-textstring
(vlax-ename->vla-object
(car (entsel “nY값을 선택하세요!”)))))
(setq z_val (vla-get-textstring
(vlax-ename->vla-object
(car (entsel “nZ값을 선택하세요!”)))))
(setq total_val (strcat x_val ” X ” y_val ” X ” z_val))
(prompt “n변경할 문자열을 선택하세요!”)
원본
(defun c:xx (/ #a #b #index)
(vl-load-com)
(setq #a(vla-get-textstring(vlax-ename->vla-object(car(entsel “n≫≫≫Sorce text:”)))))
(prompt “n≫≫≫Target texts↓”)
(setq #b(ssget ‘((0 . “text,mtext”))))
(setq #index 0)
(repeat (sslength #b)
(vla-put-textstring(vlax-ename->vla-object(ssname #b #index))#a)
(setq #index(1+ #index))
);;repeat
);;defun
응용
(defun c:cpp
(/ target index x_val y_val z_val total_val)
(vl-load-com)
(setq x_val (vla-get-textstring
(vlax-ename->vla-object
(car (entsel “nX값을 선택하세요!”)))))
(setq y_val (vla-get-textstring
(vlax-ename->vla-object
(car (entsel “nY값을 선택하세요!”)))))
(setq z_val (vla-get-textstring
(vlax-ename->vla-object
(car (entsel “nZ값을 선택하세요!”)))))
(setq total_val (strcat x_val ” X ” y_val ” X ” z_val))
(prompt “n변경할 문자열을 선택하세요!”)
(setq target (ssget ‘((0 . “text,mtext”))))
(setq index 0)
(repeat (sslength target)
(vla-put-textstring
(vlax-ename->vla-object (ssname target index))
total_val
)
(setq index (1+ index))
)
)
—————
문제점:
치수는 MTEXT이고 대상은 TEXT라 이상한 글자가 나와요 A1;이런거 붙어서
혹시 안나오게 할수는 없을까요
아님 유사한 리습이라두 있으면 추천좀 부탁 드립니다.
리습 완전 초보가 짜집기 한거라 많이 엉성합니다.
질문:
그리고 위에 원본 소스에 #이 많이 붙어있는데 필요한건가요
vlax-ename->vla-object이런 명령어들은 어디서 찾아봐야하나요
초보라 어렵네요
(setq index 0)
(repeat (sslength target)
(vla-put-textstring
(vlax-ename->vla-object (ssname target index))
total_val
)
(setq index (1+ index))
)
)
—————
문제점:
치수는 MTEXT이고 대상은 TEXT라 이상한 글자가 나와요 A1;이런거 붙어서
혹시 안나오게 할수는 없을까요
아님 유사한 리습이라두 있으면 추천좀 부탁 드립니다.
리습 완전 초보가 짜집기 한거라 많이 엉성합니다.
질문:
그리고 위에 원본 소스에 #이 많이 붙어있는데 필요한건가요
vlax-ename->vla-object이런 명령어들은 어디서 찾아봐야하나요
초보라 어렵네요