 - (defun emtxt (pt2 str2 /)
- (entmakex (list
- '(0 . "TEXT")
- '(100 . "AcDbEntity")
- '(8 . "0")
- '(100 . "AcDbText")
- ;'(7 . "tssd_rein")
- '(41 . 0.7)
- (cons 1 str2)
- (cons 10 pt2)
- (cons 40 3000)))
- )
- (defun c:tt(/ pt str en elist loop gr code data)
- (setq pt '(0 0 0))
- (setq str "文字")
- (setq en(emtxt pt str))
- (if en
- (progn
- (setq elist(entget en))
- (setq txtbox(textbox elist))
- (setq cen(mapcar '(lambda(x y)(* 0.5 (+ x y)))(car txtbox)(cadr txtbox)))
- (setq loop t)
- (while loop
- (setq gr(grread t 15 0))
- (setq code(car gr))
- (setq data(cadr gr))
- (cond
- ((= code 5)(setq pt(mapcar '- data cen)) (entmod(subst(cons 10 pt)(assoc 10 elist)elist)))
- ((= code 3)(setq loop nil) )
- ((= code 11)(setq loop nil) )
- ((= code 25)(setq loop nil) )
- )
- )
- )
- )
- )
|