(defun c:ts (/ z ss sno no tno sum x entity etype num h pt)
(setvar “cmdecho” 0)
(prompt “nSelect Text: “)
(setq ss (ssget))
(setq sno (sslength ss))
(setq no 0)
(setq sum 0.0)
(setq tno 0)
(repeat sno
(setq x (ssname ss no))
(setq etype (cdr (assoc 0 (entget x))))
(if (= etype “TEXT”)
(progn
(setq entity (entget x))
(setq num (cdr (assoc 1 entity)))
(setq num (atof num))
(setq sum (+ sum num))
(setq tno (1+ tno))
)
)
(setq no (1+ no))
)
(setq tno (itoa tno))
(setq sum (rtos sum 2 0))
(princ “nAdding “)
(princ tno)
(princ ” nTexts: “)
(princ “nThe Result is: “)
(princ sum)
(princ ” “)
;; (princ “nDo You Want Write it into the DWG? <y> “)
;; (setq z (strcase (getstring)))
;; (if (or (= z “”) (= z “Y”))
;; (progn
(setq pt (getpoint “nText Point: “))
(setq h (getvar “textsize”))
;; (prompt “nText Height: “)
;; (princ H)
;; (princ ” : “)
;; (setq z (getdist))
;; (if z
;; (setq h z)
;; )
(command “text” “j” “R” PT h “” sum)
;; )
;; )
;; )
(setvar “cmdecho” 1)
(setvar “blipmode” 1)
(prin1)
)
안녕하세요 !
제가 쓰는 텍스트합산 리습입니다 여기서 클자 크기를 약 높이2 정도로 조정하고싶습니다 ㅠㅠ
캐드화면상에 클자 크기가 너무 크게 나옵니다
고수님들 도움 부탁드립니다 !!
공유
(setq h (getvar “textsize”))
여기서 캐드에 설정된 문자 높이 값을 그대로 가져오네요.
그냥
(command “text” “j” “R” PT 2 “” sum)
이렇게 바로 2라고 입력하면 됩니다.
khann님 정말 감사합니다 ! 바로 해결됬습니다 감사드립니다 !
혹시 이번엔 ds 길이한산 리습인데 크기가 너무 큽니다
이것도높이 2정도로 조절하고싶은데 도움 부탁드립니다 ㅠ
(DEFUN C:ds(/ eg egl n l ne entname entn p1 p2 l2 radi l_ength)
(SETVAR “cmdecho” 0)
(SETQ EG (SSGET))
(SETQ EGL (SSLENGTH EG))
(SETQ N 0)
(setq l 0)
(setq ne 0)
(WHILE (< N EGL)
(SETQ ENTN (SSNAME EG N))
(SETQ ENT (ENTGET ENTN))
(setq entname (assoc 0 ent))
(setq entname (cdr entname))
(if (= entname “LINE”)
(progn
(SETQ p1 (ASSOC 10 ENT))
(SETQ p2 (ASSOC 11 ENT))
(SETQ p1x (car (CDR p1)))
(SETQ p1y (CaDdR p1))
(SETQ p2x (car (CDR p2)))
(SETQ p2y (CaDdR p2))
(setq l2 (sqrt (+ (expt (- p1x p2x) 2) (expt (- p1y p2y) 2))))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(if (= entname “CIRCLE”)
(progn
(SETQ p1 (ASSOC 40 ENT))
(SETQ radi (cdr p1))
(setq l2 (* 2 (* pi radi)))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(if (= entname “ARC”)
(progn
(SETQ p1 (ASSOC 40 ENT))
(SETQ radi (cdr p1))
(SETQ p1 (ASSOC 50 ENT))
(SETQ p2 (ASSOC 51 ENT))
(SETQ p1R (CDR p1))
(SETQ p2R (CDR p2))
(SETQ TH (ABS (- P1R P2R)))
(setq l2 (* RADI TH))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(if (or (= entname “LWPOLYLINE”)(= entname “POLYLINE”))
(progn
(command “area” “e” entn)
(setq l2 (getvar “perimeter”))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(SETQ N (+ 1 N))
)
(princ “n >>>>> “)
(if (> egl ne)
(progn
(princ ne)(princ ” of “)(princ egl)
(princ ” objects are measured // “)
)
)
(princ ” Total length is “)
(setq l_ength (rtos (/ l 1) 2 0))
(prin1 l_ength)
(setq pt (getpoint “nText Point: “))
(setq h (getvar “textsize”))
(prompt “nText Height: 2”)
(princ H)
(princ ” : “)
(setq z (getdist))
(if z
(setq h z)
)
(command “text”
(setq z pt)
(setq z h)
(setq z 0.0)
(setq z l_ength)
)
(setvar “cmdecho” 1)
(setvar “blipmode” 1)
(princ)
)
(DEFUN C:ㅇㄴ(/ eg egl n l ne entname entn p1 p2 l2 radi l_ength)
(SETVAR “cmdecho” 0)
(SETQ EG (SSGET))
(SETQ EGL (SSLENGTH EG))
(SETQ N 0)
(setq l 0)
(setq ne 0)
(WHILE (< N EGL)
(SETQ ENTN (SSNAME EG N))
(SETQ ENT (ENTGET ENTN))
(setq entname (assoc 0 ent))
(setq entname (cdr entname))
(if (= entname “LINE”)
(progn
(SETQ p1 (ASSOC 10 ENT))
(SETQ p2 (ASSOC 11 ENT))
(SETQ p1x (car (CDR p1)))
(SETQ p1y (CaDdR p1))
(SETQ p2x (car (CDR p2)))
(SETQ p2y (CaDdR p2))
(setq l2 (sqrt (+ (expt (- p1x p2x) 2) (expt (- p1y p2y) 2))))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(if (= entname “CIRCLE”)
(progn
(SETQ p1 (ASSOC 40 ENT))
(SETQ radi (cdr p1))
(setq l2 (* 2 (* pi radi)))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(if (= entname “ARC”)
(progn
(SETQ p1 (ASSOC 40 ENT))
(SETQ radi (cdr p1))
(SETQ p1 (ASSOC 50 ENT))
(SETQ p2 (ASSOC 51 ENT))
(SETQ p1R (CDR p1))
(SETQ p2R (CDR p2))
(SETQ TH (ABS (- P1R P2R)))
(setq l2 (* RADI TH))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(if (or (= entname “LWPOLYLINE”)(= entname “POLYLINE”))
(progn
(command “area” “e” entn)
(setq l2 (getvar “perimeter”))
(setq l (+ l l2))
(setq ne (+ ne 1))
)
)
(SETQ N (+ 1 N))
)
(princ “n >>>>> “)
(if (> egl ne)
(progn
(princ ne)(princ ” of “)(princ egl)
(princ ” objects are measured // “)
)
)
(princ ” Total length is “)
(setq l_ength (rtos (/ l 1) 2 2))
(prin1 l_ength)
(setq pt (getpoint “nText Point: “))
(setq h (getvar “textsize”))
(prompt “nText Height: 2 “)
(princ H)
(princ ” : “)
(setq z (getdist))
(if z
(setq h z)
)
(command “text” “j” “R” PT 2 “” sum)
(setq z pt)
(setq z h)
(setq z 0.0)
(setq z l_ength)
)
(setvar “cmdecho” 1)
(setvar “blipmode” 1)
(princ)
)