Are Directly Opened Component Files Exploded?


and if I send you a simple cube component that has be saved using Save as, when you double click it you will be inside it for editing.

The formatting isn’t removed, you are simply inside the component.


True, but it would not be a DC


It’s the same thing.


No a DC is a dynamic component, not a component or a model.
They do use the same file format. So they are the same in that way.

If I where to send you a DC for you to examine you would not open it by double clicking it because the actual geometry contained within a outer shell of the DC is generally not what is of value. It is the values and formulas contained in the outer shell that make it what it is.

So you would have to save it to the component directory and open it through the component browser.


And without an outer shell a component is just a bunch of raw geometry.


I do not understand your point there.
Yes -a DC’s top layer if exploded and it contained geometry would lose it’s dynamic properties and just be raw geometry.

That would be like in my Word file example -you double click the attachment and all the words are there but all the formatting is unavailable -you would not expect Word files to work that way because the formatting is as important as just the raw text.


All I can do is refer you to my early comment about coming back to this thread in future.
I’m off to bed.


As I said before -there will never be a future point where i would want a DC to open that way. It is simply not a useful behavior of skp files and I would also not want a word document or excel file to work that way.

Can you imagine I send you an excel file and you open it and all formulas are unavailable and it is just a bunch of raw numbers?

The situation only ocures because someone decided to use the same file format for both models and DC’s without making it know which it was.

I do not know the history of SketchUp but it seems that DC’s where most likely added sometime after the initial program was created.



I think a plugin could be written that would handle opening a DC as you expect.

Upon opening a .skp file, if a AttibuteDictionary named dynamic_attributes exists at model level, then the plugin would wrap all entities in the model into a Component and move the model-level dynamic_attributes dictionary to the new component.

At the least, perhaps a message could be displayed saying the opened model was intended to be imported, and offer to recreate the DC.

I’d be happy to help if anyone is interested.

Plugin to Detect Opened DC

@ChrisStewart, I think the first two sentences in Dan’s first post do say enough. [quote=“DanRathbun, post:5, topic:12248”]
It means that they did not choose the terminology well.And secondly, they should have chosen a separate file extension for component files, like: skc or whatever.
As I see it he acknowledges that the “Save as” extention for components should have been different from saving a model to skp.
I hardly ever open an skp file by double clicking on it and then only when I know it was meant as a model, not as a DC. DCs should be imported or selected in the component browser.
And yes, you are right about the awkward way a DC component can be opened without any warning. But again, that can be read in previous threads. Do file a request to change the way SketchUp works now. Maybe the developers will change the extention for components that are “Saved as a component” so they’ll open as a true component again while then being in the top level, being outside it’s editing context, ready to explore how it behaves.
But at least for now you know how to get them into modeling space and how not to.


Somewhere SketchUp had documented (perhaps not officially) a DC workflow, although I can not locate it at the moment.

In a nutshell the workflow consisted of having a master model for the DC where editing occurred. Then when ready to share, you right clicked the component and either uploaded it to the 3D Warehouse, or saved it to your Components folder to make it available in the Component Browser.


It isn’t that it can’t be avoided -once learned it is easy enough. It struck me as odd though that they would make that statement in the tutorial -and got me wondering why would anyone want that?

“It means that they did not choose the terminology well.And secondly, they should have chosen a separate file extension for component files, like: skc or whatever.”

Yep -to me that answered the question.


I think I see reason to Chris’s point. Even though I think “exploded” is a poorly chosen term, there is a reason one might want to open a DC as if it were a model: to claim ownership. To do this you need to open a model separately. Which I think is a big hassle.


I think chris is spot on and the sketchup team are not listening to his point but focus on his wrong choice of words. I would like to suggest a solution. That sketchup itself should have a builtin component options and components attributes menu independent of the DC plugin but can work with the DC plugin. So any dc components that come into sketckup ie imported, drag from folder or component browser, or even clicked on, you will be able to access the options and attribute of that component. If it comes in exploded like chris says then you can access the option and attribute via sketchups builtin.
Once you open a file in skp that should be a model even no geometry has been created. You should be able to add component options and attribute at that level. Then you can go on to create sub dc components and control these via sketchup builtin top level component options and attributes window


Thanks for the discussion.
To upload a dynamic component to … say this thread, and have you all be able to actually see it working, I would create the component/open the component on a blank page, then I would save the page as a completed model, and finally upload the model for viewing.
Then when you went to open the model you would get the whole page opened, with the dynamic component ready for you to manipulate via the component options popup.

Thanks for the assistance.


To clarify: Components are not exploded when a file is opened. The file represent the component itself, not the component’s parent drawing context, and opening the file corresponds to double clicking a component inside SketchUp to edit it. This behavior itself makes perfect sense. If you are inside a program and save out a single element, e.g. download an image with your web browser, you would expect the downloaded file to be an image file containing the image alone, not a web page containing an isolated image element.

However when the Dynamic Components plugin is used things instantly gets complicated and confusing due to how it is designed. If this plugin was more intuitive it would give access to attributes also from within the component (including when the whole model is the component). Or it could show a message when a Dynamic Component file is opened that explains to the user the component is supposed to be edited from a master file, not from its own file.