Turning one layer off turns all the other layers off as well

Passengerboat.3dm (1.3 MB)
Hi,
I have created blocks for each layer in my model and when I turn one of the layers (Profile Exterior) off all the other blocks disappear as well.

I don’t think the layers are being turned off.
I think you’re turning off the block instance’s Reference layer.

If your turn off the layer that the block instance is referenced to, the entire instance goes away.
When you select a block instance, the Properties panel tells you the layer the insertion is on.
You might consider making a special layer just as a block reference layer so it will be less confusing.

Thanks for you quick response John. Can you share with me where I can find what is my block’s Reference layer?

I did.
Select it and look in the Properties Panel that should be on the right side of your screen:
This block instance is on Layer 01:

That’s the Layer that was current when you created the instance.

Okay that’s what I thought. If you open the file I uploaded you can see that each block has it’s own layer. But when I turn off the “profile” layer it makes all the other layers disappear as well.

If you draw something, the objects are on the layers you drew them on.
When you create a block, those objects are still on the layers you drew them on.
When you Insert the block and create an instance, now Rhino knows where to draw a copy of the objects in that definition.

If you turn off the layer the instance is references to, the entire instance goes away.
If you turn off a layer that a portion of the block was created on, then just that portion goes away.

The Help article for Blocks covers all this:
http://docs.mcneel.com/rhino/6/help/en-us/index.htm#commands/block.htm?Highlight=block

Understood. Can I change the layer the instance is referenced to? For example in my case, I’ve imported a PDF and I want to separate the different views into separate blocks that are “referenced” in separate layers.

Did you notice the layer name in the properties panel is a drop-down list.
You can easily change it there.

Yes I did notice it. But still, even though I changed the layers for each block- after turning off the profile layer (it happens only with this layer) all the other blocks disappear as well even though they are not on that layer.

Make a copy of your block instance an Explode it.
Poke around with the elements that make up the block and see what their Properties are. They may be on different layers or just have different colors assigned. There may even be nested blocks within the definition.

Okay, so here is how I solved my problem:

  1. Selected all blocks with- “SelBlockInstance”
  2. Exploded all the blocks with- "“ExplodeBlock”
  3. Moved everything to a new “temp” layer
  4. Purged everything with- “Purge”
  5. Created new layers for each block
  6. Selected with the help of “lasso” items for each layer
  7. First moved them into the designated layer before turning them into a block
  8. Then finally turned them into a block

Only with this method was I able to create full separation between my model’s layers.

Hello - you can use BlockEdit and inside that command select the objects and put them on whatever layer you like - that will change the block definition’s object layer - you can change this to the same layer as the block instance that you are editing is on, then everything should be under the control of that one layer. If you put an instance of the block on some other layer, of course that will split things again for that instance.

-Pascal

1 Like