<!DOCTYPE html
  PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!--
Copyright (c) 2006 UGS Corp.

All Rights Reserved.

This software and related documentation are proprietary to UGS Corp.
-->
<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>Reference Sets</title>
      <script language="javaScript">
        abridged="false";
        displayConditions=new Array();
      </script>
      <link type="text/css" href="../css/main_styles.css" rel="stylesheet">
   </head>
   <body class="bodydocs" onload="top.pageLoader()" bgcolor="#FFFFFF">
      <div class="title_topic4" id="xps10_pagetitle">Reference Sets</div>
      <hr noshade="true">
      <p class="para_topic">Use the reference set load options to specify a list of defaults that NX searches for when an assembly is loaded.</p>
      <p class="para_topic">Before loading your assembly, edit the reference set list box. You can specify the <a class="links" href="javascript:void(0)" onclick="top.popUpPage('assemblies/index.html?goto=assemblies/large_assy_intro.html&vars=-aux,-home','linkInter','menubar=yes,status=yes,resizable=yes,toolbar=yes,scrollbars=yes,location=no,directories=no');return(false);">reference set</a> used when the component was last saved.
      </p>
      <p class="para_topic">When a component is opened using the reference set list, it is loaded using the reference sets highest on the list. Therefore, as an assembly structure is loaded top down, it sets the reference sets of each component according to the list.</p>
      <p class="para_topic">As with the <b class="uiTerm">From Search Folders</b> option, you can use the <b class="uiTerm">Add</b>, <b class="uiTerm">Remove</b>, <b class="uiTerm">Move up</b> and <b class="uiTerm">Move down</b> buttons to edit items in the reference sets list box.
      </p>
      <p class="para_topic">Depending on the <b class="uiTerm">Apply to All Assembly Levels</b> setting, the behavior of default reference sets for the components of that subassembly are straightforward if the component is a child of the assembly being loaded.
      </p>
      <div class="title_division">When the Apply to All Assembly Levels check box is selected</div>
      <p class="para_division">By selecting the <b class="uiTerm">Apply to All Assembly Levels</b> option, the reference sets are applied to components all the way down an assembly tree.
      </p>
      <p class="para_division">If a subassembly is loaded using a user-defined reference set, the same default reference sets will be applied to all of the components included in the subassembly reference set. The behavior can easily cascade all the way down to the piece part level.</p>
      <p class="para_division">The reference set list will also be applied to all children of an assembly loaded using the Entire Part reference set.</p>
      <div class="title_division">When the Apply to All Assembly Levels check box is not selected</div>
      <p class="para_division">If the reference sets list causes the subassembly to be loaded using a user-defined reference set, the reference set defaults will <em>not</em> be applied to the components of that subassembly. Instead, the components will use the reference set that the subassembly reference set referred to when it was last saved. If a subassembly is loaded using the Entire Part reference set, the same default reference set rules will be applied to the immediate children of that component.
      </p>
      <p class="para_division">If the reference sets list dictate that a subassembly is opened with the Empty reference set, none of the subassembly's children will be loaded.</p>
      <div class="title_division">Example of using Reference Sets</div>
      <p class="para_division">If you do not edit the reference set list, your assembly components load using the reference set with which they were last saved. While this is often quite acceptable, there may be other occasions when you want to use entirely different reference sets.</p>
      <p class="para_division">For example, you can use reference sets to determine whether you load solid bodies or faceted representations. If you last saved an assembly with all components using the SOLID reference set, it would be inconvenient to load all of the solid data in your next session if you only need the faceted representations. Not only would you need to spend time changing reference sets for the relevant components, but you would also have loaded more data into your session than necessary.</p>
      <p class="para_division">By setting appropriate default reference sets, you can open components with the correct reference sets when you first load the assembly.</p>
      <p class="para_division">Under some circumstances, it is better to clear the <b class="uiTerm">Apply to All Assembly Levels</b> check box. This is the case when you want to preserve any user-defined reference set definitions.
      </p>
      <div class="title_division">Example of Apply to All Assembly Levels</div>
      <p class="para_division">In the following example, the LHS and RHS reference sets determine whether subassembly C displays the solid bodies for a left-hand or right-hand version of that part. Component F stores a solid body for the left-hand subassembly in a reference set called MIRROR_SOLID. The right-hand version is in the SOLID reference set.</p>
      <p align="center"><img align="bottom" src="graphics/fil_v04fi29.gif"></p>
      <div class="title_division">Loading when Apply to All Assembly Levels is not selected</div>
      <p class="para_division">The default reference set rules dictate that component C is loaded with the reference set LHS (As Saved). With the <b class="uiTerm">Apply to All Assembly Levels</b> check box not selected, the default reference sets are not applied any further down that branch of the assembly tree. This correctly preserves the selection of the reference sets for F and G. Selecting the <b class="uiTerm">Apply to All Assembly Levels</b> check box would cause the LHS reference set to include the SOLID reference set of F (containing the right hand solid).
      </p>
      <p class="para_division">However, there are occasions where you may want to select the <b class="uiTerm">Apply to All Assembly Levels</b> check box. One example is the situation where all of your piece parts contain a SOLID reference set (containing the solid data) and a FACET reference set (containing faceted representations of the same solid bodies).
      </p>
      <p class="para_division">An easy way to view your assembly as solid or faceted bodies is to put the appropriate reference set name at the top of the reference set list box and select the <b class="uiTerm">Apply to All Assembly Levels</b> check box. This ensures that the reference set rules apply to the piece part components.
      </p>
      <p align="center"><img align="bottom" src="graphics/fil_v04fi28.gif"></p>
      <div class="title_division">Loading when Apply to All Assembly Levels is selected</div>
      <p class="para_division">In this example, subassemblies B and C have reference sets called ASSEMBLE which reference each of their components and exclude any other entities such as construction geometry. This provides a clean set of data for use in higher level assemblies.</p>
      <p class="para_division">When opening Assembly A, the <b class="uiTerm">Apply to All Assembly Levels</b>check box must be selected to ensure that the default reference sets apply to the components of subassemblies B and C.
      </p>
      <div class="title_division">Component updates</div>
      <p class="para_division">When you open an assembly and load its components, any component that was modified since its parent assembly was last saved is automatically updated. To obtain a summary of these component updates, choose <a class="links" href="javascript:void(0)" onclick="top.popUpPage('assemblies/index.html?goto=assemblies/analy_update_report.html&vars=-aux,-home','linkInter','menubar=yes,status=yes,resizable=yes,toolbar=yes,scrollbars=yes,location=no,directories=no');return(false);"><b class="uiTerm">Assemblies</b>&rarr;<b class="uiTerm">Reports</b>&rarr;<b class="uiTerm">Update Report</b></a>.
      </p>
      <p class="para_division">You can also have an update report displayed automatically when an assembly is loaded by choosing <a class="links" href="javascript:void(0)" onclick="top.popUpPage('assemblies/index.html?goto=assemblies/prefs_intro.html&vars=-aux,-home','linkInter','menubar=yes,status=yes,resizable=yes,toolbar=yes,scrollbars=yes,location=no,directories=no');return(false);"><b class="uiTerm">Preferences</b>&rarr;<b class="uiTerm">Assemblies</b></a> and selecting the <b class="uiTerm">Display Update Report</b> check box.
      </p>
   </body>
</html>
