你好
试试这个程序;
查看视频=>视频
- (defun c:GridNum (/ ss i l p lst a b n)
- (if (setq ss (ssget '((0 . "LINE"))))
- (progn
- (repeat (setq i (sslength ss))
- (setq
- l (cons (vlax-ename->vla-object (ssname ss (setq i (1- i))))
- l
- )
- )
- )
- (foreach x l
- (foreach o l
- (and (setq p (vlax-invoke x 'intersectwith o AcExtendNone))
- (setq lst (cons p lst))
- (setq l (vl-remove x l))
- )
- )
- )
- (setq a (vl-sort lst '(lambda (j k) (< (car j) (car k))))
- b (vl-sort a '(lambda (j k) (> (cadr j) (cadr k))))
- n 0
- )
- (mapcar '(lambda (x)
- (entmake
- (list '(0 . "TEXT")
- (cons 10 x)
- (cons 11 x)
- (cons 1 (itoa (setq n (1+ n))))
- (cons 40 (getvar 'TEXTSIZE))
- '(71 . 0)
- '(72 . 1)
- '(73 . 2)
- )
- )
- )
- b
- )
- )
- )
- (princ)
- )(vl-load-com)
|