제가 업무상 기계설비를 하다보니 더하기 할때가 많습니다
어디선가 구해서 잘 쓰고 있는데.. 아쉬운 점이 있어 도움을 구합니다
덧샘 리습으로 키는 + 입니다
계산결과 나오고 다시 실행할때는 또
+키를 눌러야 합니다.. 엔터나 스페이스 바 다시 누르고 실행하는 방법은 없을까요?
그리고 계산 결과 나오는 Text의 기준점은 오른쪽하단이며 오른쪽 정렬로 되어 있습니다
이것을 기준점을 왼쪽 하단으로 하고 왼쪽으로 정렬 할 수 있는 방법이 있을까요?
Text의 기준점은 왼쪽하단으로 할 수 있으면 더 편할것 같습니다
도움 부탁드리며 좋은하루 되세요
리습내용 올립니다
(DEFUN C:+(/ z ss sno no tno sum x entity etype num h pt cc ly te hh dz)
;->*error* start
(defun *error* (msg)(princ “error: “)(princ msg)
(setvar “osmode” os)(setvar “blipmode” bl)(setvar “dimzin” dz)
(princ))
;-<*error* end
(SETVAR “CMDECHO” 0)
; (setq nd (getint “n>>>Number of digits to right of decimal point(0-8) : “))
(prompt “n>>> 숫자 더하기….”)
(setq dz (getvar “dimzin”) os (getvar “osmode”) bl (getvar “blipmode”))
(setvar “dimzin” 0) ; 소수점이하 “0”을 표현함.
(setq nd 0)
(prompt “n……Select 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 nd))
(setq pt (getpoint “n>>> Text Point : “))
(setq cc (getvar “clayer”))
(setq ly (tblsearch “layer” “9_TEXT”)) ;”레이어를 검색 없으면 레이어 생성
(if (= ly nil) (command “-layer” “m” “9_text” “c” “161” “” “l” “continuous” “” “”)
)
(setvar “clayer” “9_text”) ;<= 현재 레이어를 변경한다.
(setq te (tblsearch “style” “HY울릉도L”)) ;”style을 검색 없으면 style 생성
(if te (progn
(command “-style” “HY울릉도L” “H2WULL.TTF” “0” “1” “0” “n” “n”)
))
(SETQ Hh (GETVAR “LTSCALE”))
(setq h (* hh 3))
(SETQ H (GETVAR “TEXTSIZE”))
(prompt “n>>> Text Height <“)
(princ H)
(princ “> : “)
(setq Z (getdist))
(if Z
(setq H Z)
)
(COMMAND “TEXT” “J” “R”
(SETQ Z PT)
(SETQ Z H)
(SETQ Z 0.0)
(SETQ Z sum)
)
(setvar “clayer” cc)
(setvar “osmode” os)(setvar “blipmode” bl)
(setvar “dimzin” dz)
(PRIN1)
)
공유
가르쳐 준대로했더니 ..잘됩니다….
제가 다른리습 열어서 텍스트 지점 뭔지 찾아 봤더니 잘 모르겠더라구요…
+ 키만 누르는 것은 그냥 바꿀게요…ㅋㅋ
고맙습니다.. 잘 쓰겠습니다