프로그램
캐드 분류

리습 수정요청 드려 봅니다.

컨텐츠 정보

본문

인터넷에서 찾았습니다.
글자를 하나하나 클릭하면 숫자가 증가되면서 원본글자는 없어지는데요
원본글자를 살리면서 앞에 숫자가 입력됬으면 합니다.

숫자가써지고 한칸띄어서부터 원본글자를 살리고싶은데요.
현재는클릭해야 글자지정이 됩니다만 드레그해서 글자지정할수도 있으면 더 좋겠습니다.
너무 필요해서 새벽에 올려봅니다…….
 ㅠㅠㅠㅠ 
예)         SUS 2T 2EA  
               SUS 1T 9EA
                    SUS 5T 1EA

             위에글자를 하나하나 클릭하면

              01 SUS 2T 2EA  
               02 SUS 1T 9EA
                    03 SUS 5T 1EA         
                         
            이런식 입니다.  염치없지만 부탁드려 봅니다.
              유료라도 좋으니 댓글부탁드립니다.
  
;*************************순차적으로 숫자를 써줌********************* 


(defun c:qqq()
     (setq n (getint "nStarting number: "))
     (while (setq e (car(entsel "nSelect number to change..:")))
            (setq e (entget e))
            (setq nn (itoa n))
            (cond ((= 1 (strlen nn)) (setq nn (strcat "0″ nn)))
                  ((= 2 (strlen nn)) (setq nn (strcat "" nn)))
            )
            (setq old (assoc 1 e)
                  new (cons 1 nn)
            )
            (setq e (subst new old e))
            (entmod e)
            (setq n (1+ n))
    )
)
; *************************************************************************


(defun c:www()
     (setq n (getint "nStarting number: "))
     (while (setq e (car(entsel "nSelect number to change..:")))
            (setq e (entget e))
            (setq nn (itoa n))
            (cond ((= 1 (strlen nn)) (setq nn (strcat "00″ nn)))
                  ((= 2 (strlen nn)) (setq nn (strcat "0″ nn)))
                  ((= 3 (strlen nn)) (setq nn (strcat "" nn)))
            )
            (setq old (assoc 1 e)
                  new (cons 1 nn)
            )
            (setq e (subst new old e))
            (entmod e)
            (setq n (1+ n))
    )
)


; *************************************************************************
(defun c:wwww()
     (setq n (getint "nStarting number: "))
     (while (setq e (car(entsel "nSelect number to change..:")))
            (setq e (entget e))
            (setq nn (itoa n))
            (cond ((= 1 (strlen nn)) (setq nn (strcat "000″ nn)))
                  ((= 2 (strlen nn)) (setq nn (strcat "00″ nn)))
                  ((= 3 (strlen nn)) (setq nn (strcat "0″ nn)))
                  ((= 4 (strlen nn)) (setq nn (srrcat " " nn)))
            )
            (setq old (assoc 1 e)
                  new (cons 1 nn)
            )
            (setq e (subst new old e))
            (entmod e)
            (setq n (1+ n))
    )
)
; **********************************************************************
(defun c:w()
     (setq n (getint "nStarting number: "))
     (while (setq e (car(entsel "nSelect number to change..:")))
            (setq e (entget e))
            (setq nn (itoa n))
            (cond ((= 1 (strlen nn)) (setq nn (strcat "" nn)))
            )
            (setq old (assoc 1 e)
                  new (cons 1 nn)
            )
            (setq e (subst new old e))
            (entmod e)
            (setq n (1+ n))
    )
)
(VMON)

관련자료

댓글 7

수야12님의 댓글

ㅎㅎ 말씀만으로도 고맙습니다 이거 제가 가진 리습 복붙한거라 별로 노력한거도 없습니다 

재능기부 입니다 저도 언젠가 경안단초님 도움 받을 날도 있겠죠 

경안단초님의 댓글

너무너무 맘에들며 완벽합니다.. 처음시작할때 1 까지 나오니 더 편리하고 좋습니다. 최고십니다. 감사드립니다.. 조금이나마 사례를 하고싶습니다. 이메일 007bsc@naver.com 계좌번호 보내주세요.

수야12님의 댓글

애초에 리습 사용하는 이유가 빠른 작업 처리를 위해서인데 리습 명령치고 다음 옵션 넣고 또 넣고 하는 행동은 stupid~!!

경안단초님의 댓글

정말 감사드리며. 조금더 욕심내어 글 올려봅니다. 가능하다면 윗쪽이 아닌 왼쪽부터 숫자가 시작되면 더 좋겠습니다. 안되더라도 저는 완전히 좋습니다. 월요일 근무가 기대 됩니다.. 좋은 주말되세요…  

수야12님의 댓글

전체선택,단순 내림차순 정리 

(defun c:aa(/ n e nn ss L L1  )

수야12님의 댓글

문자 관련 리습엔 변수가 많습니다  전체 선택한다고 해서 님이 원하는 대로 결과가 나오지 않을 가능성이 있어요 만약 문자가 예를 드신거 처럼 위에서 부터 아래로 순차적으로 작성됐다면 정상 작동하지만 

중간에 문자를 옮기거나 지우고 다시 썼거나 하면 순서가 엉클어져요(캐드 리습 전체선택은 선택순이 아닌 캐드에 데이터가 생성된 순으로 작동합니다 그래서 보통 문자관련 리습은 전체를 한방에 교체하는 리습이 아니면 대체적으로 하나씩 클릭하게 돼있는겁니다 
여분필드1 여분필드2 여분필드3
전체 88 / 1 페이지
번호
제목
이름
알림 0