- (defun C:test ( / spc SS attr i o p ll ur )
- (vl-every 'eval
- '(
- (setq spc (vla-get-Block (vla-get-ActiveLayout (vla-get-ActiveDocument (vlax-get-acad-object)))))
- (princ "\nSelect hatches to insert "LNAME" block on their centroids.")
- (setq SS (ssget '((0 . "HATCH")(2 . "SOLID")(8 . "L1,L2,L3,L4,L5"))))
- (setq attr (getvar 'attreq)) (setvar 'attreq 0)
- (progn
- (repeat (setq i (sslength SS))
- (vla-GetBoundingBox (setq o (vlax-ename->vla-object (ssname SS (setq i (1- i))))) 'll 'ur)
- (setq p (apply 'mapcar (cons '(lambda (a b) (/ (+ a b) 2.)) (mapcar 'vlax-safearray->list (list ll ur))))) ; LM
- (vla-put-Layer (vlax-invoke spc 'InsertBlock p "LNAME" 1.0 1.0 1.0 0.0) (vla-get-Layer o))
- )
- (setvar 'attreq attr)
- )
- )
- )
- (princ)
- ) (vl-load-com) (princ)
|