<!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>Pattern Considerations</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_topic3" id="xps10_pagetitle">Pattern Considerations</div>
      <hr noshade="true">
      <div class="title_division">Pattern Origin and the WCS</div>
      <p class="para_division">The pattern origin is defined by the origin of the WCS in the pattern master part file. The pattern origin is aligned with the specified pattern destination origin, and is marked with a display-only X.</p>
      <div class="figure">
         <p align="center"><img align="bottom" src="graphics/fmt_v07at14.gif"></p>
      </div>
      <div class="title_figure">Pattern Origin Display</div>
      <p class="para_division">The pattern origin and the user-specified pattern control points can be used to select a pattern object. A pattern can also be selected by the text representing its.</p>
      <div class="title_division">Moving the WCS in the Master File</div>
      <p class="para_division">If the WCS has been moved in the pattern master part file, the origin of the pattern remains in place, but the display of the pattern geometry moves with respect to the origin.</p>
      <div class="figure">
         <p align="center"><img align="bottom" src="graphics/fmt_v07at13.gif"></p>
      </div>
      <div class="title_figure">Effect of Moving the WCS in the Master File</div>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body">You can control the display of the pattern origin marker and pattern control points by specifying the display parameters during pattern retrieval, or by editing them for the existing pattern objects, using Edit&rarr;Object Display. </p>
               </div>
            </td>
         </tr>
      </table>
      <div class="title_division">Patterns and Space Considerations</div>
      <p class="para_division">Since a pattern object represents the pattern master part file as a single object in your current part file, it can contain many patterns created from extremely large pattern master part files, without increasing the size of your current part file. Keeping the data in your part file as small as possible enhances system performance, reduces the disk space and memory requirements of your system.</p>
      <div class="title_division">For Example...</div>
      <p class="para_division">You may want to add a washer to a standard bolt. To do so, you retrieve the pattern master part file in which the bolt head is modeled, and add the washer, then refile the part. From then on, all other parts referencing that pattern master part file will contain the new washer. This can become a problem if any one of the parts, containing the bolt, does not allow room for the washer.</p>
      <div class="figure">
         <p align="center"><img align="bottom" src="graphics/fmt_v07at12.gif"></p>
      </div>
      <div class="title_figure">Exercise Caution When Altering Master Patterns</div>
      <p class="para_division">You can protect files by placing them in a directory, and giving the write and edit access to this directory to your manager only. This allows all users to retrieve patterns from this directory, but not to edit or change the master file without management's permission.</p>
      <div class="title_division">Automatic vs. Manual Updates</div>
      <p class="para_division">The term &quot;Update a pattern&quot; means to re-retrieve pattern data from the disk. Updating a pattern displays any saved modifications made to the pattern master part file.</p>
      <p class="para_division">A Pattern updates automatically or manually. When done automatically, patterns are updated as needed every time the displayed part is changed, a new part is opened or imported, a pattern object is retrieved, or a pattern object is replaced. When done manually, updates occur only when you manually perform an update.</p>
      <p class="para_division">Automatic updates ensure that the latest pattern data that exists on disk is always reflected in all displayed pattern objects during the current NX session.</p>
      <p class="para_division">Manual updates give you more control over when patterns are updated. You may prefer manual updates when working with large patterns, or if you have a large number of patterns contained within very large parts or assemblies; in this situation, automatic updates may not be desirable due to the additional time required to update all the patterns.</p>
      <p class="para_division">The customer default UG_autoPatUpdate is used to determine whether patterns are automatically or manually updated:</p>
      <ul>
         <li>
            <p class="para_item">If UG_autoPatUpdate is set to yes, patterns are automatically updated.</p>
         </li>
         <li>
            <p class="para_item">If UG_autoPatUpdate is set to no, automatic updates are not done.</p>
         </li>
      </ul>
      <p class="para_division">See Customer Defaults and Update Pattern for additional information.</p>
      <div class="title_division">Patterns and Directories</div>
      <div class="title_division">Required Directory Searches</div>
      <p class="para_division">The system must search its directories to locate the pattern master part files when the following operations are performed.</p>
      <ul>
         <li>
            <p class="para_item">File&rarr;Open, Assemblies, or File&rarr;Import&rarr;Part (containing pattern objects.)</p>
         </li>
         <li>
            <p class="para_item">Retrieve Pattern, Expand Pattern, Update Pattern, and Replace Pattern.</p>
         </li>
      </ul>
      <div class="title_division">Search Order</div>
      <p class="para_division">Unix:</p>
      <p class="para_division">When any of the above operations is performed, the directories are searched in the following order provided a full path is not specified.</p>
      <ul>
         <li>
            <p class="para_item">The directory from which NX was started.</p>
         </li>
         <li>
            <p class="para_item">The directory defined by the UGII_PATDIR environment variable.</p>
         </li>
         <li>
            <p class="para_item">The directory defined by the UGII_UTIL environment variable.</p>
         </li>
      </ul>
      <p class="para_division">Windows:</p>
      <p class="para_division">The system uses the search order specified above unless a File Selection Box displays. If there is a File Selection Box, then the system only looks in the directory (folder) specified in the File Selection Box.</p>
      <p class="para_division">File Selection Box</p>
      <p class="para_division">For operations where the system opens a File Selection Box (such as Retrieve Pattern), the directory that displays in the File Selection Box is specified by the UGII_PATDIR environment variable if it is defined. Otherwise, the directory that displays in the File Selection Box is specified by the NX start up directory.</p>
      <div class="title_division">Min/Max Box and Retrieving a Pattern</div>
      <p class="para_division">Whenever you retrieve a part containing pattern objects, the system tries to retrieve the data used to display each pattern from the corresponding pattern master part file. If any of these files cannot be found, the system displays the pattern origin marker, and a max/min box (unless the max/min box display parameter is set to OFF). The max/min box displays the approximate space the pattern object would take up if it had been loaded.</p>
      <p class="para_division">Note that if an external Open C and C++ API program is used to save a pattern master part file, the max/min box does not display during subsequent pattern part retrievals that read that master. In this case look for any error descriptions under Format&rarr;Pattern&rarr;List Pattern Errors. The origin marker, in these cases, is displayed.</p>
      <div class="title_division">Cautions when Using Patterns</div>
      <div class="title_division">Part Conversion</div>
      <p class="para_division">Converting parts containing pattern data (pattern master part files) using refile_part causes a loss of pattern data. To regenerate the pattern data, save the part again with the Save Pattern Data switch on. This switch is supported in interactive NX, Open GRIP, GRIP Batch and internal Open C and C++ API only.</p>
      <div class="title_division">Undo</div>
      <p class="para_division">Pattern operations do not support Undo. Most attempts to use Undo after a pattern operation do nothing or generate an Undo Unavailable message. However, since Undo is not supported, we recommend that you not attempt to use it after a pattern operation.</p>
      <div class="title_division">Filing</div>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/warning.gif" alt="Warning" title="Warning"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_warning">
                  <p class="para_warning_body">  Do not attempt to save pattern or shaded data with the File&rarr;Save&rarr;All Parts or Save All and Exit options. Only the pattern or shaded data for the displayed part will be saved. To save pattern or shaded data for multiple parts, use File&rarr;Change Displayed Part and then File&rarr;Save&rarr;Part or Part As individually for each pattern master part file.</p>
               </div>
            </td>
         </tr>
      </table>
      <p class="para_division">Attempts to display patterns whose data has been invalidated in this way will see the following error under Format&rarr;Pattern&rarr;List Pattern Errors:</p>
      <p class="para_division">No pattern data found - Pattern data must be recreated</p>
      <p class="para_division">See technical documentation for an explanation.</p>
      <p class="para_division">Once the pattern data is regenerated, patterns will update automatically in a new session, or Format&rarr;Pattern&rarr;Update Pattern can be used to update pattern data in an existing session.</p>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body">  When using the File&rarr;Options&rarr;Save Options&rarr;Pattern Data Only and Pattern and Shaded Data options, the system displays a warning to let you know that pattern data for assemblies will only be saved when the work part and the displayed part are the same.</p>
               </div>
            </td>
         </tr>
      </table>
      <div class="title_division">Open C and C++ API</div>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/warning.gif" alt="Warning" title="Warning"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_warning">
                  <p class="para_warning_body">  Do not attempt to save Pattern data or shaded data with an external Open C and C++ API program. If you save a part containing pattern data in external mode, the pattern data in that part will be lost. To regenerate the pattern data, save the part again with the Save Pattern Data switch in internal Open C and C++ API, interactive NX, Open GRIP or GRIP batch. </p>
               </div>
            </td>
         </tr>
      </table>
   </body>
</html>