Deleting Non Display Attribute

Deleting Non Display Attribute

davidEPN6Z
New Member New Member
147 Views
6 Replies
Message 1 of 7

Deleting Non Display Attribute

davidEPN6Z
New Member
New Member

How can I delet all the non display attribute in a dynamic block using LISP or other script.

0 Likes
Accepted solutions (1)
148 Views
6 Replies
Replies (6)
Message 2 of 7

komondormrex
Mentor
Mentor

check this one. deletes all invisible attributes in a selected dynamic block.

(defun c:delete_invisible_atts (/ dyn_block count)
  (setq count 0)
  (vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
  (setq dyn_block (vlax-ename->vla-object (car (entsel "\nSelect dynamic block with invisible attributes: "))))
  (if (minusp (vlax-get dyn_block 'isdynamicblock))
    (vlax-map-collection (vla-item (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) (vla-get-effectivename dyn_block))
      '(lambda (object)
        (and (= "AcDbAttributeDefinition" (vla-get-objectname object))
           (or (minusp (vlax-get object 'invisible))
             (zerop (vlax-get object 'visible))
           )
           (null (vla-erase object))
           (setq count (1+ count))
           (command "_attsync" "_n" (vla-get-effectivename dyn_block))
         )
       )
    )
  )
  (princ (strcat "\n" (itoa count) " deleted"))
  (vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
  (princ)
)
0 Likes
Message 3 of 7

davidEPN6Z
New Member
New Member

Thanks. Is this going also to delete visible attribute that are not display on the drawing because visabiliy state. I need to delete those attribut too. 

0 Likes
Message 4 of 7

komondormrex
Mentor
Mentor

modified to delete both. 

0 Likes
Message 5 of 7

davidEPN6Z
New Member
New Member

I don't see the modified script.  The first one delete all invisble attribute but leaves the visibel one that not display (because of visbility state) intake.

0 Likes
Message 6 of 7

komondormrex
Mentor
Mentor

 it is in message 2.

0 Likes
Message 7 of 7

davidEPN6Z
New Member
New Member
Accepted solution

Thank you Its working perfect.

0 Likes