Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:

  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. 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.

Update Linked Document, Rotation

famadorianfamadorian Member Posts: 300 ✭✭
If I create an additional part in a part studio, then update the assembly by including this, then go to another document and "update linked document", the newly inserted part doesn't take into consideration previous rotations done on the assembly;) that's a mouthful

Any thing I can do here, bar reinsering the assembly and doing the rotations all over again?


  • john_mcclaryjohn_mcclary Member, Developers Posts: 2,026 PRO
    If you don't mate it, it will not update.

    Onshape treats sub assemblies a little odd. They are floating bodies, only attached by the mates you create.
    They do not maintain their reference to the assembly origin either.

    This can be a good thing for flexible assemblies, but it ends up biting me in the arse more often because it feels fully defined in its own assembly. but parts get flung into the nether when I move them in a higher level assembly. I've gotten better at it, making sure I don't use the origin as an axis for a pattern. etc. But it still can be a little confusing sometimes.
  • billy2billy2 Member, OS Professional, Mentor, Developers Posts: 1,300 PRO
    edited June 10
    Assemblies in Onshape are superior to any other CAD system.

    There's a trick to force higher level assemblies to sync positions with the lower sub-assy. 

    Group in the the lower sub-assy. Add all the components to a group. This will force an error at this level, who cares, it's only temporary.

    This group is inherited in the higher level assembly forcing all the components to the position found in the lower assembly. After it updates, goto the lower sub-assy and suppress the group, error goes away. They stay in place in the higher assy because parts don't inherit their positions from a lower assy, they only inherit mates & groups.

    I leave the group defined & suppressed because after adding many new components, I'll use it again to force position in the higher assy. Remember to add the new components to the group.

    It takes seconds.

    Once you master this...... then the other problem is that components move in the higher level assembly. I had a door that kept opening in the top assembly which was annoying. To prevent this, have a group in the higher level assembly. The group overrides the movement from the lower level stopping the movement and in my case, kept the door closed.

    Most of the problems you've identified can be solved by grouping at the correct level. Toggling the suppression state turns'm on and off.

    You do have to remember to add components to groups. I was wondering if it made sense to have groups updated automatically with all components in an assembly. Not sure this is better than just keeping them updated manually.

  • john_mcclaryjohn_mcclary Member, Developers Posts: 2,026 PRO
    I would still prefer to work my way through until the assembly is fully defined without temporary mates that need updating.

    It basically comes down to locking everything in the lower assembly only to each other. Not the origin, or multiple "Fixed" parts. Group mate messes things up quite often too. Especially if you group a sub assembly higher in the tree.

    Just takes practice and understanding. Back in SW all assemblies were rigid. so this was not an issue. although making those assemblies flexible was  whole other nightmare!
Sign In or Register to comment.