두점사이의 수평거리를 재서 텍스트 수정하는 리습입니다.
이것을 수평거리가 아닌 수직거리로 바꿀수 있나요?
(DEFUN C:dx()
(setq dit 0)
(setq dt “T”)
(command “osnap” “end,int”)
(setq text_high 10.0
scale 5.0
)
(graphscr)
;(redraw)
(graphscr)
(setvar “CMDECHO” 0)
(setvar “aperture” 5)
(while (= dt “T”)
(setq po1 (getpoint “n 첫번째 점을 선택하세요. “))
(setq po2 (getpoint “n 두번째 점을 선택하세요. “))
(setq po1x (car po1))
(setq po2x (car po2))
(if (> po1x po2x) (setq ditk (- po1x po2x)) (setq ditk (- po2x po1x)))
(setq dit (+ ditk dit))
(initget 2 “t T n N”)
(setq dt (getkword “n 계속 입력하시겠습니까? <N> “))
(if (= dt nil) (setq dt “N”))
(setq dt (strcase dt))
(prompt dt)
)
(command “osnap” “none”)
(setq ddd (rtos (/ dit 1.0) 2 2))
(princ “n 총 길이 = “)
(princ ddd)
(princ “n”)
(initget 2 “t T n N”)
(prompt “변경할 문자열를 선택하세요:”)(terpri)
(setq ent1 (entsel))
(setq a1 (entget (car ent1)))
(setq txt1 (assoc 1 a1))
(prompt (cdr txt1))(terpri)
(setq a2 (subst (cons (car txt1) ddd) txt1 a1))
(entmod a2)
(command “osnap” “end,int”)
)
상큼매론님 감사합니다…