Designing parts using the Top-Down assembly modeling technique can be extremely useful. If a component is designed with the “top-down” technique, this means it is born in the assembly environment and it is designed using references to other parts within that assembly. Parts that are designed “top-down” have the advantage of being able to update when related geometry in the assembly updates, much like features update in the part environment when other related features are changed.
This can save a lot of time and hassle when it is a desired result, but it can also cost a lot of time and hassle when it is not. What happens when the User A wants to take a component that is designed “top-down” and use it in an assembly other than the one it was originally designed in? User B may decide to adjust the original assembly and before you know it, User A has a part that has mysteriously changed shape so that it no longer meets their design intent. The key in preventing these undesired updates in “top-down” designed parts is properly removing the external references that relate one part to another (or many others, for that matter).
Step 1: Open the Part
When you open a part that has been designed using the “top-down” technique, you may notice that certain features and sketches in the design tree are appended by the notation “->?” This means that those specific features and sketches contain external references to a document that is not currently open. A feature that does not have external references may also display this notation if the sketch that is a parent to the feature does have external references. You can right click on any externally referencing feature and chose “Edit In Context” to open the assembly that this component references. You will notice once this assembly is opened, the notation next to these features and sketches change from “->?” to “->”.
Step 2: Save the Part
If you are now planning on removing the external references to a part that was not originally your design, you should consider that the person who designed this component originally may still want the part to update in the context of their original assembly. It is best practice to use “Save As…” to save your version of the part. When you chose to “Save As…” you will get a message saying you are about to replace the original document with the new one in the assembly unless you check “Save as copy” in the “Save As…” dialogue. Please be sure to choose to “Save as copy”.
Step 3: View the External References
You may wish to see a list of every external reference in the component. This can give you a good idea of what you need to adjust in order for your part to be “free” to stand on its own. Simply right click on the part name in the feature tree and chose “List External References” in the drop down menu. A window similar to the one below will appear:
This window can provide you with detailed information on every external reference in the model. It also provides you with the options to “Break All”, “Lock All” and “Unlock All”. These options can be used as an alternative to removing the references manually. “Lock All” locks or freezes the references until they are unlocked at a later date. This means that changes to the original assembly will not affect this new component. It is fully reversible by choosing to “Unlock All”. However, it does not make adjusting geometry an easy task because much of the geometry may still be tied into the original assembly. “Break All” will blindly break these references, and it is NOT recommended in any circumstance.
It is finally time to actually purge the model of all these external references. This can be a tedious process, depending on how much of the model is dependent on its parent assembly. The key is to start with the latest change and work your way up the feature tree to the oldest changes. Working from the bottom up in the Feature Manager helps prevent rebuild errors.
Most of the external references are likely to reside in the sketch environment. These references will be in the form of relations and dimensions created to the geometry of other parts in the original assembly. These relations and dimensions must be deleted so that the sketch geometry can be redefined internally. Below is an example of a sketch that was created using “Convert Edges”. These edges no longer exist, so the “On Edge” relation must be replaced.
Any easy way to do this is to use the “Display/Delete Relations” dialogue. Through this dialogue, it is easy to delete all relations, leaving the sketch completely under undefined: A simple sketch like this one can be fully defined with only a few relations and dimensions, however it may be more difficult to constrain a sketch with more complicated geometry. The following sketch shows how this can be easily accomplished:
This sketch has “On Edge” and co-linear relations to another part. You may also notice that there are some dimensions that don’t seem to point to any edges. This is because these edges exist in another model. These are all references that need to be removed and replaced. You can easily get rid of these relations by choosing to delete all relations in the “Display/Delete Relations” dialogue, however, that would also result in the deletion of a number of internal relations in this sketch. If you don’t wish to take a chain saw to the entire sketch, but want a fast and easy way of deleting the unwanted relationships, there is a filter in the “Display/Delete Relations” tool to only view external references. From here you can easily delete ONLY the external references and maintain the rest:
You can see that all of the symmetry relations are maintained as well as the dimensions that do not reference another components geometry.
This sketch is still very much under defined, so another tool that can be used is “Fully Define Sketch”. This tool allows you to select relations you’d like SolidWorks to look for in the sketch. It also allows you to define a base point or base line for SolidWorks to dimension the sketch to. Once these selections are made, you may get the following message:
This means the geometry itself is fully defined, but the location is not. The easiest way to get a fully defined sketch at this point is to dimension your geometry to the origin of the part.
In the end, you want your feature manager tree to look something like this. You’ll notice, all of those pesky notations from before (“->?” and “->”) are gone, showing that you part is all grown up – it can now survive on its own, independent of the assembly it was born in!
There are many other techniques that may be used for freeing a part from its external references. Apart from the sketch environment, sketch planes can be edited so that only internal planes are referenced and extruded features can be edited so that geometry from other parts isn’t used for “offset” or “up to” start and end conditions. All of these techniques (and more) are taught in our Advanced Assembly class. For more information on classes, click here.