<!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>Routing Operations overview</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_topic6" id="xps10_pagetitle">Routing Operations overview</div>
      <hr noshade="true">
      <table cellspacing="4" align="center">
         <tr valign="top">
            <td bgcolor="#f7f7f7" colspan="1" rowspan="1">
               <p class="para_td"><a class="links" href="javascript:void(0)" onclick="top.openFile('routingtools/stock_overview.html');return(false);">Stock Overview</a></p>
            </td>
            <td bgcolor="#f7f7f7" colspan="1" rowspan="1">
               <p class="para_td">Options</p>
            </td>
            <td bgcolor="#f7f7f7" colspan="1" rowspan="1">
               <p class="para_td"><a class="links" href="javascript:void(0)" onclick="top.openFile('routingtools/nested_stock.html');return(false);">Related Topics</a></p>
            </td>
         </tr>
      </table><br><p class="para_topic">The behavior of a <b class="uiTerm">Stock Offset Point</b> is not always obvious during various operations due to its high degree of associativity. This section presents the behaviors you can expect following operations performed in Routing Mechanical, Modeling and Assemblies.
      </p>
      <div class="title_division">Routing operations</div>
      <div class="title_division">SOP part occurrence hiding</div>
      <p class="para_division">Referencing a SOP port in the assembly via any NX operation, hides the occurrence of the SOP port and creates a visible SOP port extract (in the work part) from the SOP port. The visible SOP port extract displays differently and is distinguishable from the other ports. The port in the work part is what affects the stock diameter dependency in the assembly. Deleting the work part port will automatically show the original SOP port occurrence. </p>
      <div class="title_division">Create Path</div>
      <p class="para_division"><b class="uiTerm">Create Path</b> operations may include the selection of a port that is dependent on an SOP. If you are assigning stock as the path is being created, the SOP moves according to the diameter of the stock when the <b class="uiTerm">Create Path</b> operation is complete (provided the MAX_PATH_STOCK_DIA is included in its <b class="uiTerm">Offset Distance Expression</b>). If stock is not being assigned then there is no effect on an SOP during <b class="uiTerm">Create Path</b>.
      </p>
      <div class="title_division">Heal Path</div>
      <p class="para_division"><b class="uiTerm">Heal Path</b> operations may include the selection of a port that is dependent on an SOP. You can assign stock as the path is being created so the SOP changes position accordingly. This happens when (as soon as) the <b class="uiTerm">Heal Path</b> creation is complete.
      </p>
      <div class="title_division">Shape Path</div>
      <p class="para_division"><b class="uiTerm">Shape Path</b> allows you to add spline segment definition points. You cannot add a definition point where a definition point already exists. You can remove a definition point that is dependent on an SOP from the spline definition. This is allowed for both an Interactive SOP and a Port SOP dependent definition point. If it is Interactive SOP dependent, the interactive SOP is deleted along with the definition point. If it is Port SOP dependent, the spline segment is no longer associated to the port (and the segment changes shape accordingly). The port with its SOP dependency remains defined and may change position because its distance expression now evaluates to a different value.
      </p>
      <div class="title_division">Delete Path</div>
      <p class="para_division"><b class="uiTerm">Delete Path</b> operations may cause both a segment dependent on an SOP to be deleted and a component with a port SOP to be deleted.
      </p>
      <p class="para_division">If you delete a segment then any Interactive SOP on which it depends deletes. If the deleted segment depends on a port SOP, the port SOP is unaffected other than its position may change due to a lack of stock from which to derive a value for MAX_PATH_STOCK_DIA.</p>
      <p class="para_division">If you delete a component that contains a port SOP, the port removes as well. Any segment that was dependent on the port SOP no longer has the dependency and may change shape accordingly. If the definition point is interior to the spline segment (not at an end) then the definition point is removed from the spline definition. If a definition point is at an RCP location, the SOP parameters are removed but the segment does not reshape.</p>
      <div class="title_division">Assign Corner</div>
      <p class="para_division"><b class="uiTerm">Assign Corner</b> operations are not applied to spline segments so there is no possibility of affecting an Interactive SOP (created through the <b class="uiTerm">Shape</b> tool). An <b class="uiTerm">Assign Corner</b> could involve a segment that is dependent on a port SOP. Any change that causes the <b class="uiTerm">Distance Expression</b> of the SOP to change value causes the Port to reposition. If a segment that is defined in terms of a port SOP is also a side segment of a bend corner, then two problems may occur: the side segment may become collinear with the other side segment or the side segment may become too short to accommodate the bend. In these cases the bend is removed, as it is in other situations where the bend can no longer be defined.
      </p>
      <div class="title_division">Transform Path </div>
      <p class="para_division"><b class="uiTerm">Transform Path</b> may move or copy a path segment that is SOP dependent. Since the origin of an SOP must reference some defined point, there is no clear solution to redefining the SOP under either a copy or a move operation. If a segment is moved or copied, any Interactive SOP on which the segment is dependent is deleted. Any SOP dependent port retains its original definition, so the port itself remains positioned according to the SOP and is no longer associated to the segment.
      </p>
      <p class="para_division"><b class="uiTerm">Transform Path</b> may move or copy a component containing an SOP dependent port. In a move operation involving such a component, any segment dependent on the port maintains associativity to the port, changing shape as needed. In a <b class="uiTerm">Copy</b> operation, a segment dependent on the port maintains associativity to the selected component. The new copy (occurrence) of the component has no associativity to the segment.
      </p>
      <div class="title_division">Parallel Offset Path </div>
      <p class="para_division">A parent segment may be dependent on an SOP (or several). Children segments may not be.</p>
      <div class="title_division">Subdivide Segment </div>
      <p class="para_division"><b class="uiTerm">Subdivide Segment</b> operations may cause a segment that is dependent on an Interactive SOP or a port SOP to be divided. The SOP remains defined and that segment that still passes through the SOP remains dependent on the SOP.
      </p>
      <div class="title_division">Simplify Path </div>
      <p class="para_division"><b class="uiTerm">Simplify Path</b> does not remove an SOP. <b class="uiTerm">Simplify Path</b> may combine a segment that is dependent on an SOP with another segment. When segments are simplified, one of the segments is deleted and the other is extended. If the segment that is dependent on the SOP is deleted, then the extended segment assumes the dependency on the SOP. If the segment that is dependent on the SOP remains, then the dependency on the SOP remains as defined.
      </p>
      <p class="para_division">It may be that the RCP that is being simplified out is at the location of, and dependent on, an SOP. In this case, the RCP is removed and a <b class="uiTerm">Through Point</b> is defined at that location and is dependent on the SOP.
      </p>
      <div class="title_division">Unify Path </div>
      <p class="para_division"><b class="uiTerm">Unify Path</b> may cause the stock assigned to a segment that is dependent on an SOP to be modified or replaced. This causes the SOP to reposition if its <b class="uiTerm">Distance Expression</b> includes the MAX_PATH_STOCK_DIA expression.
      </p>
      <div class="title_division">Edit Slope Constraints </div>
      <p class="para_division">Both an SOP dependent port and a slope constraint may control a segment. As with any segment controlled by a smart point and a slope constraint, the slope constraint functionality acts to modify the path if the segment is modified by a position change of the smart point. In the example below, the segment joining the tee and the hanger is slope constrained to the alignment vector of the connection port of the tee. The fixture port of the hanger is SOP dependent. Should the hanger port move (in response to a change of stock diameter, for instance), the slope constraint adjusts the path according to slope constraint rules of operation.</p>
      <p align="center"><img align="bottom" src="graphics/stockoff4.gif"></p>
      <p class="para_division">If the port were to move vertically, the resulting path would look similar to the following:</p>
      <p align="center"><img align="bottom" src="graphics/stockoff5.gif"></p>
      <div class="title_division">Stock operations (Assign, Remove, Orient, Merge, Split, and Style) </div>
      <p class="para_division">Any stock operation that alters the maximum diameter of stock assigned to a segment that is dependent on an SOP will effect the position on the SOP, provided the Distance Expression of the SOP contains the MAX_PATH_STOCK_DIA expression. Whenever a stock operation completes, any associated SOP is updated to reflect new stock diameter values.</p>
      <div class="title_division">Place Part </div>
      <p class="para_division"><b class="uiTerm">Place Part</b> operations can result in subdivisions of segments that are SOP dependent. Refer to the <a class="links" href="javascript:void(0)" onclick="top.openFile('routingtools/paths_subdiv.html');return(false);"><b class="uiTerm">Subdivide Segments</b></a> section for details of this general behavior. If a part is placed onto a segment such that the segment is subdivided by an SOP dependent Port or the end of the segment is at the port origin, then segment becomes dependent on the Port location at that point.
      </p>
      <div class="title_division">Delete Part </div>
      <p class="para_division"><b class="uiTerm">Delete Part</b> operations can remove a part containing an SOP dependent port on which a spline segment is dependent at an interior <b class="uiTerm">Through Point</b>. In this case, the <b class="uiTerm">Through Point</b> is removed from the spline segment and the segment changes shape accordingly. If the part being removed is at the end RCP of a segment that is dependent on the port, the RCP simply becomes dumb, defined only as being at that point in space.
      </p>
      <div class="title_division">Move Part </div>
      <p class="para_division"><b class="uiTerm">Move Part</b> operations can result in subdivisions and simplifications of paths. Refer to the <a class="links" href="javascript:void(0)" onclick="top.openFile('routingtools/paths_simplify.html');return(false);"><b class="uiTerm">Simplify Path</b></a> and <a class="links" href="javascript:void(0)" onclick="top.openFile('routingtools/paths_subdiv.html');return(false);"><b class="uiTerm">Subdivide Segments</b></a> section for details. <b class="uiTerm">Move Part</b> can also reposition a part containing a port SOP. If such a part is moved then the port also moves, which may cause a segment associated to that port to change.
      </p>
      <div class="title_division">Clock Part </div>
      <p class="para_division"><b class="uiTerm">Clock Part</b> operations have no effect on an SOP.
      </p>
      <div class="title_division">Lock Part </div>
      <p class="para_division"><b class="uiTerm">Lock Part</b> operations have no effect on an SOP. 
      </p>
      <div class="title_division">Create Fabrication </div>
      <p class="para_division"><b class="uiTerm">Create Fabrication</b> may cause SOP dependent segments to be moved into fabrications. When a segment that is dependent on an Interactive SOP is moved into a fabrication, the SOP is deleted. If the segment is dependent on a Port SOP, the Port SOP is moved into the fabrication only if the component to which the port belongs is moved into the fabrication. If the component is not moved into the fabrications, then the dependency is broken.
      </p>
   </body>
</html>