欢迎来到CADTutor
试试这段代码,它应该处理块,让我知道你会如何处理它。
注意:如果文字高度不适合您,您可以将其从1更改为代码中所示的高度。
- (defun c:Test (/ ss pt i sn p l lst n)
- (if (and (setq ss (ssget '((0 . "INSERT"))))
- (setq pt (getpoint "\n Specify Center point :"))
- )
- (progn
- (repeat (setq i (sslength ss))
- (setq sn (ssname ss (setq i (1- i)))
- p (cdr (assoc 10 (entget sn)))
- l (cons (list (distance pt p) p) l)
- )
- )
- (setq lst (vl-sort l (function (lambda (j k) (< (car j) (car k)))))
- n 0
- )
- (foreach x lst
- (entmakex (list '(0 . "TEXT")
- (cons 10 (cadr x))
- (cons 11 (cadr x))
- (cons 1 (itoa (setq n (1+ n))))
- (cons 40 1.0) ; Text height
- )
- )
- )
- )
- )
- (princ)
- )
|