In my first 3 days of using SketchUp, I made almost every mistake that can be made regarding layers. I thought that everything in an object (group or component), including the geometry, should change layer along with the bounding container. And on that basis, I actually submitted a support request because SU wasn’t behaving the way I believed was intended, and I needed help in getting SU to do as I wanted.
In retrospect, the help SU gave me was BAD support. Instead of questioning my understanding of the intended use of layering, they went ahead and showed me how to get the geometry into my chosen layer, thus causing me to perpetuate my misunderstanding. Since then, I’ve continued building my Tiny Home model, putting everything (container AND geometry) into my intended layer, leaving NOTHING in layer 0.
When other niggling problems crept in - particularly in using solid tools on containers in different layers, I finally read this forum well enough to realize my mistake.
I get it. Layers are for visibility ONLY. All actual geometry should remain on Level 0. Now I’m faced with the tedious task of, one container at a time, editing the container and changing the geometry (but NOT the container) back to level 0.
Anyone have a bright idea on how to do this in bulk? It would save me a LOT of time!
I could tell you how to fix it manually. It would be a bit like rubbing your nose in it and you’d never do it again. Instead, since you already know, I would suggest that you get TIG’s Default Layer Geometry extension from Sketchucation and run it on youor model. Hang tight and I’ll get you the link.
Edit: Here’s the link. You have to register at Sketchucation but it doesn’t cost anything.
Perfect! It’s going to do exactly what I need it to do, really fast! I’m already on Sketchucation, so install went fast.
I tested it in a simple model I keep for testing downloaded components, I has 3 walls, 1 in each cardinal plane. I’d already put them (but NOT their geometry) into separate layers, so I intentionally put their geometry into their respective layers. Then I used Default Layer Geometry. First on just 1 wall - worked flawlessly. Then I selected my entire project, and it did the other two walls in one operation.
Perfect! I’m off to turn visibility ON on all my Tiny Home model’s layers, select all, then run DLG - once!
The most simple method to easily (and systemically) correct objects placed on the wrong layer is to use the Entity Info panel in the Default Tray. Perform a “Select All” command and assign everything to Layer 0 (use the Entity Info box) with a single click.
You can go back later and assign specific groups or components to different layers as you wish. Just remember, @sjdorst, to never place “raw” geometry on those different layers, but only on Layer 0.
That works great for moving all entities in the same context back to Layer 0. However it isn’t effective for correcting the layer associations for entities in other contexts. So you can select all the groups and components in the model with Select All and change their layer association but that has no impact on the edges and faces within those groups and components.
I believe Steven has already sussed out that edges and faces in his groups and components should remain on Layer 0 but not until after he had already changed their layer associations. Now he’s trying to repair that mistake in an existing model. He could open each group and a n instance of each component and use your method of correcting the layer associations back to Layer 0 but TIG’s extension will do that much more easily and efficiently.
@DaveR has the right of it. The method you propose would, I think, have the exact opposite effect of what I need to do. Remember, my containers ARE on the appropriate layer, it’s the geometry INSIDE those containers I want to return to Layer 0. Changing the layer of the internal geometry of a group or component requires explicitly editing the container, THEN doing a “Select All” and changing the layer. And you can’t edit multiple groups using “Select All”.
So your method would very quickly change the layer of the containers to Layer 0, while leaving the contained geometry on layers OTHER than Layer 0.
One method I did consider was to simply delete all my layers, choosing the option to move everything in the layer to Layer 0. Had I done that, I would then have had to go through 217 entities (actually a few fewer, I DO have a couple of instances of components with multiple copies) and re-create my layers.
In any case, it’s done. I used TIG’s Default Layer Geometry extension to fix things. Easy Peasy! Make all layers visible. Unhide ALL, Select All, Run extension. 5 minutes later and I’m set.
I’ve also installed TIG’s Layer Watcher tool to make it hard (not impossible) to make the same fundamental mistake again.
I just updated default_layer_geometry by downloading from sketchucation, and installing through Windows/Preferences/Extensions/Install. I tried it immediately, but it still gave the (paraphrase) “Select object before running” screen. Frustrated, I searched SU Help, SU Forums and sketchucation Community for instructions to remove an extension, figuring that way I can just install it as a fresh install.
Instructions I found were confusing. But at some point in my search, I accidently closed SU. When I loaded it to try something else, on a hunch I tried default_layer_geometry again - and it did as you said it would! It ASKED if I wanted to run it on the entire model.
So I’ve now successfully updated it. But I’m wondering if there is any place that makes it clear that, to update a Sketchucation plugin:
Download and install plugin as if it were new
Close SketchUp
Open SketchUp
If so, where might it be? If not, what is the best place for me to author a “How To”?
I would suggest you download and install the sketchucation.com plug in store tool and use it to install TIG’s plugin as long as many others with it. It will automatically install and load plug-ins so you don’t have to go through all the gymnastics you describe.
Well, the PluginStore existed before the EW. As for why authors don’t put them in the EW, I guess you’d have to ask them. I expect there are a number of reasons. There is some overlap but not much. I like the Plugin Store because in addition to automatically installing extensions, there are also tools to allow you to temporarily load or unload extensions and to set up bundles making it easier to install extensions on more than one computer or when you upgrade to the next SketchUp version.
Yes, the EW has a set of ‘rules’, that for many authors, is far too complex for their personal needs…
if you code for yourself and are happy to share, you may not have the time to comply to the submission format…
SCF Extension Store not only predates EW, but it allows people to develop their code through testing in the forum, and move it to the store when it seems stable…
For some of the more advanced scripts, authors wrote their own translation code, download code, check for update code, etc… before Trimble even owned SU…
All that aditional code would need to be removed, and as a part time charitable venture, it could take years for someone like Fredo to update all his scripts to ‘comply’, even though they do still work…
One additional wrinkle that @john_drivenupthewall didn’t mention: extensions in the Extension Warehouse are reviewed by Trimble before they are accepted and could potentially be rejected. This makes sense, as Trimble supports the EW and therefore at least implicitly endorses the extensions. The sketchUcation plugin store relies on the community to report extensions that are flawed or misbehave. This peer review idea seems to work well. Plugin store extensions are generally high quality.
@john_drivenupthewall That makes sense. @slbaumgartner This makes sense too! <nitpick> And isn't your "additional wrinkle" part of what @john_drivenupthewall hinted with his "EW has a set of 'rules'"? </nitpick>