I think I already know the answer to this but I'll ask anyway.
After all this time is there a way to assign layers to different objects with a block? Perhaps using Visibility states or Lookups?
As an example:
I have a dynamic block with a door swing and text. As I increase the size of the door the text changes to reflect door size. The objects are all on the 0 Layer. When I insert the block I can assign a 'Text A' Layer to the text and a 'Door A' layer to the door. So when I switch layer states around I will either see the door, the text or both. Then I move to the second floor which has been stacked on the first floor. I insert my DB and assign layers 'Text B' and 'Door B' respectively to the text and door.
Finally when I go to my layer states I either select 'First Floor' or 'Second Floor' and the respective blocks appear depending on the layer state.
I've toyed around quite a bit but I can't seem to find an elegant solution nor am I a whiz at DB. I'm hoping that there's a way to do this, but judging from some of the similar requests I've read there's not. Thank you!
Your description is very clear and from the sound of it, works for what you are doing. You are correct there is no way to manipulate layers in blocks dynamically, you could put items on different layers in the block and swap between them with a visability state, but it is always recomended to use layer 0 for block items, and you will still have to alter your layer states to get any benefit. An idea springs to mind, you could create a nested block for each building layer and have that turned on and off with a visibility state. or save each floor as it is created into seperate drawings and then x-ref them into a master drawing and make the xrefs into blocks, which is more work but also user friendly and elegant.
Thank you for the thoughtful response.
I like the idea of using Xrefs and a master file. And I think you're right that it might give me the kind of solution I'm looking for. Unfortunately I don't have the time or fortitude to completely reconstruct how we manage or CAD standards and file management.
I've only been doing dynamic blocks for a few months now and I recently stumbled upon visibility stats and realized that maybe I can manage layers within blocks this way as well. I think visibility states might work, but I'm not sure it would be any more efficient than how we currently add and manage text to doors and windows. Plus it seems to have certain limitations that might be hard to manage. Is there a way for Layer States or Viewport visibility to turn on and off DB visibility states? If so, that might just work! But I don't think it's possible... is it?
No, that level of programming OOTB is not available.
That is not to say it cannot be done though.
Someone may have a Lisp routine that does just such a thing.
You woul need to hunt for such a beast though.
Regards, Charles Shade
CSHADEDESIGN | AUTOCAD LT | LT-KB | DYNAMIC BLOCKS
Please mark Accept as Solution if your question is answered. Kudos gladly accepted. ⇘