Say I have an in-context part that I want to convert to an assembly, but I also want to retain the context. How is this accomplished?
Please see the attached example. In Assembly_AB, Part_B was created in the context of Part_A. I want to convert Part_B.SLDPRT to Part_B.SLDASM but retain the context.
My apologies if I am not using the proper terminology.
I think the right thing to do is to talk you out of it. Do you have a good reason for doing this?
You can save an assembly as a part.
Saving a part as an assembly doesn’t make any sense. There is no way to do it under Assembly Features, and no way to do it under Reference Geometry. The only thing I can think of is an envelope. Do you want to make it an envelope in an assembly? You can save a multibody part as an assembly, but it becomes a bunch of parts in an assembly.
When I opened the assembly, the part came in out of context, still looking for the assembly on your hard drive, and I couldn’t find a way to replace the assembly.
(That’s not entirely true, but I would have had to throw the unthrowable switch - the “Allow Multiple Contexts” switch).
My first attempt was to make it virtual, but it breaks the external references when it does that.
The only thing I can think of that you might be getting at is to put the part into a subassembly and retain the reference. That’s easy.
If that’s what you’re trying to do, just right click on the part in the assemblyAB and select Form New Subassembly Here. It goes in as a virtual part.
If that wasn’t it, then you have to either explain what / why or let me talk you out of it.
I have to agree with Matt. I also don’t understand why you want to do it. If you want to add another Part (or Parts) to it, why not just start a new Assembly, starting with this Part?
I think I may have worded my original post incorrectly.
I want to create a part in the context of an assembly, then “Form New Subassembly” with the in-context part.
I do not want to “File > Save As (.SLDASM)” the in-context part.
The issue arises when the in-context relations get wiped out during the “Form New Subassembly” operation.
Perhaps I should describe a typical application: a drill template with some edge locator roll pins.
Say I have a panel with a hole pattern. Some of the holes are missing on the real-world parts. From the assembly that contains the panel, I can quickly and accurately create the drill template, which is nothing more than a flat piece of sheet metal, via Insert > Component > New part.
If I then want to add some 1/8” dia. roll pins to the drill template, I have to convert it into an assembly. This is where the rub is.
You keep saying “part in context of another part”… Just to confirm, you mean “part in context of another assembly” that references parts in that assembly, right? Because the workflow you’re describing with “Insert->Component->New Part” does not exist in part documents…
I don’t think this workflow is going to be possible. You just can’t pull the part out of the assembly where it has references and put it a layer deep. If you really need to retain your in-context references, you are going to have to start your workflow by creating the subassembly and putting it into your main assembly.
Unfortunately, the “Insert->component->New Part” workflow that automatically creates your first sketch on the plane you select is not going to work. Even if you create your new subassembly first, then edit the subassembly in context, the Insert->Component->New Part command will not allow you to select a face of the main assembly to start your sketch. You’ll have to somehow get the subassembly into position with some mates or something before you start sketching your part.
Yea, I am confused why someone would want to do this. I do drill templates all the time and create a template plate with no holes, insert it into the assembly with the other part, then add the in context holes. You can suppress it in the assembly so it doesn’t show on BOM’s if you want to use that assembly elsewhere, but typically the assembly is only for the hole relationships in my case.
Why make things difficult when they don’t need to be.
My guess is he’s being asked by the production to lay-out the step-by-step process and in order to do so, he has to create an assembly to add a level to a long existing assembly to distinguish the relaying of the assembly to a new workstation for the next operation. The new assembly would be in the old asssembly, containing the part and keeping it’s reference to the new assembly.
The overall size and shape of templates are often driven by the part or parts that they will be used on. This is where the desire to create them in context arises from.
Is there any reason why you’re not using a part inserted directly into another part as a solid body? That gets rid of the assembly and the in-context.
Try Matt’s suggestion. In a previous life I worked with RF housings. An 8”x8” housing could have 45-70 screws attaching the cover. So I’d insert the housing into the cover part to layout the lid in context of the housing. Delete the housing body when done and the cover was good to go. During the prototype stage the housing shape and placement of the cover screws would change. If the number of screws changed I’d need to edit hole wizard sketch otherwise I only needed open the file to update the cover drawing.
I think that this is why when I make a part related to other parts I kill the external relations.
so this part that is related to other parts is dependent on other parts that will not be in the new form sub assembly feature of the new sub assembly and that will destroy those relations that you would want to keep when inserted into the new assembly.
have you considered some of the other options such as the pack and go?
If your assemblies are that closely related that may be an option to copy the hole assembly and make the changes to the parts inside as needed.
Final option is to bite the bullet and recreate the relations to the new parts when the sub assembly is inserted into the new assembly, or just recreate the part.
Typically when I use external relations to help make a part inside an assembly I will open the part delete any external relations and then define the part the fully define sketch command helps a lot with this and copying acad sketches to parts.