Make a component, leave loose geometry in model


#1

Mac Mojave 10.14.2, SU Pro 18.1.1180. I have noticed this behavior with previous versions of the OS and SU, so I don’t think it is unique to my current configuration. My current setup is a recent clean install of both the OS and SU (don’t ask, please).

Scenario: Make a complex component, say a corner window molding for my house model. This has curved geometry and straight geometry. When I am satisfied, I push/pull to the proper length so that when I put four of them together, I have molding that frames my window. I open one of the components and hide the ends so I don’t see the seams. I explode all of the components, select all and make a component called molding. Here is the problem: The loose geometry in the model is still present as loose geometry and there is a component called molding in the components window. Of course I can select all, delete the loose geometry and drag the component from the components window into place. However, sometimes it is not convenient to place a complex component into a complex model and if I forget to check, I could run into problems later in my modeling process, such as purging components and losing the window molding component definition.

This is an intermittent problem so I can’t show an example; it seems to happen mostly with complex components. The one in the example has 297 entities in it, which makes it complex, but not overly complex.

Has anyone else seen this?


#2

Have you made sure to check the “replace selection with component” box in the dialog when you create each component? If not, you will get duplicated edges and faces, one set in the component and another loose in the original context.


#3

Hi SLB,

Thanks for the response. I did some more experimenting with your suggestion. Sometimes the box is automatically checked and sometimes it is not. I cannot figure out why. But when I make sure the box is checked I get the result I want. So, I will just be sure to check that box and maybe some day I will learn how to set the default to always be checked.


#4

When there is loose geometry attached to but not included in the selection the box won’t be checked automatically. If you aren’t paying close attention this is easy to miss. Another reason to create components at the earliest opportunity!


#5

That’s it! I will have to be more aware of the hidden stuff (this explains how they seem to show back up from time to time). And yes, creating components is something that I do as soon as possible, having learned the hard way - and I have the archived files to prove it.


#6

I set a shortcut for group as g and always work with Groups so I never see that issue. I convert a Group to a Component when I need the power of a component.

Makes for a smaller model.


#7

Components and Groups are implemented using the same underlying data structure (a ComponentDefinition). It is technically true that a Group does not attach values to some of the properties of the ComponentDefinition, e.g. a Group can’t have a file path from which it was loaded. But in practice, these overhead elements of a Component are rarely a significant size compared to the actual geometry in the ComponentDefinition. You might save a few percent in file size, but I have never yet encountered a model that became unwieldy or excessive in file size due to using Components instead of Groups. Rather, the main things that affect file size are excessively detailed objects (regardless of whether Component or Group) and excessively large texture images.

You are welcome to use Groups if you prefer their lack of a setup dialog or find that they suit your workflow or modeling needs better than Components, but reducing the model size is IMO not a strong motivation to choose them over Components.


#8

Speed and time is why I switched my cabmaker from components to groups.

I would create a bunch of cabinets resulting in up to a hundred compents ( all unique ). Then I would add a component manually - even just a single rectangle and Sketchup would disapear for minutes as it created 2 not 1 image for every single component. Under the hood Sketchup would make all other geometry temporarily invisible as it produces 2 images for each component. This resulted in a huge model at least 3 times the size of when I moved to groups.

Components have their place - but absolutely not with what I do.


#9

This and the fact that SketchIp doesn’t handle nesting of components very well, results in slow performance when importing BIM- models (IFC) were each element is a unique component, regardless of the geometry.


#10

Aha! You raise a factor I had forgotten: SketchUp generates a thumbnail view for each Component so that it can be displayed in the Components window. It does not do this for Groups because they don’t appear in the Components window. When there are a lot of Components, the overhead of the thumbnails can be considerable, both in memory and performance.


#11

Another thing to consider is that copied groups do share their definition resulting in a smaller model. The difference is when you edit one of the copies then it creates it’s own definition whereas edit a component and all instances change.

I do add interact to cabmaker’s doors and drawers (hinging, pullouts etc.) and believe it or not this works with groups.

Don’t get me wrong - I do use components and also I turn groups into a components when necessary.