In Creo, I can add a component to an assembly, and then control its size using rules (it’s called “flexible components”). How is that done in Solidworks?
I have a pin that is cut to length and put into the product. I don’t want to put an eight-foot rod into the assembly and use an assembly cut to cut it down to six inches.
You can also add an in-context relation by editing the part in the assembly, such as setting an extrude feature to end at the surface of some other part. Note that we never use in-context relations, as it screws us over in file management. You could also drive everything with a layout, though we don’t do that either.
“I don’t want to put an eight-foot rod into the assembly and use an assembly cut to cut it down to six inches.”
In the case you describe, we wouldn’t either, but if our actual assembly involved doing something like that, cutting something to size in the process of creating the assembly, then that is how we would model it.
Careful with configurations, having the rod’s length changed will also affect the rod’s length displayed in your BOM.
As Dwight said, if I wanted to take something of a given length and have it cut down, I’d most likely have a sub-assembly created to do the assembly cut on it. Makes the displaying of the process easier too.
Configure Dimension does not come up when I right-click the dimension.
I’m not quite sure how this works, but I’m also trying to avoid having to create a huge list of configurations in the pin model, to go along with the huge list of configurations in my assembly. Fortunately the pin model is a generic model - not a model that is used on a production drawing - so I could do odd things to it, if need be. But the model is just for visuals, not for production records.
I’ve never worked with changing component dimensions in an assembly, except for the aforementioned flexible components. So what you’re saying sounds like it might work for me, but I don’t really understand it. Like, “drive everything with a layout.” Not sure what that means.
By the way, Dwight, you look familiar. Did you ever play The Affable Neighbor in a TV sitcom?
I have a hunch you’re looking for driving a part length ad hoc. This is where you model the pin at 3", but want it to be 5" in one assembly and 6" in another without actually changing the part model. Solid Edge has a similar feature but they call it Adjustable Part.
No, SWX has nothing of the sort, but I guess SE doesn’t have easy configurations either…
On the other hand, since the pin model isn’t used for anything else, I could have its length updated every time I open a new configuration of the assembly…
[quote=“mike miller” post_id=21246 time=1656441269 user_id=118]
I have a hunch you’re looking for driving a part length ad hoc. This is where you model the pin at 3", but want it to be 5" in one assembly and 6" in another without actually changing the part model. Solid Edge has a similar feature but they call it Adjustable Part.
image.png
No, SWX has nothing of the sort, but I guess SE doesn’t have easy configurations either… ()
[/quote]
Nice option in SE that I wish SWX had.
SolidWorks has what’s called a “Flexible Part”. You build the rod length “in context”. Then insert it into other assemblies and toggle it “Flexible” which prompts to select an assembly reference to control it length.
The part I don’t like is having to build it in-context. I suppose I don’t have to keep that assembly, but still feels like a kludged together function. I should be able to establish the “flexible” geometry parameters in the part directly.
From a post further down I’m guessing you tried this in the Assembly. If the dimension belongs to the Part you need to configure it in the Part, then reference the desired Part configuration in the Assembly.
I know I said yesterday that configurations were the way to go, but if this is a library part that will be used extensively, in multiple projects, then configurations might not be the best choice. The simplest solution may be to just copy and paste the Part, give it a new name, and edit the length dimension to what you need for the current project. If it’s used multiple times in the same Assembly, then I would use configurations.
Just to clarify on this KSHansen, you have to open the part to have access to “Configure Dimension”. That, or you can “Edit Part” in the assembly to configure the dimension. I think it’s this way so that you don’t inadvertently select it when you think you may be editing an assembly level dimension.
Unfortunately the software doesn’t always work the way we think that it should. But, you can usually do what you need and I think people have given you a lot of options. Maybe give a few a chance and then let us know what works for you?
You can design the part in the context of the assembly, with all of the references being to other parts in the assembly. What is added by making the component flexible?
When you add the part to another assembly, the in-context reference is not solved since the original assembly is not open. You can toggle the part as flexible and it will prompt for a new external references which will drive the instance geometry. You can even insert a second instance and drive it with a different external reference in the same assembly.