;;ÅؽºÆ® À§Ä¡º¯µ¿¾øÀÌ ºÐ¸®Çϱâ...(¿øÇÏ´Â À§Ä¡ ¼±ÅÃ) (vl-load-com)
(defun c:tdv (/ entname ent entas1 stindex chkhan poslst poslst1 lot1 lot2 n nn TextBoxLst mLastText NewCons1 TextBoxLst- NewCons10 Nent kht10 new11) (setq entname (entsel "nºÐÇÒÇÒ ¹®ÀÚ¸¦ ¼±ÅÃÇϼ¼¿ä.")) (if entname (setq entname (car entname)) (exit)) (setq Ent (entget entname) EntAs1 (cdr (assoc 1 Ent)) stindex 0 chkhan 0 ) (setq poslst (apply 'append (mapcar '(lambda (x) (setq stindex (1+ stindex)) (if (or (> 128 x)(= 1 chkhan)) (progn (setq chkhan 0)(list stindex)) (progn (setq chkhan 1) nil) ) ) (vl-string->list entas1) ) ) ) (if (= lot11 nil) (setq lot11 1)) (if (= lot12 nil) (setq lot12 1)) (setq lot1 (getint (princ (strcat "rºÐÇÒÀ» ÇÏ·Á´Â ù¹ø° À§Ä¡¸¦ ÀÔ·Â Çϼ¼¿ä. <1-" (itoa (strlen entas1)) ">[" (itoa lot11) "] : ")))) (setq lot2 (getint (princ (strcat "rºÐÇÒÀ» ÇÏ·Á´Â µÎ¹ø° À§Ä¡¸¦ ÀÔ·Â Çϼ¼¿ä. <1-" (itoa (strlen entas1)) ">[" (itoa lot12) "] : ")))) (if (= lot11 0) (setq lot1 1)) (if (> lot12 (strlen entas1)) (setq lot2 (strlen entas1))) (if (= lot1 nil) (setq lot1 lot11 lot11 lot1) (setq lot11 lot1)) (if (= lot2 nil) (setq lot2 lot12 lot12 lot2) (setq lot12 lot2)) (setq poslst1 poslst) (if (> lot1 lot2) (progn (setq lot1 lot12) (setq lot2 lot11))) (if (and (> (strlen entas1) 2) (= lot1 1) (/= lot2 1)) (setq poslst1 (vl-remove 1 poslst1))) (if (> lot1 2) (progn (setq nn (- lot1 2)) (setq n 0) (setq poslst1 (vl-remove 1 poslst1)) (repeat nn (setq poslst1 (vl-remove (+ 1 n) poslst1)) (setq n (1+ n))))) (if (>= (abs (- lot2 lot1)) 1) (progn (setq nn (- lot2 lot1)) (setq n 0) (repeat nn (setq poslst1 (vl-remove (+ lot1 n) poslst1)) (setq n (1+ n))))) (if (< lot2 (strlen entas1)) (progn (setq nn (- (strlen entas1) lot2)) (setq n 1) (repeat (- nn 1) (setq poslst1 (vl-remove (+ lot2 n) poslst1)) (setq n (1+ n))))) (if poslst1 (progn (foreach m (mapcar '(lambda (x y) (cons (+ x (- y)) (substr EntAs1 1 x))) poslst1 (cons 0 poslst1)) (setq TextBoxLst (textbox (subst (cons 1 (cdr m)) (cons 1 EntAs1) Ent)) mLastText (substr (cdr m) (+ (strlen (cdr m)) 1 (- (car m)))) NewCons1 (cons 1 mLastText) TextBoxLst- (textbox (subst NewCons1 (cons 1 EntAs1) Ent)) NewCons10 (cons 10 (polar (cdr (assoc 10 Ent)) (cdr (assoc 50 Ent)) (- (caadr TextBoxLst) (caadr TextBoxLst-)))) Nent (subst (cons 11 (cdr NewCons10)) (assoc 11 ent) Ent) Nent (subst NewCons10 (assoc 10 nent) Nent) Nent (subst NewCons1 (cons 1 EntAs1) Nent) ) (entmake Nent) (setq kht10 (assoc 10 (entget (entlast)))) (setq new11 (list 11 (+ (cadr NewCons10) (- (cadr NewCons10) (cadr kht10))) (+ (caddr NewCons10) (- (caddr NewCons10) (caddr kht10))) 0)) (entmod (subst new11 (assoc 11 (entget (entlast))) (entget (entlast)))) ) (entdel entname))) (princ) ) |