<!-- Converted by db4-upgrade version 1.0 -->

<refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="xpush">

<refmeta>
  <refentrytitle>XPUSH</refentrytitle>
  <manvolnum>nged</manvolnum>
  <refmiscinfo class="source">BRL-CAD</refmiscinfo>
  <refmiscinfo class="manual">BRL-CAD MGED Commands</refmiscinfo>
</refmeta>

<refnamediv xml:id="name">
  <refname>xpush</refname>
  <refpurpose>Pushes the effects of transformation matrices in the paths,
from the specified <emphasis>object</emphasis> to the primitive shapes, into the shapes and replaces all the
transformation matrices with identity matrices.
   </refpurpose>
</refnamediv>

<!-- body begins here -->
<refsynopsisdiv xml:id="synopsis">
  <cmdsynopsis sepchar=" ">
    <command>xpush</command>    
    
    <arg choice="req" rep="norepeat"><replaceable>object</replaceable></arg>
    
  </cmdsynopsis>
</refsynopsisdiv>

<refsection xml:id="description"><info><title>DESCRIPTION</title></info>
  
  <para>Pushes the effects of transformation matrices in the paths,
from the specified <emphasis>object</emphasis> to the primitive shapes, into the shapes and replaces all the
transformation matrices with identity matrices. The <command>push</command> command performs a
similar function, but will refuse to make any changes if any shape needs to be
transformed into more than one location/orientation/scale. The <command>xpush</command> command will
recognize such situations and create extra copies of such shapes to accept the
different transformation effects. New shapes created by this command will have a suffix appended to the original name to make the new name unique. Combinations referring to the new shape will also be modified to reflect the name change. The <command>push</command> command performs the same function but will refuse to make any changes if it cannot
accomplish the push without creating any new shapes.
  
  </para>
</refsection>

<refsection xml:id="examples"><info><title>EXAMPLES</title></info>
  
  <para>The example shows the use of the <command>xpush</command> command to move all the effects of the transformation matrices in a tree rooted at an object down to the shape level(creating new shapes if needed).
  </para>
  
       
  <example><info><title>Move effects of transformation matrices in a tree rooted at an object to the shape level.</title></info>
    
    <para>
      <prompt>mged&gt;</prompt><userinput>xpush group1</userinput>
    </para>
    <para>Moves all the effects of the transformation matrices in the tree rooted at <emphasis>group1</emphasis>
down to the shape level (creating new shapes if needed).
       
    </para>
  </example>
 
</refsection>

<info><corpauthor>BRL-CAD Team</corpauthor></info>

<refsection xml:id="bug_reports"><info><title>BUG REPORTS</title></info>
  
  <para>
    Reports of bugs or problems should be submitted via electronic
    mail to &lt;devs@brlcad.org&gt;, or via the "cadbug.sh" script.
  </para>
</refsection>
</refentry>
