Nested Instances - Back To Basics

Seem to be continually creating groups with nested instances, instead of anticipated solid. In this example, I create geometry, which Solid Inspector 2, reports with nested instances. I then copy and explode. The copy then becomes a solid. So, a couple of questions:

  1. What makes the first object report nested instances?
  2. Why after copy/explode does entity info report “Solid Group (2 in model)”, when there is only one?

Nested-Instances.skp (73.9 KB)

Think of a group or component as a jar into which you can put things. One of the sorts of things you can put into the jar is another jar - here, a group “nested” inside a containing group. Exploding discards the jar, leaving just the contents - here, the group that was nested.

It reports that because there is a group nested in the group. You can see this in outliner. In SketchUp (and Solid Inspector 2) view, a solid cannot contain any nested objects. Some slicers are less picky and will accept nested groups.

Screen Shot 2021-04-15 at 1.35.18 PM

Because there is another copy nested inside the original group, the one you exploded. Copies of groups become unique only when you edit them. Exploding the outer group does not modify the nested group.

1 Like

Still trying to understand what action is causing “a group within a group”. Is the “thing” that is inside the “jar”, the geometry? And what commands create the jar within the jar?

SketchUp does not create nested groups on its own. Typically this situation would result if you created the first group, selected it, and invoked “create group” again. Could you describe in detail the exact sequence of steps you used when making this particular model?

Edit: It might be clearer if I stated the jar analogy the other way around: you can pick a bunch of stuff and create a jar that contains it. If you do this once with some geometry (edges and faces) selected, you will get a jar (group) containing that geometry. If you do it a second time, you will get a bigger jar (group) that contains the first jar (group).

1 Like

I know this sounds bizarre, after all we are talking about behavior, mine!

The only way I can purposely create this scenario is to create the geometry, select all, then group. This is the first “jar” (I guessing this is the outer “jar”). I then have to open this group for editing, triple click to select all the geometry, then group. This creates the inner “jar”. The outliner then shows the hierarchy.

I would never consciously create this “mess”, so I am puzzled why/how I am creating these nested entities. So, for now, this remains a mystery.

But, thanks to your helpful comments, I better understand the “nested instances” concept.

Well then, I guess you’ll have to pay careful attention to what your unconscious was doing right before you encoutered such a mess :thinking: :rofl:.

1 Like

Before we leave this topic, I’ve one more question. I see a lot of models with multiple groups within a component/group. Of course, with this type of nesting, a solid is out of the question. What are the advantages/disadvantages of striving to create only solids (components or groups), thereby reducing model complexity?

There are really two questions in your post.

First of all, regarding nesting. Nesting makes sense when it conveys a “part-of” structural hierarchy. For example, a stile is part of a door and you would most likely want to be able to manipulate the entire door as one object. Nesting the stile component inside a door component handles this.

However, you should avoid getting too carried away with nesting because it can make a model hard to work with. The Outliner helps a lot, particularly since its performance and features have been improved in recent versions of SketchUp. But having to constantly drill down through multiple layers of part-of hierarchy can both slow you down and create confusion when you aren’t editing the group you thought, but instead have either its next outer one or its next inner one open.

Next about solids. Think of a solids as the models of single real-life objects. So, in my previous example, the stile would surely be milled from a single piece of stock. It should be a solid. The door is an assembly of several solid parts, and should be modeled as such - but it is not a solid itself.

If you are planning to 3D print a model, solids are essential because 3D printers can’t generate impossible objects, and most non-solid shapes are physically impossible. For example, a “surface border” is a gap in the surface of an object. One can pass through this gap from the open air around the object to the material within the object without passing through its surface. That’s physically impossible, and the printer can’t create it!

If you aren’t going to 3D print, the main value of solids is checking whether your model has flaws, some of which may be hard to spot. For example, there might be a tiny surface border hole due to a drawing error. Or there might be edges or faces that stick out from the surface. These are both physically impossible structures: the edge has neither width nor thickness, and a face has no thickness. In a model they might be strays that should be erased. Similarly, interior faces usually serve no useful purpose and should be erased. If you see that a group or component is listed as solid in Entity Info, you can be sure it has a physically realistic structure.

5 Likes

An example of useful nesting: In a complex assembly there are many individual parts comprising sub-assemblies, these may be nested many levels deep. It is desirable to be able to use, move, copy, work with the entire assembly as a unit. It is also desirable to keep all the various pieces of the assembly as discrete entities so any given part can be worked with and adjusted individually.

If I kept this assembly as 100’s of individual component, it would be impossible to move around, I’d be forever leaving one bolt behind or deleting some small piece by accident. On the flip side, if I had one component with all raw geometry inside it would be difficult/impossible to later adjust any of the small pieces as everything would be stuck together.

As I’m not 3D printing any of this, being “solid” is irrelevant. Although as Steve says it can be good way to check for errors in individual pieces.

3 Likes

To avoid the usual noobie confusion, you probably should have said “many levels deep” instead of “layers” :thinking:

3 Likes

So funny you picked that out. I was thinking the same thing as I wrote it but couldn’t come up with a better description for nesting hierarchy. What do you think? Levels deep? I like it.

1 Like

If you are 3D printing, checking for Solid is key as it tells you that part is printable. However it’s worth noting that many slicers (I use Cura) are happy to print nested geometry or overlapping separate groups/components if set up correctly. They can even ignore or fix small holes in the mesh. So while it’s best practice to strive for a perfect solid, there is a little wiggle room.

1 Like

Also, if your objects aren’t solids you can’t make use of solid tools.

3 Likes

Good point! I overlooked that advantage.

1 Like

One thing that I find a bit irritating is that even if the total “effect” of an object “solves” into a solid, it still isn’t recognized as one if it has nested instances. For instance, if I make a “niche” as a hole-cutting component and place it into a “wall” the result is not solid, even if the overall effect is “watertight”. Also, a section plane cutting through this kind of “assembly” won’t support a section fill. In this way SketchUp is sort of favouring raw geometry over a structured model.

Computer logic versus human mind?
What bugs me is that if a component is considered as a ‘little SketchUp model’ and applying the commonly used approach of not leaving any stray geometry in a model,
At least a component would have a nested group.

Say you where creating a model that would be used in another model.

Therefore, it would never be recognized as a solid, once imported.

Still trying to understand what in my modeling technique produces errors like this. I expend considerable effort to create clean geometry. I end up with components that should be solids, but are not. In this example, the problem is “external faces”. I have no idea how I created this problem. I am unable to even find the problem (external faces) using xray mode, and yet, Solid Inspector 2 will fix this problem readily. This is discouraging for a new user like myself.

Attach the unfixed component so we can see what is happening.

I discarded that one. But, attached is another example of nested instances. If Solid Inspector 2 is invoked on this model, the report is nested instances (which I can’t identify). While SI2 dialog is still up, if I click on the geometry, SI2 reports, “No Errors, Everything is Shiny”. Maybe this is a “focus” issue, not sure. May be normal behavior.

Nested-Instances.skp (70.9 KB)

1 Like

If you activate SI2 without anything selected it will look at the whole model and naturally tell you there is something nested in it.
Always preselect the geometry you want it to check.

1 Like