@Anonymous wrote:
...3-4 levels of linked assemblies.
I'd stay away from that many levels of linked assemblies. 2, maybe 3 but definitely not more.
Updating the linked assemblies will slow your workflow down significantly.
Deep Update seems to crash Fusion 360 quite often.
Grounding works fine and has an advantage, even though it does not come into play in a design with no moving parts. Grounded parts are removed from the joint calculations, which in some cases can increase the speed of motion analysis and generally joint performance.
The common thread with all thee method do that you listed is:
They work on the origin of the involved components and you can use them to join component with no geometry in them.
Grounding locks the origin of the involved component to the top level origin in that design.
- All other components must reference (be joined to) that grounded component either directly or indirectly by being joined to other components that then are joined to the grounded component.
- Grounding only takes effect in that particular assembly. If that assembly is inserted into another design the grounding component is free to move in that new assembly. It has to be, otherwise you could not join that assembly to anything in in the new design. If condition 1 is met, all is fine in the new design.
- Because of condition 2 the top level origin of the inserted assembly will remain in the position it was originally inserted to. Because the grounding of the inserted is not taking effect in the new design, when assembling/joining that inserted assembly to another location only the origins of the involved components will move to that location, but not the top level origin of the inserted component. Very few people ever discover this, because why would you check your origins ?
One of the reasons I can see if a noob or a real pro created that assembly is where the origins are located in that assembly. Origins are very important in debugging a design, and as such are about the first things I look at when I look at analyzing a design.
Case 1
"Create one as-built joint between component1 and root-componentWhen inserted into another assembly."
The difference is that when inserted into a new assembly the top level of this assembly will move with the rest of the components to the new joined location in the nw design it was inserted to.
"Create as-built joints between components"
It makes no difference if you use as built joints or any other joint. They either have to be referenced back to the top level origin, or to another component that then is joined to the top level origin.
Case 2
You can do this but I would not as it creates the same as in case 3 using more work -> SF-MDF 😉
Case 3
This obviously only works in a top level design when everything is built in place and works for the components that are designed in place. This also works with component origins only and the results depend on how you create that rigid group. In the case you describe you'd create a rigid group by selecting the root component (so the top level origin is captured!).
You can then leave "Include child components" selected and it'll capture every component in the design.
If you do leave "Include child components" selected, then make sure that is the only rigid group in the entire design. Otherwise you might be double and triple joining a component and that will result in "interesting" behavior.