You are here:

AutoCAD/Block won't show up on it's layer.

Advertisement


Question
I have a drawing with multiple layers depicting several different configurations of a structure.  On one layer, I created a block.  Then I realized I needed this block on another layer as well.

I used the Express tools to "Copy to new layer." That seemed to go well.  But when I turned off the original layer and turned on the layer I wished the block to appear on, it wasn't there.  Went bakc to the original layer, listed entities by crosssing window (it found 2), and got this:

BLOCK REFERENCE  Layer: "teloc"
                           Space: Model space
                  Handle = 9ef
      Block Name: "stick"

<snip><snip>

BLOCK REFERENCE  Layer: "eemod"
                           Space: Model space
                  Handle = 5f8
      Block Name: "stick"

-----

So as you can see, the blocks are assigned to two different layers, but are being drawn only on the original layer.

Back in the day, I did a fair amount of LISP programming, and understand the concept of the database fairly well (I think) but this doens't make any sense to me.

Current version is Autocad Mechanical 2006 Service Pack 0.

Thanks for any help you can provide.

Answer
The objects that you put within the block, should be placed on layer "0".  If you do that, then whatever layer you place the block on, it will take on the properties of that layer as long as each of the nested objects are of the color "bylayer".  I believe that their color properties are already "bylayer", so probably all you have to do is to remake the blocks with the objects on the 0 layer. If you look on my website under the AutoLISP and VLISP section, you will find a routine that redefines your block for you with all the objects within placed on layer "0".  The name of the routine is called BF0.lsp.  You place it in your working folder or a folder in the Support File Search Path.  Then you type:
(load "bf0")
and remember that's a zero - not letter "o".

Then you type:
BF0
select a block and VOILÁ.  It´s fixed.  If for some odd reason it doesn't work, do a follow-up message on this forum and let me know.  

And please!  Unless there is a REAL GOOD reason for putting objects in blocks on a layer other than "0", then don't.  Let "0" be the default layer for EVERYTHING in a block.

Keep in touch
Bill DeShawn
http://my.sterling.net/~bdeshawn  

AutoCAD

All Answers


Answers by Expert:


Ask Experts

Volunteer


Bill DeShawn

Expertise

I can address all 2-D questions and some 3-D questions. I do programming in AutoLISP if it doesn`t involve solid modeling. I can also address menu customization issues and can help you find answers to questions I can`t answer by taking your question directly to Autodesk via their newsgroups.

Experience

I used to do electronic and mechanical design for a flat panel monitor manufacturer, and now I do architectural drafting for an architect. I did and do AutoLISP and menu customization and take pride in making my lisp routines to do the work exactly the way the client likes them done.

Publications
I had a routine published in CADENCE magazine (no longer in publication and taken over by CADALYST). Some of my routines are published on my website at http://my.sterling.net/~bdeshawn

©2012 About.com, a part of The New York Times Company. All rights reserved.