Jump to content

Recommended Posts

Posted

I ran into I strange one. I've never heard of an anonymous block until now. I find them to give me a headache.:(

The explanation on cadperson.net explained quite a bit but i have one they didn't cover or I'm just really confused. The one i got from a client is set up as *I1. The strangest thing is the fact that i can't do anything with it including but not limited to moving the darn thing. is there anyway to at least move it out of the way?

Posted

I believe I just encountered a similar situation that I solved using a lisp routine that renamed the anonymous block so I could get rid of it in a normal fashion. Unfortunately I'm not at the computer I downloaded the routine to. I can check on Wednesday though. Can you wait?

Posted

That's the lisp routine I was talking about! Unanon.lsp at draftsperson.net! Thanks Carl. Now I won't be racking my brain all night.

Posted

Isn't an anonymous blockname just a placeholder for a dynamic block with altered properties?

I was under the impression that acad creates an anonymous name for every changed dynamic block, when these blocks are deleted you can purge them from the drawing.

Posted

An anonymous block isn't necessarily always a dynamic block. It could also be a deleted dimension or table, for example

Posted

An anonymous block can take many forms. It is not limited to dynamic blocks. They have been around for many years.

Posted

Ok, thanks for clearing that up, i was not aware of that.

Posted

Here is a snippet that will convert any standard block to an anonymous block

 

Supply the ename of an existing INSERT entity

 

(defun anon (b / tdef en ed bn bd in)
 (and (= (type b) 'ENAME)
      (setq bd (entget b)
            in (cdr (assoc 2 bd))))
 (if (or (not bd)
         (not in)
         (/= "INSERT" (cdr (assoc 0 bd)))
         (= "*" (substr in 1 1))
         (= (logand (cdr (assoc 70 (tblsearch "BLOCK" in)))  4)  4)
         (= (logand (cdr (assoc 70 (tblsearch "BLOCK" in))) 16) 16)
         (= (logand (cdr (assoc 70 (tblsearch "BLOCK" in))) 32) 32))
      (progn
        (princ "*** Not A Changeable Block *** ")
        (setq bd nil in nil b nil)
        (exit)))
 (setq tdef (tblsearch "BLOCK" in)
         en (cdr (assoc -2 tdef))
         ed (entget en))
 (entmake (list (cons 0 "BLOCK")
                (cons 2 "*U")
                (cons 70 1)
                (cons 10 (cdr (assoc 10 tdef)))))
 (entmake ed)
 (while (setq en (entnext en))
        (setq ed (entget en))
        (entmake ed))
 (setq bn (entmake (list (cons 0 "ENDBLK"))))
 (setq bd (subst (cons 2 bn) (assoc 2 bd) bd))
 (entmod bd)
 (entupd b))

 

I use them regularly due to the fact that acad will never overwrite the block name.

 

I have no idea whether it will work with dynamic blocks but I would doubt it seriously. -David

Posted

CarlB/Remark,

Honestly i have all the time in the world. The file in question was a "Check & Sign" kind of deal. My conpany checks drawings and calculations for some one else and then stamps it with the apropriate state PE and signs it. In this case i was able to work around the blocks because i didn't have to change anything this time but the education of such a situation just can't be avoided.

 

I did read the small article on cadperson.net but it didn't mention what an "I" at the begining of the name signified. The lisp i will probably try today but i not sure i understand the block it self just yet. I'm going to keep looking. thanks for the piont in the right direction thiough guys.

Posted

The "I" could stand for just about anything. I fail to grasp the significance of "what" it stands for as far as what you want to do (i.e. - delete an anonymous block). Maybe it is just an Identifier for AutoCAD and nothing more. Would it make it any easier for you to delete the block if it was identified in a different manner?

 

And just what are you going to keep looking for? You've got me confused now as what you really want to do with this block. Care to elaborate?

Posted

Sure. The artcle Definded what each type was wheather it be a "U" or what ever, i was hoping to find a specific definition. In all actuality i'm just looking to understand them better so i can work with them in the future. By work with them i mean moving and manipulating them.

Posted

it is the * that makes them anonymous and while the letter appears to be significant it may not be consistant. It would appear that a dynamic block inserted as anything other than its default takes on a *U name as well as its generic name.

Posted

I think your right dbroada. Remark said the same. As soon as work clears up a bit i'm going to run that lisp and see what i can do about the whole thing. the more i understand about them the better.

Posted

Dave's explanation was clearer than mine. That's because he speaks "English" whilst I speak "Ameraglish".

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...