In this book, the term master model refers to a technique where an entire assembly is laid out or has its major faces constructed in a single part, and that part—or elements of it—is then placed into other files from which the individual parts are created. As such, the major faces and major relationships are created in a single file, while all of the details are created in the individual files. Master model techniques are generally used in situations that in-context design cannot deal with or where in-context design is cumbersome.
Master model techniques comprise four separate features or functions that have some similarities, and they rely heavily on the knowledge of parent/child concepts and multiple bodies. These four features are Split, Save Bodies, Insert Part, and Insert Into New Part.
As an example of a master model technique, consider the mouse model shown in Figure 33.1. The overall shape is modeled as a single part and then split into several bodies using multibody methods. Then, using the four master model features, the individual bodies are used to create individual part files, where detail features are added.
Understanding the concepts of parent and child relationships between documents is key to understanding how master model techniques work. A parent document is always the driving document—the one that existed first—so changes to the parent propagate to the child. The child document is always dependent on the parent. In these master model schemes, it isn't always possible to find the child document from the parent, but you can always find the parent from the child.
The concepts of Push and Pull type functions were developed for this book, so you may not find them in other documentation. Classifying the techniques can be helpful in understanding which tool is best for various situations. Push simply means that the relationship is defined in the parent document, and data is pushed out. Pull means that the relationship is defined in the child document, and data is pulled in.
Here's a quick summary of the four master model tools that this chapter covers:
The one common weakness of all these tools is on the file management side, or more precisely, the body management side. It comes down to a question of what happens to the child document if you rearrange the bodies in the parent document. Body management issues can arise in a number of ways. The Insert Part feature is the one that has received the most development attention from SolidWorks when it comes to the robustness of file and body management issues, but Insert Part still doesn't cover all the functionality. (You cannot insert selective bodies; you must insert all solids or all surface bodies.)
Pull functions are initiated from the child document and pull data from the master model (parent document) into the child document. These functions insert a feature into the child that points to the parent, but they don't insert a feature into the parent that points to the child. The features that fall into this category are Insert Part and Insert Into New Part.
You initiate Insert Part from the child document by choosing Insert ➢ Part from the menus or by clicking the Insert Part button in the Features toolbar (which may not be on your toolbar by default). As the name suggests, this feature pulls one part into another. Insert Part gives you the option to bring forward all solid and surface bodies, planes, axes, and sketches in addition to other options. You can even break the link between the inserted part and the parent data. This simply copies all the sketch and feature data into the current part. The Mirror Part feature also uses this same PropertyManager with the same options. The Insert Part PropertyManager interface is shown in Figure 33.2.
Figure 33.3 shows the FeatureManager of a part where the only feature is an Insert Part feature. All the solid bodies are listed under the normal Solid Bodies folder as well as under a second Solid Bodies folder under the inserted-part icon. Other inserted items—such as surface bodies, planes, sketches, and axes—are also listed in folders under the inserted-part icon.
You cannot be selective about which bodies are pulled forward—solids or surfaces—but you can delete unwanted bodies after you have brought them all in (using Delete/Keep body). If you are trying to handle data efficiently, this may not be the best option for you. Because you must first bring forward all the bodies and then delete those you don't want, the body data is still stored inside the part. Remember that the Delete/Keep bodies is a history-based feature and doesn't actually delete; it suppresses the body and simply makes it inaccessible in the part history. If you are inserting a part with many complex bodies, you may want to use a more selective method such as Insert Into New Part or Save Bodies, each of which is described in more detail later in this chapter.
One of the advantages of using Insert Part is that you can insert the part at any point in the child part's feature history. Using configurations, you can also insert the parent part at any point along the parent's feature history. Using part history is one of the trickiest aspects of working with multiple models, whether you are working in the context of an assembly or using a master model technique.
For the inserted part, you can set configurations of the parent document in the External References dialog box, which is available through the RMB menu of the feature that is inserted into the child document FeatureManager. The External References dialog box is shown in Figure 33.4. If the overhead of bringing many bodies forward only to be deleted is an issue for you, then you can use parent part configurations to delete the bodies first; then you can select which configuration to insert by using List External References from the child document.
As the original inserted bodies are modified by additional features in the child document, the names change, and they are removed from the folder under the inserted part and appear only in the Body folders under the top level.
File management is a real issue with all these master model functions; in fact, it may be the biggest problem that arises with them, although you could say the same thing about overall body management. It's safe to say that you should be careful and follow file management best practice recommendations when performing name changes for documents with external references, especially if they use any of these features.
If you want to get a little practice with the Insert Part feature, follow this workflow:
The Insert Part feature has received lots of attention from SolidWorks developers. For this reason, Insert Part in more recent versions of SolidWorks is most resilient to changes and is the most flexible when allowing the user to make changes.
For example, if the name of the parent file changes, you can edit Insert Part to recover from that error. If the number of bodies in the parent part changes, you can edit the results in the child part to prevent more downstream errors.
Unfortunately, this feature is also inefficient for inserting parts with large numbers of bodies. You may want to choose one of the following techniques for using a single body from a part with a large number of bodies. Insert Into New Part would be a good function for this because it allows you to be more selective about which body is brought forward from the parent to the child.
Insert Into New Part qualifies as a Pull function because it doesn't create a feature in the FeatureManager of the parent file, even though it's actually initiated from the parent rather than from the child. This function doesn't have a drop-down menu location, nor does it have a toolbar button. You can initiate it only through the RMB menu from either the FeatureManager Solid or Surface Bodies folders or from the individual bodies within the folders.
This gives Insert Into New Part both advantages and disadvantages when compared to Insert Part. One advantage is that it can selectively insert either solid or surface bodies, or even selections of both types. You can Ctrl+select multiple bodies (solid and/or surface) to bring forward only the bodies you need. However, it cannot bring forward planes or axes, or change the selection of what is brought forward after you create the feature. You also cannot use it to add a body to an existing part file; you can only use it to create new documents. This is definitely a good news/bad news situation, but with this information, you can make a more informed decision about which function to use.
When you use Insert Into New Part to place bodies into a part, the bodies are not shown in the same way that the Insert Part function shows them. In Figure 33.5, the Stock feature symbols are used rather than the Inserted Part symbol.
Keep in mind that if this feature loses its referenced bodies, they cannot be reattached. This means that you cannot intentionally replace a body. For most users, neither situation (lost references or the need to replace bodies) should arise often, if at all, but it may still be a roadblock when implementing this function.
Push functions are initiated from the master model (parent document) and push data from the parent part out to a child part. A feature in the tree of the parent identifies the point at which the model is pushed out to the child, and the child file can be found from the parent. These options combine to give the Push functions better overall control than the Pull functions; however, there might be other factors that are more important.
The first feature in the child part is a Stock feature, which contains a reference back to the parent, so the parent can be found from the child. The features that fall into this category are Split and Save Bodies. The bidirectional identification of the source (parent) and target (child) of the feature offers a distinct advantage over the Pull functions, which don't allow you to identify the child from the parent document.
The Split feature has three functions, two of which are plainly visible and one that's hidden. Its main function is, of course, to split a body into multiple bodies. It can also save the bodies to individual parts. The hidden function is that it can then create an assembly and reassemble the individual parts back into a complete assembly where all the parts are placed in their original relationships to one another. The Split PropertyManager is shown in Figure 33.6.
The primary function of the Split feature is to split a single solid body into multiple bodies. You do this with sketches, planes, or surface bodies. The Split feature can save both the preexisting bodies and any bodies that result from the split as individual part files using the Stock feature as the initial feature in the part.
The ability to save solid bodies out to part files directly from the lower half of the Split PropertyManager caused some serious file management problems in earlier versions of SolidWorks. Fortunately, recent versions of SolidWorks have removed most of the bugs from this complex feature.
When you save the bodies to individual part files, SolidWorks automatically assigns names for the parts. These names take the form of <Body1>.sldprt
. You can manually assign names either in the lower half of the Split PropertyManager or in callouts on the screen. You can change the names later if necessary. Features added to the parts created from the Split feature should update correctly when you rename the parts in the Split feature.
One drawback of creating parts using the Split feature is that you cannot insert the body geometry at any point in the child feature history. It goes only at the top. You cannot insert the data into an existing part; it can be put only into a new part.
After you create the Split feature and save bodies to new parts, the RMB menu displays the Create Assembly option, which puts all the parts from the bodies in the original part back together in the correct positions. Parts within the assemblies that you create this way are fixed in space with the same relationship to the assembly origin that they originally had as bodies to the part origin. Although this arrangement doesn't need mates to be properly positioned, it doesn't easily allow motion. To allow motion, you must mate the parts using more traditional assembly methods.
Create Assembly is also a separate feature, found in the Insert ➢ Features menu. It uses the same icon as the Split feature. It will not allow you to put the bodies into an existing assembly, you have to create a new one. It will allow you to combine the body results from multiple Split features, to allow some efficiency.
To access the Save Bodies feature, you can either right-click the Bodies folder and select it from the RMB menu or choose Insert ➢ Features ➢ Save Bodies from the menu options. Save Bodies works by displaying path and filename information in the Resulting Bodies selection box of the Split PropertyManager. However, Save Bodies enables you to create an assembly right in the PropertyManager for the feature, rather than as a hidden feature with no record of the assembly name created by the feature. The PropertyManager for Save Bodies is shown in Figure 33.7.
Save Bodies is found in the Solid Bodies folder RMB menu and the lower half of the Split feature PropertyManager. You can use it to save bodies to parts if the bodies already exist. Save Bodies also has the Create Assembly functionality built right into the PropertyManager.
In both the Split and Save Bodies PropertyManagers, the Consume Cut Bodies option means that if a body is saved to a part, it is removed from the parent part. So, if you saved all the bodies to files, the parent part would be empty after the Split or Save Bodies feature in the FeatureManager.
Some of the concepts presented in this chapter may not make much sense until you apply them to a specific situation. The goal of this tutorial is to demonstrate the strengths and weaknesses of the various functions, as well as to give you some practical experience with the file management issues you'll encounter. In the following tutorials, you will use each of the four tools with the mouse multibody part to become familiar with their different functions.
To work with the Insert Part function, follow these steps:
Mouse Base Part.sldprt
. You can access Insert Part by choosing Insert ➢ Part from the menu options. After you issue the command, SolidWorks will attach the part to your cursor and prompt you to specify a location for the inserted part in the PropertyManager. Drop the part at the origin of the child part, or simply click the green checkmark icon to accept the part. There is no need to use the Move dialog box; if it appears, deselect the option that enables it. For this part, don't transfer any of the optional items, only the solid bodies.Mouse Base Part.sldprt
) is open, close it. In any of the child parts, the inserted-part feature shown in the tree should display the Out Of Context symbol (−> ?). Right-click the inserted-part feature and select Edit In Context; this will open the master model.
Notice that from the master model, you have no way of knowing where the child parts are or even if any child parts exist. Notice also that there's no easy way to create an assembly.
To work with the Insert Into New Part function, follow these steps:
Base Part.sldprt
. Make sure the part is set to the Default configuration. If it's set to a different configuration, inserting bodies will require an extra step of assigning which part configuration to use in the assembly.To work with the Split function, follow these steps:
To work with the Save Bodies function, follow these steps:
Each of the four functions covered in this chapter has strengths and weaknesses. The Insert Part feature is probably the most flexible of them, mainly because of the additional items you can bring forward from the parent document, and the fact that it can handle both solid and surface bodies. The Split feature also has unique strengths because of its ability to split bodies, save multiple bodies to files, and reassemble the parts as an assembly.
If you are working with surface bodies, you must use Insert Part or Insert Into New Part. Another important strength can be found in the Save Bodies feature, which makes the child accessible from the parent and identifies the assembly in the parent.
3.136.22.50