Hi, I have a big top-level assembly with some multibody parts in it. I can use Split to save the individual bodies to file, and then create an assembly. My question is, how do I replace the original multibody part file in my original top-level assembly, with the new subassembly and individual parts?
I tried using Replace to get the new assembly in place of the old multibody part, however that required me to specifically select each mated face on the new part. Additionally, all of the top-level assembly features (Holes mostly), were then broken.
Is there some way to do this?
Eric, the big obstacle you're dealing with here is changing topology.
when you convert a multibody part to an assembly or an assembly to a part, you're basically having SolidWorks recreate the geometry for each file. When tasked like this, Solidworks creates the new geometry from the parameters of the file in a different order from the original, which affects the naming of faces-on which the entire persistence of mating depends.
This has been a sticky issue with SolidWorks since it's inception and over the releases they've improved the tools used to deal with these situations, but when you go from one file type to another, there's no systematic way to say how the new geometry relates to the old unless you employ tools like named faces and mate references that tell SolidWorks how to substittute one component for another.
An additional factor that you might be overlooking is the loss of context that comes from deleting the multi-body part out of the assembly. If it was created by referencing other components or features of the parent assembly, then deleting it to replace it with your saved-bodies assembly will destroy your ability to update those references.
I design from assembly context, most of the time and after decades of dealing with lost context and mating, I've discovered a couple of good alternatives to replacing a component
You could trying setting your multi-body part as an envelope and then mate your saved-bodies assembly directly to it. Making the mutlibody part an envelope makes it invisible to drawings, parent assemblies of the context assembly, mass property calculations and BOMs.
You can then mate your saved-bodies assembly to the origin of the envelope (turning on align axes) and it will display in the correct location and orientation.
To make your multi-body part into an envelope, select it and go to Component Properties. In the Component Properties dialog, select Envelope and specifiy the configurations inwhich you want the multi-body part to be an envelope.
Try that instead of deleting or replacing the multi-body part.