Layer 1 or layer 0
-
Which version of SketchUp introduced an automatic Layer 1? I thought it was bug for the longest time.
I've been writing some lessons on layer behaviour and, as recommended, I model everything on layer0 but the component or group packaging is associated with a different layer. I warn students of the strange and counter intuitive behaviour that if one explodes the component or group, the geometry within that used to be on layer 0, has now inherited the layer association of what used to be the component or group.
BUT!!!!!!!If the geometry is modelled on layer 1 or any other layer and then the component is made and associated with different layer, then if you explode, the inside geometry maintains its original association and does NOT inherit from the component. What is the reason for the different behaviour?
-
Interesting observations Susan. I think that there is only a layer 1 though because part of Bryce was modeled on layer 1. Like you say, if you explode him, there are lines that remain on layer 1, instead of being forced to layer 0. Therefore, they must have actually been modeled on that layer before componentizing him to layer 0. I'm guessing it was just a bad modeling practice. Does Sang also exhibit this same thing though? Maybe they are doing it on purpose for some unknown reason.
I don't know much about it though really. Just that I model on 0, and make groups of stuff when I can. Then move those groups to another layer and hopefully never explode them once they are on another layer.
Chris
-
I just looked at SU5, 6 and 7 on my PC. None of them include Layer 1 by default in my custom templates. I think as Chris points out, it is Bryce's (the component) fault that there is a Layer 1 to begin with when you open a model. Do you still see it if you delete Bryce and purge unused components, materials and layers?
-
@sorgesu said:
Which version of SketchUp introduced an automatic Layer 1? I thought it was bug for the longest time.
%(#0000FF)[...............if one explodes the component or group, the geometry within that used to be on layer 0, has now inherited the layer association of what used to be the component or group.
BUT!!!!!!!If the geometry is modelled on layer 1 or any other layer and then the component is made and associated with different layer, then if you explode, the inside geometry maintains its original association and does NOT inherit from the component. What is the reason for the different behaviour?]
Susan,
Like Chris said, Bryce is modeled wrong inlike Googles own advice. That's why we alsways get layer1 when starting SU.
%(#0000FF)[As for default assigned (layer0) geometry() inheriting layer assignment from the exploded group or component, I can only guess following reason: one assignes ungrouped geometry to layers for ones own very special reasons. So that assignment must not be overwritten. In other cases (default layer0) geometry() inherits layer assignment from one level up like you said. This may not seem logic as far as ungrouped geometry is involved. However, also nested default groups and components follow this rule. And here I can see the need to have them being assigned to their parents layer when the parent is exploded.
The very same thing happens with material applied to groups or components. Default colored geometry(*) inside the exploded parent inherits the parents material.
() with geometry() I mean simple ungrouped entities as well as nested groups and components.]
Wo3Dan
-
No issues if I purge Layer 1 no. Little did I know and I made my custom template from the 3D one and deleting and purging Bryce and his materials and changing the view to top down.
Nevertheless, I disagree that it makes sense to have the 2 different behaviours when exploding with layer 0 enclosed stuff and layer 1 enclosed stuff. In fact, I hate the behaviour for layer 0 exploded stuff. It is the reason one cang get "lost in space"
-
I agree. It would be nice if the geometry stayed on layer 0 after being exploded. However, I think I recall Gaieus bringing this up once and someone from Google might have had a decent explanation. I'll see if I can find that post.
Chris
EDIT: Nope, nevermind. The old forums are no longer accesible at all as far as I can tell. They used to exist, just hard to get to. now can't find any access.
-
Susan, FYI
TIG has created, among many others, a very nice plugin for all those who mixed up their SU projects:
[Plugin] Default Layer Geometry
http://www.sketchucation.com/forums/scf/viewtopic.php?p=47033#p47033
"This script defaults all 'loose' geometry and any geometry in groups or component definitions to Layer0. The layers of groups or components are NOT changed."And.... I removed layer1 at once, creating my own 'non-Bryce' default template.
BTW this is one of the first things I advice to everyone asking me for support on SU: create your own default drawing template! -
Thanks a ton, Ton.
I know of a bunch of other ruby scripts that move things on to different layers. There is a similar one but this is really good to know. Thank You!
And, as I said, I did make my own template, I just didn't realize there was a layer 1. Layer 1 isn't even an issue. Doesn't hurt to have it there doing nothing. The only issue is the peculiar behaviour of exploded objects when the insides are on layer 0.Workarounds not withstanding, I am still lodging a complaint about this behaviour. For such a clever application, I can't see that this is clever at all.
-
you are absolutely right, Susan. I think, the programmers had this idea for the default layer behavior before they really explored the best way to organize a model in SketchUp. and unfortunately no one ever bothered to change this. lets hope some Google guys are listening and remember to remove the 'feature'(bug) for the next version.
one workaround would be to create a template file with layer1 active. but you'll always have the unnecessary layer0 then.
-
My post in this thread might be interpreted as if I'm in favour of how things work now. Well, I'm not.
Just tried to find some reason. As for components and groups, there could be an advantage. (Yes, could be.) But since simple (ungrouped) entities aren't filtered out to stay in layer0 when exploding groups or components this 'feature' is more of an issue, in contradiction with Googles own advice. And all of this has been mentioned before. See:
http://www.sketchucation.com/forums/scf/viewtopic.php?f=79&t=8088&p=47619&hilit=+layer+default#p47619It would have been better if ungrouped layer0 entities could never be on another layer than layer0.
Except for text and dimensions!!!
And for nested groups and component... if we could only choose in advance (a setting) whether inheriting will take place or not. (I would turn it off though).Remember that exploding works similar for applied texture on groups and components.
Wo3Dan
-
Wo3Dan,
The texture example isn't exactly the same.
Consider this.
Some geometry is created on Layer 0 and it is left in the default material.
We select the geometry and make it a component and the component instance is associated with layer 1.
From outside of the component we paint it with a wood grain and all of the default material appears as wood grain.When we open the component for editing, the internal geometry still registers as Layer 0, but the material is no longer default. Even when viewed from within the component, the surfaces have been painted with the texture.
So here is the difference, the texture is applied through the component packaging and takes effect even while it is still a component. Exploding is not the cause of the change. Whereas with the layer assignemnt, it is the exploding that is the cause of the change. -
Yes, this is definitely a "nasty feature" even if not considered to be a bug maybe.
A general "workaround" can be that right after exploding a component/group, when all the geometry is still selected, immediately change its layers to Layer0. Surely it will only work safely if there is no other geometry around with which the exploded parts could inadvertadly interact (sa an edge shared or such).
-
@sorgesu said:
Wo3Dan,
The texture example isn't exactly the same.
Consider this.
Some geometry is created on Layer 0 and it is left in the default material.
We select the geometry and make it a component and the component instance is associated with layer 1.
From outside of the component we paint it with a wood grain and all of the default material appears as wood grain.When we open the component for editing, the internal geometry still registers as Layer 0, but the material is no longer default. Even when viewed from within the component, the surfaces have been painted with the texture.
So here is the difference, the texture is applied through the component packaging and takes effect even while it is still a component. Exploding is not the cause of the change. Whereas with the layer assignemnt, it is the exploding that is the cause of the change.Susan,
You made me wonder if here they changed things in SU7. I checked andâŚ. no changes.
So Iâm going to be a bit âunfairâ to you, hate myself for doing so.Hopefully you still have that file containing:
geometry on layer0 with default color, all put in one component (or group). The component is painted and assigned to layer1.Before you open the component (editing context) turn to âMonochromeâ.
Now open the componentâŚâŚ
You canât tell if the âpaintâ-information was passed on to the lower level default colored geometry.
Because you are looking at your model in monochrome.You asked me to look at a model in âmonoâ-layer mode.
Now back to the same model to see if layer assignment is acting like paint.
First switch back to one of the face styles âShadedâ or âShaded With Texturesâ like before.
In Layer Manager select âColor by Layer â and open the component again.
As you can see layer information is passed on to the lower level geometry just as paint info is.When we open the component for editing, the internal geometry no longer registers as layer0, but the material is still as 'outside' the component. Even when viewed from within the component, the geometry has been assigned to layer1. (in both paint and layer cases not quite true, check entity info)
The point is that maybe nine out of ten times we look at our model in a âmonoâ-layer way.
You should have a shortcut key set up to switch to âColor by Layerâ back and forth just like with âMonochromeâ.As for the inherit issue with layers, even that is the same when painted groups and components are exploded. And not only default front faces will inherit the applied paint. All geometry, front and back faces, all default colored edges and nested default painted groups and components.
All along the line both layers and paint work in a similar way when exploding groups and components.
Sorry for being a bit unfair to you.
Wo3dan -
I don't think you were "unfair" with me, but perhaps you are using that word different from the meaning I understand. I am always happy to learn something new.
However, I don't quite follow what you are trying to say.
I followed what you said step by step and I still get the same results.
First, I did NOT ask you to look at the model in "mono" mode.
I simply said that in shaded with texture mode when you first make the model it is in default color and to leave it that way when you make the component.
Next. After painting from the outside of the component,I assign the component to layer 1. If I edit the component the internal geometry is still on layer 0 but the texture has been been applied to the inside just as I said. I close the component
Next, I switch to Mono mode as you suggested.
I switch to color by layer.
The component takes on the color of layer 1
If I edit the component the internal geometry still registers Layer 0 (not what you said in your commentary) and the external layer color is still applied to the inside, just as it is when we paint a texture on it from the outside when it is in Shaded mode. this is entirely consistent with the behaviour I describe in Shaded mode. However the geometry inside is still on layer 0
If I explode the component it behaves as it did in the shaded mode. The geometry is on layer 1 now and the colour is still the colour of layer 1 as it was before I exploded. If I change to shaded mode it is still the sameIf I turn off colour by layer and look at it now, the colour is of the texture I orignially painted. The colour by layer colour does not over ride that.
So I don't quite understand what you are trying to point out. So sorry. Perhaps I'm not understanding properly?
Advertisement