Visual LISP, AutoLISP and General Customization
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Convert Attribute Tag Into Attribute Value

3 REPLIES 3
SOLVED
Reply
Message 1 of 4
MontgomeryRoth
947 Views, 3 Replies

Convert Attribute Tag Into Attribute Value

AutoLISP Experience: Minimal

 

Background: Someone exploded an attribute block and copied it hundreds of times throughout a project, each time changing the Attribute Tag to match the Value they expected to appear in their drawing.  The drawing must be xrefed, so the attribute definitions do not appear.

(There is only 1 attribute in the block.)

 

 

Proposed Solutions:

 

1:AutoLISP routine which copies Tag data from Attribute Definition into Value of Attribute Block:

Prompt-Select Attribute Definition

Copy Tag data

Prompt-Select Attribute Block

Paste data into Value

(Allow repeat to speed workflow)(*PREFERRED*)

 

2:AutoLISP routine which copies Tag data from Attribute Definition into Default Value and creates a new Block:

Prompt-Select Attribute Definition

Copy Tag data

Paste data into Default Value

Create New Block

(Select Multiple Objects)(Creates tons of new blocks which are messy)

 

3 REPLIES 3
Message 2 of 4
_Tharwat
in reply to: MontgomeryRoth

This would help you with the first part of your request ...

 

(defun c:TesT (/ attributeDefinition attent ss i n e)
  ;; Tharwat 08. Dec. 2011 ;;
  (if
    (and (setq attributeDefinition
                (car
                  (entsel "\n Select Attribute definition :"
                  )
                )
         )
         (eq (cdr (assoc 0 (setq attent (entget attributeDefinition))))
             "ATTDEF"
         )
         (progn (prompt "\n Select Attributed Blocks ")
                (setq ss (ssget "_:L" '((0 . "INSERT") (66 . 1))))
         )
    )
     (repeat (setq i (sslength ss))
       (setq n (entnext (ssname ss (setq i (1- i)))))
       (while
         (not
           (eq (cdr (assoc 0 (setq e (entget n))))
               "SEQEND"
           )
         )
          (entmod
            (subst (cons 1 (cdr (assoc 2 attent))) (assoc 1 e) e)
          )
          (setq n (entnext n))
       )
     )
  )
  (princ)
)

 

Message 3 of 4
MontgomeryRoth
in reply to: _Tharwat

Thanks so much, this worked great!

You probably cut our repair time down to a quarter of what it would have been or better.

Exactly what we were looking for.

Message 4 of 4
_Tharwat
in reply to: MontgomeryRoth


@MontgomeryRoth wrote:

Thanks so much, this worked great!

You probably cut our repair time down to a quarter of what it would have been or better.

Exactly what we were looking for.


You're welcome . Smiley Happy

 

I am glad to hear that .

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report

”Boost