SolidWorks 2011 Assemblies Bible - Matt Lombard [12]
Methods such as those mentioned previously are great for any part that is unique to an assembly, but should not be used for library type parts. If you have a part that will be used in more than one assembly, it should not have any external references. To be clear, all of these methods create external references except bottom-up assembly (where parts are modeled individually, and then assembled to one another or to a skeleton).
Any library parts that you have, or standard hardware such as nuts, bolts, washers, and so on, should not be modeled with references, nor should you use them in multi-body parts.
Without sounding against multi-body modeling, several SolidWorks users think eliminating the distinction between assemblies and parts would be a good thing. That point of view works for only the simplest small assemblies with simple parts. It's easy to come up with situations in which the tree management tools required to maintain models built using that philosophy through changes do not even exist in the software.
Creating an alternative to multiple assemblies
It may seem very inefficient to re-create or copy assemblies for different uses. In Chapter 8, you will learn about another way: using assembly configurations. If you are already familiar with part configurations, assembly configurations work on a similar principle. Assembly configurations are a great tool with a lot of theoretical benefits and practical limitations. As with most other functions in SolidWorks, when you need to create assemblies for multiple purposes, you may find that assembly configurations meet your needs. Or you may find it easier to just save out a copy of the assembly, knowing that changes for the sake of rendering do not diminish the usefulness of the data for something like exploded views, or managing external in-context references.
Creating Assembly Templates
When you have assemblies with different purposes, you may also need multiple assembly templates. One example of using assembly templates to help reuse work is saving an animation in a template. If you save an assembly template that contains a default turntable animation, then you can put other assemblies right into the turntable template and you've got an instant display animation. (Animation is covered in detail in Chapter 23.)
Another example of a useful assembly template would be a rendering setup with environment, background, and lighting. Putting a part or assembly into the template before doing a stock rendering can help you standardize renderings and work through them more quickly.
The steps to create an assembly template are similar to those for setting up a part template:
1. Specify a custom location for all your templates. You can do this at Tools⇒Options⇒File Locations⇒Document Templates. You should save it in a location such as D:/Library/Templates/. For a group of users, you may want to use a network location so you can share the templates.
2. Start with an assembly that has most of the settings you intend to use.
3. Add whatever animation, scene, or light settings you want. You may have to add a dummy assembly to get the settings right, and then delete it before saving it as a template.
4. Set the options in Tools⇒Options⇒Document Properties the way you want them. Pay special attention to the Drafting Standard, Units, Model Display, and Image Quality settings.
5. Rename the standard planes as appropriate. If your assembly template is bound to be used for injection mold tooling, you may name planes to establish the Parting Plane. If you are creating architectural assemblies, you may have planes called Plan View, Side Elevation, and North Elevation.
6. Make sure the custom properties (found at File⇒Properties⇒Custom) for the assembly template are set the way you want them. Remember that you can use Tags in some ways like custom properties. In fact, custom property settings might be a reason for making separate assembly templates. You might have a different set of custom properties for a tooling assembly used in manufacturing as opposed