Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Add a Part Studio as Sub-Assembly or Group?
Armindilo
Member Posts: 31 ✭✭
I am modelling my future kitchen. I have created various sized cabinets in individual Part Studios, each one composed of approx 10 parts. When I bring them into my main assembly, they are completely floating individual pieces; they don't stay together as a cabinet.
The solution to that is simply to Group them once I bring them into the assembly. However, that still just shows it as individual parts on the left side, which becomes a pain when there are a lot of cabinets.
The solution to that is to create a sub-assembly for each cabinet. However, now I have created a complete Part Studio and Sub-Assembly for each cabinet size, which seems a bit redundant. I could live with that, but if I make a change in the Part Studio, it isn't updated in the Sub-Assembly. Updating the Sub-Assembly is a bit of a hassle with all the mates required to get it right. The solution is to just re-create the Sub-Assembly from the Part Studio, however then I need to re-insert it into the main Assembly.
Is there a way to bring in a Part Studio and have it behave like a Sub-Assembly?
For reference: https://cad.onshape.com/documents/dd5f09a4481b265866a2126a/w/652e135c7014f766e718ad25/e/bee7328366ef429c0233cc4c
Edit: As you can see, the updates to the 18" Base in Part Studio have not updated to the Sub-Assembly.
The solution to that is simply to Group them once I bring them into the assembly. However, that still just shows it as individual parts on the left side, which becomes a pain when there are a lot of cabinets.
The solution to that is to create a sub-assembly for each cabinet. However, now I have created a complete Part Studio and Sub-Assembly for each cabinet size, which seems a bit redundant. I could live with that, but if I make a change in the Part Studio, it isn't updated in the Sub-Assembly. Updating the Sub-Assembly is a bit of a hassle with all the mates required to get it right. The solution is to just re-create the Sub-Assembly from the Part Studio, however then I need to re-insert it into the main Assembly.
Is there a way to bring in a Part Studio and have it behave like a Sub-Assembly?
For reference: https://cad.onshape.com/documents/dd5f09a4481b265866a2126a/w/652e135c7014f766e718ad25/e/bee7328366ef429c0233cc4c
Edit: As you can see, the updates to the 18" Base in Part Studio have not updated to the Sub-Assembly.
0
Best Answers
-
3dcad Member, OS Professional, Mentor Posts: 2,475 PROSo if you change something on existing part - that does update to your assembly but if you add part into part studio that won't appear into assembly?
If so this is normal behavior, at the moment there is no automation on updating assembly to follow part studio. Inserting part studio into assembly in simply a shortcut to inserting parts one by one.
I usually try to keep part studios in default position when I create sub-assemblies so it's easy to add new part and include it into existing group.
It would be nice addition if one could insert whole part studio to assembly with follow-up so that it would create mates according to ps dimensions / constraints and would auto update any changes from part studio including new parts.//rami5 -
3dcad Member, OS Professional, Mentor Posts: 2,475 PROFix is just for current assembly - Group is what you need to keep them together when used as sub-assembly
//rami5
Answers
1. If you only need to test the look of your future kitchen, create part studio with single part cabinet (boolean everything together) and use variables to control the size. Then create version for each size you need. Then create assembly and mate cabinets side by side and choose right version (size) for each. This is not intended use for versions and everything is busted if you hit 'update all' at any time, but it will work.
2. Wait for configurations which is THE function for creating a library of kitchen cabinets and using different instances in any assembly.
3. If you need actual part data, create single part studio with that 10 part cabinet (use variables for sizing). Then duplicate that part studio for each size and create group mate sub-assembly for each. Then mate them side by side using fastened in main assy. Everything should update automatically UNLESS recent update forces us to create new version everytime you make a change to push it into assembly? If so, use feedback to request 'enabling the use of current version in assemblies' and bang your head against to keyboard (or tablet) while creating dozens of versions for every minor change to keep the assembly up-to-date..
1. I don't want have them as a single part if I can avoid it.
2. I don't know if configurations would solve the issue, since it would still import all the parts into the main assembly as floating individual parts; Unless of course a configurations feature changed the way parts are shown in the handled in assembly tree.
3. This is roughly what I am doing now. I am creating separate Part Studios for each cabinet (using duplicate as you suggested). With this approach I am creating a Sub-Assembly for each cabinet, which is a hassle but reasonable. Now when I make a change to a particular cabinet that results in another Part in the Part Studio (for example: changing from a single door to a double door style), the new Part (the second door) doesn't automatically update into the Sub-Assembly. Now I have to insert it into the sub assembly and try to position it correctly, which isn't really simple since it doesn't line up with any edges for reference.
I guess what I would like to do is have the Sub-Assembly exactly match my Part Studio, including any changes and new Parts in the Part Studio. Maybe there is a way to do this that I'm not aware of.
Another other thought: Is there an option to Insert the Part Studio into the Assembly with all Parts automatically Grouped?
Have you noticed that you can select certain group of parts, right click and create new subassembly from selection (in main assembly)? I think this will solve your problem if it's only related to having confusing feature tree..
The main problem I see in this case is that for example side panels are duplicated and treated as different parts and in reality there is some quantity of same parts. And I don't know if you wan't to test different cabinets or if you just need to model something you have already decided but to be able to create 'kitchen planner' we definitely need configurations.
While Configurations will be nice to have, I'm designing each cabinet as it's own part studio anyway, so it won't make a difference for that. I would just like to be able to Insert the Part Studio without having the added issues that the Sub-Assembly method brings.
If so this is normal behavior, at the moment there is no automation on updating assembly to follow part studio. Inserting part studio into assembly in simply a shortcut to inserting parts one by one.
I usually try to keep part studios in default position when I create sub-assemblies so it's easy to add new part and include it into existing group.
It would be nice addition if one could insert whole part studio to assembly with follow-up so that it would create mates according to ps dimensions / constraints and would auto update any changes from part studio including new parts.
My point is that the Part Studio is basically the entire sub-assembly already in one place; It would be nice if it could be inserted as a Part Studio, not as a collection of Parts, so that it did in fact update when things are changed or added in the Part Studio.
And maybe it is not even possible based on the background mechanics of Onshape.
I can't seem to find a way to insert the part into an existing Sub-Assembly in the default location. If I could do that then I'd be happy; I would just manually update the Sub-Assembly with new Parts as needed. I still end up having a Sub-Assembly for every cabinet, which is cumbersome but acceptable. Is there a way to insert the Parts into the Sub-Assembly in their default location & position? I couldn't find a way to do it; I would always end up with newly inserted parts in random places.
Ya, that's sort of what I'm thinking. If it could be inserted with a Group mate, and automatically put into a Folder in the Feature Tree that would be a nice capability.
Thanks for the info.
But now, when I try to move around the Sub-Assembly in the Main Assembly, the individual Parts get moved around, not the entire Sub-Assembly. Does Fix not propagate up through the Assemblies?
Document here:
https://cad.onshape.com/documents/58605718ef12fe1027f16fe6/w/000108002af7cb56bec7a933/e/c3291b0603192ea937a889a7
@bruce_williams I inserted as assembly, thanks for pointing it out anyway though.
sitting on a table in a separate assembly the base would need to be moved to an appropriate place on the table. This would be impossible if the fixed status was inherited. This is the reason why fix is just local.
If that is the case, I see the reasoning, but then again I would question why you'd need to fix the base of the lamp anyway in the Sub Assembly.
Onshape assemblies are flexible by default. So if you want subassemblies to behave like solidworks you have the create a group in the top-level assembly and fix any of the instances in the subassembly.
I understand the difference in Onshape, it just didn't seem intuitive to me and will take some getting used to for me.
If I create say a robot + machine cell, in robot assy I use fix for base plate to be able to move robot arm without moving the whole thing. Then when I add that into main assy, I use one mate between base and machine in main assy and that's it - then robot is fully functional with machine.
In my previous life with Alibre/Geomagic I had to make things flexible in main assy and add dozens of mates - usually I lost my nerves before got the movement right..