[IAD]하루님께서 올려주신 센터에 포인터 찍기를 응용해서
현재는 블록기준점에 글자를 넣는 리습입니다.
근데 문제는 제가 금형설계쪽에 일을하는데 치수기입(ordinate)시 원점을 자주 옮기는데
중간에 아래 리습을 사용하면 문자가 엉뚱한곳에 생성됩니다.
osmode처럼 중간에 저장했다가 리습끝나면 복귀해주는걸 추가하고 싶은데 잘 모르겠습니다.
아님 그냥 ucs가 어디에 있던 선택한 블록에 문자가 들어갈수 있도록 하는 방법은 없을까요?
부탁 드리겠습니다.
(defun c:cnn(/ os ss k ent elist cenp tum1)
;->*error* start
(defun *error* (msg)(princ “error: “)(princ msg)
(setvar “osmode” os)
(princ))
;-<*error* end
(setvar “cmdecho” 0)
(prompt “nTEXT를 입력하세요!”)
(setq tum1 (getstring))
(setq os (getvar “osmode”))
(setq ss (ssget ‘((0 . “INSERT”))))
(setq k 0)
(setvar “osmode” 0)
(command “undo” “be”)
(repeat (sslength ss)
(setq ent (ssname ss k))
(setq elist (entget ent))
(setq cenp (cdr (assoc 10 elist)))
(command “TEXT” “J” “MC” cenp “” “” tum1)
(setq k (1+ k))
);repeat
(command “undo” “e”)
(setvar “osmode” os)
(princ)
);defun
현재는 블록기준점에 글자를 넣는 리습입니다.
근데 문제는 제가 금형설계쪽에 일을하는데 치수기입(ordinate)시 원점을 자주 옮기는데
중간에 아래 리습을 사용하면 문자가 엉뚱한곳에 생성됩니다.
osmode처럼 중간에 저장했다가 리습끝나면 복귀해주는걸 추가하고 싶은데 잘 모르겠습니다.
아님 그냥 ucs가 어디에 있던 선택한 블록에 문자가 들어갈수 있도록 하는 방법은 없을까요?
부탁 드리겠습니다.
(defun c:cnn(/ os ss k ent elist cenp tum1)
;->*error* start
(defun *error* (msg)(princ “error: “)(princ msg)
(setvar “osmode” os)
(princ))
;-<*error* end
(setvar “cmdecho” 0)
(prompt “nTEXT를 입력하세요!”)
(setq tum1 (getstring))
(setq os (getvar “osmode”))
(setq ss (ssget ‘((0 . “INSERT”))))
(setq k 0)
(setvar “osmode” 0)
(command “undo” “be”)
(repeat (sslength ss)
(setq ent (ssname ss k))
(setq elist (entget ent))
(setq cenp (cdr (assoc 10 elist)))
(command “TEXT” “J” “MC” cenp “” “” tum1)
(setq k (1+ k))
);repeat
(command “undo” “e”)
(setvar “osmode” os)
(princ)
);defun