"Fossies" - the Fresh Open Source Software Archive

Member "brlcad-7.32.4/doc/mged/g.tex" (29 Jul 2021, 40295 Bytes) of package /linux/misc/brlcad-7.32.4.tar.bz2:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) TeX and LaTeX source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 \chapter{TUTORIALS ON EDITING SOLIDS}
    2 
    3 The Solid Editing state of MGED is used to modify the fundamental
    4 parameters of an individual solid.
    5 Each solid must be modified individually.
    6 
    7 \section{Solid Edit: A Six-Sided Polyhedron}
    8 
    9 \begin{figure}
   10 \centering \includegraphics{es8-top.ps}
   11 \caption{Top View of ARB8.}
   12 \label{es8-top}
   13 \end{figure}
   14 
   15 This section illustrates the use of commands while in
   16 SOL EDIT state to alter the
   17 shape of a polyhedron with six sides and 8 faces (ARB8).
   18 
   19 \noindent{\tt
   20 \$ {\em mged es.g} \\
   21 BRL-CAD Release 3.0 Graphics Editor (MGED) Compilation 82 \\
   22     Thu Sep 22 08:08:39 EDT 1988 \\
   23     mike@video.brl:/cad/.mged.4d2 \\
   24  \\
   25 es.g: No such file or directory \\
   26 Create new database (y|n)[n]? {\em y} \\
   27 attach (nu|tek|tek4109|ps|plot|sgi)[nu]? {\em sgi} \\
   28 ATTACHING sgi (SGI 4d) \\
   29 Untitled MGED Database (units=mm) \\
   30 mged> {\em in arb8 rpp -1 1 -1 1 -1 1} \\
   31 mged> {\em size 10} \\
   32 mged>
   33 }
   34 
   35 Figure \ref{es8-top}
   36 is a top view of the six-sided polyhedron.
   37 The Z-axis perpendicular to the viewing screen.
   38 Next, the view is rotated so that all sides can be seen.
   39 
   40 \noindent{\tt
   41 mged> {\em Twist ROTY knob clockwise and restore} \\
   42 mged> {\em Twist ROTX knob counter-clockwise and restore} \\
   43 mged>
   44 }
   45 
   46 \begin{figure}
   47 \centering \includegraphics{es8-rot.ps}
   48 \caption{A Rotated View of the ARB8.}
   49 \label{es8-rot}
   50 \end{figure}
   51 Figure \ref{es8-rot} shows a better perspective of the solid.
   52 
   53 The next step in this tutorial is to transfer to the solid edit state.
   54 This can be accomplished in two ways:  either by going through
   55 the SOL PICK state (``illuminate mode'') or by direct transfer via
   56 keyboard command.
   57 Using illuminate mode is better when the name of the solid to be
   58 edited may not be known, while the keyboard command is generally
   59 preferred when the name of the solid is known.
   60 
   61 \noindent{\tt
   62 mged> {\em Select the ``Solid Illum'' entry in the button menu} \\
   63 mged> {\em Move the mouse out of the menu area} \\
   64 mged> {\em Click the mouse to enter SOL EDIT state} \\
   65 mged>
   66 }
   67 
   68 To perform a direct transfer from the viewing state to the solid edit state
   69 using a keyboard command, enter:
   70 
   71 \noindent{\tt
   72 mged> {\em sed arb8} \\
   73 mged>
   74 }
   75 
   76 \begin{figure}
   77 \centering \includegraphics{es8-sed.ps}
   78 \caption{An ARB8 in Solid Edit State.}
   79 \label{es8-sed}
   80 \end{figure}
   81 
   82 Figure \ref{es8-sed} corresponds to the view on the display.
   83 The ARB8 MENU is unique to the ARB primitive,
   84 and lists operations that can only be performed on an ARB solid.
   85 The items in the ARB8 MENU are
   86 selected by using the mouse.
   87 Each of the other types of solids have a
   88 similar unique menu.
   89 When one of these items is selected, the top level ARB8 MENU disappears,
   90 to be replaced with the indicated subordinate menu.
   91 The top-level menu reappears when either
   92 the ``edit menu'' item in the SOLID EDIT menu is selected,
   93 or the ``RETURN'' item in the subordinate menu is selected.
   94 
   95 The  SOLID EDIT  menu applies to all
   96 solids when in the SOL EDIT state.
   97 The items in the  SOLID EDIT  menu are selected
   98 by either using the mouse or by depressing the appropriate button on the
   99 button box.
  100 When any of the SOLID EDIT menu items are selected
  101 (e.g., ``Rotate'', ``Translate'', ``Scale''), the solid-specific menu
  102 disappears.
  103 Th top-level solid-specific menu reappears when
  104 the ``edit menu'' item in the SOLID EDIT menu is selected.
  105 
  106 The {\em p [params]} command is used to
  107 make precise changes, where the numeric value of the parameter being
  108 edited is know.
  109 Values for all parameters in the ARB8
  110 and SOLID EDIT menus can be specified by using the {\em p} command,
  111 or by pointing and clicking with the mouse.
  112 
  113 \begin{figure}
  114 \centering \includegraphics{es8-tr0.ps}
  115 \caption{Translating ARB8 Point 1 to the Origin.}
  116 \label{es8-tr0}
  117 \end{figure}
  118 
  119 \subsection{Translate Operation}
  120 
  121 \noindent{\tt
  122 mged> {\em Select the ``Translate'' entry in the solid edit menu} \\
  123 mged> {\em p 0 0 0} \\
  124 mged>
  125 }
  126 
  127 Point 1 of the primitive is moved to point 0 0 0,
  128 as shown in Figure \ref{es8-tr0}.
  129 
  130 The translate solid operation is selected
  131 by either picking ``Translate'' on the solid edit menu
  132 with the mouse, by depressing the solid edit button on the button box,
  133 or by entering the {\em press sed} command.
  134 Parameters to the translate solid operation
  135 are of the form {\em p a b c}
  136 where {\em a}, {\em b}, and {\em c} are the new coordinates
  137 of point 1 in the solid.
  138 The other points are transferred to keep the same position
  139 relative to point 1.
  140 The general form of the new coordinates for point is
  141 
  142 \begin{center}
  143 \begin{verbatim}
  144 x ' = x + a - x
  145 y ' = y + b - y
  146 Z ' = Z + c - Z
  147 \end{verbatim}
  148 \end{center}
  149 
  150 The command
  151 
  152 \noindent{\tt
  153 mged> {\em p 1 -1 -1} \\
  154 mged>
  155 }
  156 
  157 can be used to restore the primitive to the original position.
  158 
  159 \subsection{Rotate Operation}
  160 
  161 \begin{figure}
  162 \centering \includegraphics{es8-xrot.ps}
  163 \caption{Solid Edit Rotation of 45 Degrees about X.}
  164 \label{es8-xrot}
  165 \end{figure}
  166 
  167 The rotate operation is initiated by either selecting Rotate on the menu
  168 screen with the mouse,
  169 by depressing the Solid Rotate button on the button box,
  170 or by entering the {\em press srot} command on the keyboard.
  171 
  172 \noindent{\tt
  173 mged> {\em Select the ``Rotate'' entry in the solid edit menu} \\
  174 mged> {\em p 45 0 0} \\
  175 mged>
  176 }
  177 
  178 The parameter {\em p} command is used to make precise rotation changes.
  179 The
  180 command is entered in the form {\em p a b c} where
  181 {\em a}, {\em b}, and {\em c} are the angles
  182 (in degrees) of rotation about the x, y, and z axes respectively.  Point 1,
  183 the vertex, remains fixed, and the solid is rotated about this point.  A
  184 positive angle of rotation is counter-clockwise when viewed in the positive
  185 direction along an axis.
  186 
  187 The order of rotation is not commutative.
  188 Rotation takes place about the
  189 Z axis, Y axis, and X axis in that order.
  190 Figure \ref{es8-xrot} shows the rotation of 45 degrees about the X axis.
  191 
  192 %The following is the formula for moving point (x,y,z) through angles
  193 %(a, b, c) to point (x', y', z')
  194 %\begin{verbatim}
  195 %[X'] [cos b cos c                     -cos b sin c        sin b        ][X]
  196 %[Y']=[sin a sin b cos c +cos a sin b   cos a cos c -sin a sin b sin c -sin a cos b ][Y]
  197 %[Z'] [sin a sin c -cos a sin b cos c   cos a sin b sin c + sin a cos c cos a cos b ][Z]
  198 %\end{verbatim}
  199 
  200 The values entered after the p are absolute - the rotations are applied to
  201 the primitive as it existed when solid rotation was first selected.  Thus
  202 entering {\em p 0 0 0} will undo any rotations
  203 performed since solid rotation was begun.
  204 
  205 \begin{figure}
  206 \centering \includegraphics{es8-yrot.ps}
  207 \caption{Solid Edit Rotation of 45 Degrees about Y.}
  208 \label{es8-yrot}
  209 \end{figure}
  210 
  211 \begin{figure}
  212 \centering \includegraphics{es8-zrot.ps}
  213 \caption{Solid Edit Rotation of 45 Degrees about Z.}
  214 \label{es8-zrot}
  215 \end{figure}
  216 
  217 \noindent{\tt
  218 mged> {\em p 0 45 0} \\
  219 mged>
  220 }
  221 
  222 Figure \ref{es8-yrot} displays the solid
  223 after it has been rotated about the Y axis.
  224 
  225 \noindent{\tt
  226 mged> {\em p 0 0 45} \\
  227 mged>
  228 }
  229 
  230 Figure \ref{es8-zrot} displays the solid
  231 after it has been rotated about the Z axis.
  232 
  233 \noindent{\tt
  234 mged> {\em p 0 0 0} \\
  235 mged>
  236 }
  237 
  238 This restores the original orientation of the solid.
  239 
  240 \subsection{Scale Operation}
  241 
  242 \begin{figure}
  243 \centering \includegraphics{es8-scale.ps}
  244 \caption{ARB8 Scale Increased by 2X.}
  245 \label{es8-scale}
  246 \end{figure}
  247 
  248 \noindent{\tt
  249 mged> {\em Select the ``Scale'' entry in the solid edit menu} \\
  250 mged> {\em p 2} \\
  251 mged>
  252 }
  253 
  254 Figure \ref{es8-scale} corresponds to the view that is shown on the display.
  255 The scale operation may be initiated by either selecting
  256 the Scale entry  on the menu with the mouse,
  257 by depressing the Solid Scale button,
  258 or by entering {\em press sscale} on the keyboard.
  259 The parameter command {\em p n} is
  260 used to enter a precise scale factors, where {\em n} is
  261 the scale factor.
  262 The coordinates of point 1 remain the same.  The distances
  263 from point 1 to the other points are multiplied by the scale value {\em n}.
  264 The general equations for the transformation from point p to p' are
  265 
  266 \begin{verbatim}
  267     x'[i] = x[i] + n (x[i] - x[1] )
  268     y'[i] = y[i] + n (y[i] - y[1] )   i != 1
  269     z'[i] = z[i] + n (z[i] - z[1] )
  270 \end{verbatim}
  271 
  272 The size of the primitive may be changed by depressing the mouse at
  273 different positions.  When the mouse is clicked, the
  274 edited primitive is scaled about point 1 (the key point)
  275 by an amount proportional
  276 to the distance the mouse is from the center of the screen.  If the mouse
  277 is above the center of the screen, the edited primitive will become larger.
  278 If the
  279 mouse is below the center, the primitive will become smaller.
  280 
  281 The value of {\em n} entered is applied to the primitive as it existed when the
  282 solid scale state was entered.
  283 
  284 Entering {\em p 1} will return the primitive
  285 to the size it had when the solid scale operation first started.
  286 
  287 \noindent{\tt
  288 mged> {\em p 1} \\
  289 mged>
  290 }
  291 
  292 \begin{figure}
  293 \centering \includegraphics{es8-edge1.ps}
  294 \caption{ARB8 Edge 15 Moved Through (9, -2, -2).}
  295 \label{es8-edge1}
  296 \end{figure}
  297 
  298 \begin{figure}
  299 \centering \includegraphics{es8-edge2.ps}
  300 \caption{ARB8 Edge 12 Moved Through (2, 5, -2).}
  301 \label{es8-edge2}
  302 \end{figure}
  303 
  304 \begin{figure}
  305 \centering \includegraphics{es8-edge3.ps}
  306 \caption{ARB8 Edge 14 Moved Through (2, -2, 7).}
  307 \label{es8-edge3}
  308 \end{figure}
  309 
  310 \subsection{Moving Edges}
  311 
  312 The move edge command permits the moving of a line or edge so that the
  313 line passes through the selected point.
  314 
  315 \noindent{\tt
  316 mged> {\em Select the ``edit menu'' entry in the solid edit menu} \\
  317 mged> {\em Select the ``move edges'' entry in the ARB menu} \\
  318 mged> {\em Select the ``move edge 15'' entry in the ARB8 edges menu} \\
  319 mged> {\em p 9 -2 -2} \\
  320 mged>
  321 }
  322 
  323 The edge 15 is moved so that it passes through the point (9, -2, -2).  The
  324 coordinates of the new points 1 and 5 are the intersection of the new edge
  325 with the planes 234 and 678.  Since both the old edge and new edge 15 are
  326 parallel to the X axis,
  327 the X coordinate of the point given by the {\em p} command
  328 has no meaning.  The X coordinates for points 1 and 5 are not changed.
  329 See Figure \ref{es8-edge1}.
  330 
  331 \noindent{\tt
  332 mged> {\em p 9 -1 -1} \\
  333 mged>
  334 }
  335 
  336 This restores the original shape.
  337 The choice of ``9'' for the X coordinate was arbitrary.
  338 
  339 \noindent{\tt
  340 mged> {\em Select the ``move edge 12'' entry in the ARB8 edges menu} \\
  341 mged> {\em p 2 5 -2} \\
  342 mged>
  343 }
  344 
  345 The edge 12 is parallel to the Y axis.  This command moves the points 1
  346 and 2 so that their X and Z coordinates are 2 and -2.
  347 See Figure \ref{es8-edge2}.
  348 The Y coordinates are not changed.
  349 
  350 To restore the view, enter:
  351 
  352 \noindent{\tt
  353 mged> {\em p 1 5 -1} \\
  354 mged>
  355 }
  356 
  357 The choice of ``5'' for the Y coordinate was arbitrary.
  358 
  359 \noindent{\tt
  360 mged> {\em Select the ``move edge 14'' entry in the ARB8 edges menu} \\
  361 mged> {\em p 2 -2 7} \\
  362 mged>
  363 }
  364 
  365 The edge 14 is parallel to the Z axis.
  366 This command moves the points 1
  367 and 4 so that their X and Y coordinates are 2 and -2.
  368 See Figure \ref{es8-edge3}.
  369 The Z coordinates are not changed.
  370 
  371 \noindent{\tt
  372 mged> {\em p 1 -1 7} \\
  373 mged>
  374 }
  375 
  376 This restores the original shape.
  377 The choice of ``7'' for the Z coordinate was arbitrary.
  378 
  379 \subsection{Extrude Command}
  380 
  381 \begin{figure}
  382 \centering \includegraphics{es8-ex1.ps}
  383 \caption{ARB8 Rear Face Extruded 5 Units in -Z.}
  384 \label{es8-ex1}
  385 \end{figure}
  386 
  387 \begin{figure}
  388 \centering \includegraphics{es8-ex2.ps}
  389 \caption{ARB8 Rear Face Extruded 3 Units in +Z.}
  390 \label{es8-ex2}
  391 \end{figure}
  392 
  393 The extrude command is used to move the opposite surface a distance from
  394 the specified surface or plate.
  395 This command can only be used when an ARB solid is in
  396 solid edit state.
  397 
  398 \noindent{\tt
  399 mged> {\em extrude 1265 5} \\
  400 mged>
  401 }
  402 
  403 In Figure \ref{es8-ex1},
  404 the plane opposite surface whose points are 1, 2, 6, and 5
  405 is moved to a distance of 5 in the positive Z direction from plane 1265.  Note
  406 that the points were selected counter-clockwise when viewed in the positive
  407 direction along the Z axis.
  408 
  409 \noindent{\tt
  410 mged> {\em extrude 1562 3} \\
  411 mged>
  412 }
  413 
  414 In Figure \ref{es8-ex2},
  415 the plane opposite surface 1562 is moved to a distance of 3
  416 in the negative Z direction from 1562.  Note that the points were selected
  417 clockwise when viewed in the positive direction along the Z axis.
  418 
  419 \noindent{\tt
  420 mged> {\em extrude 1265 2} \\
  421 mged>
  422 }
  423 
  424 This restores the original shape of this solid.
  425 
  426 To return control to the VIEWING state, select the ``REJECT Edit''
  427 item on the button menu, press the ``reject'' button on the button box,
  428 or enter the command {\em press reject} on the keyboard.
  429 Then, enter
  430 
  431 \noindent{\tt
  432 mged> {\em d arb8} \\
  433 mged>
  434 }
  435 
  436 to drop the ARB8 from view.
  437 
  438 \section{Solid Edit:  A Five-Sided Polyhedron}
  439 
  440 \begin{figure}
  441 \centering \includegraphics{es5-top.ps}
  442 \caption{Top View of an ARB5.}
  443 \label{es5-top}
  444 \end{figure}
  445 
  446 \begin{figure}
  447 \centering \includegraphics{es5-rot.ps}
  448 \caption{A Rotated View of the ARB5.}
  449 \label{es5-rot}
  450 \end{figure}
  451 
  452 \begin{figure}
  453 \centering \includegraphics{es5-sed.ps}
  454 \caption{The ARB5 in Solid Edit State.}
  455 \label{es5-sed}
  456 \end{figure}
  457 
  458 This tutorial illustrates the application of the SOL EDIT state to the ARB5
  459 solid.
  460 In this tutorial, the view is modified by using the rotation
  461 knobs so that all sides can be seen.
  462 
  463 \noindent{\tt
  464 mged> {\em size 6} \\
  465 mged> {\em in arb5 arb5} \\
  466 Enter X, Y, Z for point 1: {\em 0 0 0} \\
  467 Enter X, Y, Z for point 2: {\em 0 0 1} \\
  468 Enter X, Y, Z for point 3: {\em 0 1 1} \\
  469 Enter X, Y, Z for point 4: {\em 0 1 0} \\
  470 Enter X, Y, Z for point 5: {\em -1 .5 .5} \\
  471 mged>
  472 }
  473 
  474 Figure \ref{es5-top} is the display of arb5
  475 in the VIEWING state that is seen when
  476 the solid is first created.
  477 In this view, the Z axis is perpendicular to the viewing screen.
  478 
  479 \noindent{\tt
  480 mged> {\em Twist ROTY knob clockwise and restore} \\
  481 mged> {\em Twist ROTX knob counter-clockwise and restore} \\
  482 mged>
  483 }
  484 
  485 These actions generate a view shown in Figure \ref{es5-rot}
  486 that shows all sides.
  487 
  488 \noindent{\tt
  489 mged> {\em Select the ``Solid Illum'' entry in the button menu} \\
  490 mged> {\em Move the mouse out of the menu area} \\
  491 mged> {\em Click the mouse to enter SOL EDIT state} \\
  492 mged>
  493 }
  494 
  495 These actions will place MGED in the SOL EDIT state
  496 as shown in Figure \ref{es5-sed}.
  497 
  498 \subsection{Translate Operation}
  499 
  500 \begin{figure}
  501 \centering \includegraphics{es5-tr.ps}
  502 \caption{Translating an ARB5.}
  503 \label{es5-tr}
  504 \end{figure}
  505 
  506 \noindent{\tt
  507 mged> {\em Select the ``Translate'' entry in the solid edit menu} \\
  508 mged> {\em p -1 -1 1} \\
  509 mged>
  510 }
  511 
  512 This command cause point 1 to be moved to coordinates (-1, -1, 1) and the
  513 other points are moved so that they keep the same relative position to point
  514 1.  See Figure \ref{es5-tr}.
  515 
  516 Enter this command to restore the solid to its original location:
  517 
  518 \noindent{\tt
  519 mged> {\em p 0 0 0} \\
  520 mged>
  521 }
  522 
  523 \subsection{Rotate Operation}
  524 
  525 \begin{figure}
  526 \centering \includegraphics{es5-xrot.ps}
  527 \caption{ARB5 Solid Edit Rotation about X.}
  528 \label{es5-xrot}
  529 \end{figure}
  530 
  531 \noindent{\tt
  532 mged> {\em Select the ``Rotate'' entry in the solid edit menu} \\
  533 mged> {\em p 45 0 0} \\
  534 mged>
  535 }
  536 
  537 Figure \ref{es5-xrot} shows a rotation of 45 degrees
  538 about an axis parallel to the X axis.
  539 The rotate command is entered in the form {\em p a b c}
  540 where {\em a}, {\em b}, and {\em c} are the angles
  541 (in degrees) of rotation about the x, y, and z axes and intersect at point 1.
  542 All rotation takes place about point 1.
  543 
  544 \noindent{\tt
  545 mged> {\em p 0 0 0} \\
  546 mged>
  547 }
  548 
  549 This restores the original orientation of the solid.
  550 
  551 \subsection{Scale Operation}
  552 
  553 \begin{figure}
  554 \centering \includegraphics{es5-scale.ps}
  555 \caption{ARB5 Scale Increased by 2X.}
  556 \label{es5-scale}
  557 \end{figure}
  558 
  559 \noindent{\tt
  560 mged> {\em Select the ``Scale'' entry in the solid edit menu} \\
  561 mged> {\em p 2} \\
  562 mged>
  563 }
  564 
  565 Figure \ref{es5-scale} shows the change in the primitive.
  566 Point 1 remains the same
  567 and the distances of the other points from point 1 is multiplied by 2.
  568 
  569 Entering {\em p 1} will return the primitive
  570 to the size it had when the solid scale operation first started.
  571 
  572 \noindent{\tt
  573 mged> {\em p 1} \\
  574 mged>
  575 }
  576 
  577 \subsection{Move Edge Command}
  578 
  579 \begin{figure}
  580 \centering \includegraphics{es5-edge1.ps}
  581 \caption{ARB5 Edge 14 Moved Through (1, 1, 1).}
  582 \label{es5-edge1}
  583 \end{figure}
  584 
  585 \begin{figure}
  586 \centering \includegraphics{es5-edge2.ps}
  587 \caption{ARB5 Point 5 Moved to (-1.5, 1, 1).}
  588 \label{es5-edge2}
  589 \end{figure}
  590 
  591 \begin{figure}
  592 \centering \includegraphics{es5-edge3.ps}
  593 \caption{ARB5 Edge 45 Moved Through (-1.5 1 1).}
  594 \label{es5-edge3}
  595 \end{figure}
  596 
  597 \begin{figure}
  598 \centering \includegraphics{es5-edge4.ps}
  599 \caption{ARB5 Edge 12 Moved Through (2, 1, 2).}
  600 \label{es5-edge4}
  601 \end{figure}
  602 
  603 \noindent{\tt
  604 mged> {\em Select the ``edit menu'' entry in the solid edit menu} \\
  605 mged> {\em Select the ``move edges'' entry in the ARB menu} \\
  606 mged> {\em Select the ``move edge 14'' entry in the ARB8 edges menu} \\
  607 mged> {\em p 1 1 1} \\
  608 mged>
  609 }
  610 
  611 The edge 14 is moved so that it moves through the point (1, 1, 1).
  612 Note that this point is the mid-point between points 1 and 4.
  613 See Figure \ref{es5-edge1}.
  614 
  615 \noindent{\tt
  616 mged> {\em p 0 2 0} \\
  617 mged>
  618 }
  619 
  620 This restores the original shape.
  621 
  622 \noindent{\tt
  623 mged> {\em Select the ``move point 5'' entry in the ARB5 edges menu} \\
  624 mged> {\em p -1.5 1 1} \\
  625 mged>
  626 }
  627 
  628 The point 5 is moved to location -1.5, 1, 1.  See Figure \ref{es5-edge2}.
  629 
  630 \noindent{\tt
  631 mged> {\em p -1 .5 .5} \\
  632 mged>
  633 }
  634 
  635 will restore the original shape.
  636 
  637 \noindent{\tt
  638 mged> {\em Select the ``move edge 45'' entry in the ARB5 edges menu} \\
  639 mged> {\em p -1.5 1 1} \\
  640 mged>
  641 }
  642 
  643 In Figure \ref{es5-edge3}, the edge 45 is moved
  644 so that it passes through the point (-1.5, 1, 1).
  645 Note that this point lies between the points 4 and 5.
  646 
  647 \noindent{\tt
  648 mged> {\em p -1 .5 .5} \\
  649 mged>
  650 }
  651 
  652 This restores the original shape.
  653 
  654 \noindent{\tt
  655 mged> {\em Select the ``move edge 12'' entry in the ARB5 edges menu} \\
  656 mged> {\em p 2 1 2} \\
  657 mged>
  658 }
  659 
  660 In Figure \ref{es5-edge4},
  661 the edge 12 is moved so that it passes through the point (2, 1, 2).
  662 Note that the coordinates correspond to point 2.
  663 
  664 The movement of the edges may yield unpredictable results when the edges
  665 are not parallel to one of the axes.
  666 
  667 
  668 To return control to the VIEWING state, select the ``REJECT Edit''
  669 item on the button menu, press the ``reject'' button on the button box,
  670 or enter the command {\em press reject} on the keyboard.
  671 Then, enter
  672 
  673 \noindent{\tt
  674 mged> {\em d arb5} \\
  675 mged>
  676 }
  677 
  678 to drop the ARB5 from view.
  679 
  680 \section{Solid Edit: Alter a Cylinder}
  681 
  682 \begin{figure}
  683 \centering \includegraphics{esc-top.ps}
  684 \caption{Top View of a Cylinder.}
  685 \label{esc-top}
  686 \end{figure}
  687 
  688 \begin{figure}
  689 \centering \includegraphics{esc-rot.ps}
  690 \caption{A Rotated View of the Cylinder.}
  691 \label{esc-rot}
  692 \end{figure}
  693 
  694 \begin{figure}
  695 \centering \includegraphics{esc-sed.ps}
  696 \caption{A Cylinder in Solid Edit State.}
  697 \label{esc-sed}
  698 \end{figure}
  699 
  700 This tutorial illustrates the application of the SOL EDIT state to
  701 cylinder solids.
  702 
  703 \noindent{\tt
  704 mged> {\em size 12} \\
  705 mged> {\em in cyl rcc} \\
  706 Enter X, Y, Z of vertex: {\em 0 0 0} \\
  707 Enter X, Y, Z of height (H) vector: {\em 2 0 0} \\
  708 Enter radius: {\em 1}
  709 mged>
  710 }
  711 
  712 Figure \ref{esc-top} is the display of the cylinder solid
  713 when viewed from the top.
  714 Since the
  715 Z axis is perpendicular to the viewing screen, a view of all sides cannot be
  716 seen.
  717 
  718 \noindent{\tt
  719 mged> {\em Twist ROTY knob clockwise and restore} \\
  720 mged> {\em Twist ROTX knob counter-clockwise and restore} \\
  721 mged>
  722 }
  723 
  724 These actions generate a view, Figure \ref{esc-rot}, that shows all sides.
  725 
  726 \noindent{\tt
  727 mged> {\em Select the ``Solid Illum'' entry in the button menu} \\
  728 mged> {\em Move the mouse out of the menu area} \\
  729 mged> {\em Click the mouse to enter SOL EDIT state} \\
  730 mged>
  731 }
  732 
  733 Figure \ref{esc-sed} is the view that displays the menu
  734 for the SOL EDIT state.
  735 The
  736 point V is at the origin (0,0,0) in this example and is in the middle of the
  737 circle that contains points A and B.  H is the point of the center of the
  738 circle that contains points C and D.  The coordinates of H are the coordinates
  739 of the vector from V to H and represent the relative position of H to V.  Mag
  740 is the magnitude of these vectors and is represented by the formula
  741 \begin{center}
  742 \begin{verbatim}
  743 Mag = sqrt( x + y + z )
  744 \end{verbatim}
  745 \end{center}
  746 
  747 ``H dir cos'' are the direction cosines of the vector H which
  748 is perpendicular to plane of the points A, B, and V.  The coordinates of A
  749 are the coordinates of the vector from V through A.  Mag is the magnitude of
  750 the vectors from V to A.  The coordinates of B are the coordinates of the
  751 vectors from V through B.  Mag is the magnitude of the vector from V to B.
  752 The values for c and d are the magnitudes of the vectors from the tip of
  753 vector H to the points C
  754 and D respectively.
  755 ``A x B dir cos'' represents the direction cosines of the
  756 vector ``A x B''.
  757 
  758 \subsection{Translate Operation}
  759 
  760 \begin{figure}
  761 \centering \includegraphics{esc-tr.ps}
  762 \caption{Translating Cylinder Vertex to (1, 1, 1).}
  763 \label{esc-tr}
  764 \end{figure}
  765 
  766 \noindent{\tt
  767 mged> {\em Select the ``Translate'' entry in the solid edit menu} \\
  768 mged> {\em p 1 1 1} \\
  769 mged>
  770 }
  771 
  772 The location of the vertex point V is moved to (1, 1, 1).
  773 The locations of the other
  774 points relative to V remains the same.  See Figure \ref{esc-tr}.
  775 
  776 Move the mouse anywhere on the screen (outside the menu area), and click.
  777 Notice
  778 that the cylinder is moved so that V is placed at this location, and the
  779 coordinates of the other points remain the same relative to V.
  780 
  781 \noindent{\tt
  782 mged> {\em p 0 0 0} \\
  783 mged>
  784 }
  785 
  786 This restores the solid to the original location.
  787 
  788 \subsection{Rotate Operation}
  789 
  790 \begin{figure}
  791 \centering \includegraphics{esc-xrot.ps}
  792 \caption{Solid Edit Rotation of 45 Degrees about X.}
  793 \label{esc-xrot}
  794 \end{figure}
  795 
  796 \begin{figure}
  797 \centering \includegraphics{esc-yrot.ps}
  798 \caption{Solid Edit Rotation of 45 Degrees about Y.}
  799 \label{esc-yrot}
  800 \end{figure}
  801 
  802 \begin{figure}
  803 \centering \includegraphics{esc-zrot.ps}
  804 \caption{Solid Edit Rotation of 45 Degrees about Z.}
  805 \label{esc-zrot}
  806 \end{figure}
  807 
  808 \noindent{\tt
  809 mged> {\em Select the ``Rotate'' entry in the solid edit menu} \\
  810 mged> {\em p 45 0 0} \\
  811 mged>
  812 }
  813 
  814 When viewing in the positive X direction, the cylinder is rotated counter-
  815 clockwise 45 degrees about an axis through point V parallel to the x axis.
  816 See Figure \ref{esc-xrot}.
  817 
  818 \noindent{\tt
  819 mged> {\em p 0 45 0} \\
  820 mged>
  821 }
  822 
  823 When viewing in the positive Y direction, the cylinder is rotated counter-
  824 clockwise 45 degrees about an axis through point V parallel to the Y axis.
  825 See Figure \ref{esc-yrot}.
  826 
  827 \noindent{\tt
  828 mged> {\em p 0 0 45} \\
  829 mged>
  830 }
  831 
  832 When viewing in the positive Z direction, the cylinder is rotated counter-
  833 clockwise 45 degrees about an axis through point V parallel to the Z axis.
  834 See Figure \ref{esc-zrot}.
  835 
  836 The command
  837 
  838 \noindent{\tt
  839 mged> {\em p 0 0 0} \\
  840 mged>
  841 }
  842 
  843 will restore the cylinder to the original orientation.
  844 
  845 \subsection{Scale Operation}
  846 
  847 \begin{figure}
  848 \centering \includegraphics{esc-scale.ps}
  849 \caption{Cylinder Scale Increased by 1.5X.}
  850 \label{esc-scale}
  851 \end{figure}
  852 
  853 \noindent{\tt
  854 mged> {\em Select the ``Scale'' entry in the solid edit menu} \\
  855 mged> {\em p 1.5} \\
  856 mged>
  857 }
  858 
  859 The point V remains fixed, the distance H between the two end-plate ellipses
  860 is multiplied by 1.5.
  861 See Figure \ref{esc-scale}.
  862 
  863 The command
  864 
  865 \noindent{\tt
  866 mged> {\em p 1} \\
  867 mged>
  868 }
  869 
  870 restores the original scale.
  871 
  872 \subsection{Scale H Command}
  873 
  874 \begin{figure}
  875 \centering \includegraphics{esc-sh.ps}
  876 \caption{Cylinder Scale H Vector.}
  877 \label{esc-sh}
  878 \end{figure}
  879 
  880 \noindent{\tt
  881 mged> {\em Select the ``edit menu'' entry in the solid edit menu} \\
  882 mged> {\em Select the ``scale H'' entry in the TGC menu} \\
  883 mged> {\em p 1} \\
  884 mged>
  885 }
  886 
  887 The magnitude of the vector H is reduced from 2 to 1.
  888 See Figure \ref{esc-sh}.  The command
  889 
  890 \noindent{\tt
  891 mged> {\em p 2} \\
  892 mged>
  893 }
  894 
  895 will restore the original shape.
  896 
  897 \subsection{Scale A Command}
  898 
  899 \begin{figure}
  900 \centering \includegraphics{esc-sa.ps}
  901 \caption{Cylinder Scale A Vector.}
  902 \label{esc-sa}
  903 \end{figure}
  904 
  905 \noindent{\tt
  906 mged> {\em Select the ``scale A'' entry in the TGC menu} \\
  907 mged> {\em p 2} \\
  908 mged>
  909 }
  910 
  911 The magnitude of the vector through point A is increased to 2, i.e.,
  912 the length of the axis of the ellipse through point A is set equal to p.
  913 See Figure \ref{esc-sa}.  The command
  914 
  915 \noindent{\tt
  916 mged> {\em p 1} \\
  917 mged>
  918 }
  919 
  920 will restore the original shape.
  921 
  922 \subsection{Scale B Command}
  923 
  924 \begin{figure}
  925 \centering \includegraphics{esc-sb.ps}
  926 \caption{Cylinder Scale B Vector.}
  927 \label{esc-sb}
  928 \end{figure}
  929 
  930 \noindent{\tt
  931 mged> {\em Select the ``scale B'' entry in the TGC menu} \\
  932 mged> {\em p 2} \\
  933 mged>
  934 }
  935 
  936 The magnitude of the vector through point B is increased to 2, i.e.,
  937 the length of the axis of the ellipse through point B is set equal to p.
  938 See Figure \ref{esc-sb}.  The command
  939 
  940 \noindent{\tt
  941 mged> {\em p 1} \\
  942 mged>
  943 }
  944 
  945 will restore the original shape.
  946 
  947 \subsection{Scale C Command}
  948 
  949 \begin{figure}
  950 \centering \includegraphics{esc-sc.ps}
  951 \caption{Cylinder Scale C Vector.}
  952 \label{esc-sc}
  953 \end{figure}
  954 
  955 \noindent{\tt
  956 mged> {\em Select the ``scale C'' entry in the TGC menu} \\
  957 mged> {\em p 2} \\
  958 mged>
  959 }
  960 
  961 The magnitude of the vector through point c is increased to the value of
  962 p.  The length of the axis of the ellipse through point c is set equal to the
  963 value of p.  See Figure \ref{esc-sc}.  The command
  964 
  965 \noindent{\tt
  966 mged> {\em p 1} \\
  967 mged>
  968 }
  969 
  970 will restore the original shape.
  971 
  972 \subsection{Scale D Command}
  973 
  974 \begin{figure}
  975 \centering \includegraphics{esc-sd.ps}
  976 \caption{Cylinder Scale D Vector.}
  977 \label{esc-sd}
  978 \end{figure}
  979 
  980 \noindent{\tt
  981 mged> {\em Select the ``scale D'' entry in the TGC menu} \\
  982 mged> {\em p 2} \\
  983 mged>
  984 }
  985 
  986 The magnitude of the vector through point D is changed to the value of p.
  987 The length of the axis of the ellipse through point D is set equal to the
  988 value of p.  See Figure \ref{esc-sd}.  The command
  989 
  990 \noindent{\tt
  991 mged> {\em p 1} \\
  992 mged>
  993 }
  994 
  995 will restore the original shape.
  996 
  997 The scale H, A, B, C, and D commands provide for setting the magnitude
  998 equal to the value entered by the {\em p} command.
  999 The solid edit {\bf scale} operation provides
 1000 for multiplying {\bf all} the vectors by the value
 1001 entered by the {\em p} command.
 1002 
 1003 \subsection{Move End H Command}
 1004 
 1005 \begin{figure}
 1006 \centering \includegraphics{esc-mh.ps}
 1007 \caption{Cylinder Move End of H.}
 1008 \label{esc-mh}
 1009 \end{figure}
 1010 
 1011 \noindent{\tt
 1012 mged> {\em Select the ``move end H'' entry in the TGC menu} \\
 1013 mged> {\em p 3} \\
 1014 mged>
 1015 }
 1016 
 1017 The length of the vector H is changed to the value of p.
 1018 See Figure \ref{esc-mh}.  The command
 1019 
 1020 \noindent{\tt
 1021 mged> {\em p 2} \\
 1022 mged>
 1023 }
 1024 
 1025 will restore the original shape.
 1026 
 1027 \subsection{Move End H (rt) Command}
 1028 
 1029 \begin{figure}
 1030 \centering \includegraphics{esc-mhrt.ps}
 1031 \caption{Cylinder Move End of H \& Rotate.}
 1032 \label{esc-mhrt}
 1033 \end{figure}
 1034 
 1035 \noindent{\tt
 1036 mged> {\em Select the ``move end H(rt)'' entry in the TGC menu} \\
 1037 mged> {\em p 3} \\
 1038 mged>
 1039 }
 1040 
 1041 This command is similar to the ``move end H'' command except the vector
 1042 through point A is rotated so its direction is in the -Y direction.
 1043 See Figure \ref{esc-mhrt}.  The command
 1044 
 1045 \noindent{\tt
 1046 mged> {\em p 2} \\
 1047 mged>
 1048 }
 1049 
 1050 will restore the original shape, but not the original orientation.
 1051 
 1052 To return control to the VIEWING state, select the ``REJECT Edit''
 1053 item on the button menu, press the ``reject'' button on the button box,
 1054 or enter the command {\em press reject} on the keyboard.
 1055 Then, enter
 1056 
 1057 \noindent{\tt
 1058 mged> {\em d cyl} \\
 1059 mged>
 1060 }
 1061 
 1062 to drop the cylinder from view.
 1063 
 1064 \section{Solid Edit: Alter Ellipsoid}
 1065 
 1066 \begin{figure}
 1067 \centering \includegraphics{ese-top.ps}
 1068 \caption{Top View of an Ellipsoid.}
 1069 \label{ese-top}
 1070 \end{figure}
 1071 
 1072 \begin{figure}
 1073 \centering \includegraphics{ese-sed.ps}
 1074 \caption{An Ellipsoid in Solid Edit State.}
 1075 \label{ese-sed}
 1076 \end{figure}
 1077 
 1078 This tutorial illustrates the application of the SOL EDIT state to the
 1079 ellipsoid primitive.
 1080 
 1081 \noindent{\tt
 1082 mged> press reset
 1083 mged> {\em size 6} \\
 1084 mged> {\em in ell ellg} \\
 1085 Enter X, Y, Z of vertex: {\em 0 0 0} \\
 1086 Enter X, Y, Z of vector A: {\em 1 0 0} \\
 1087 Enter X, Y, Z of vector B: {\em 0 .3536 -0.3536} \\
 1088 Enter X, Y, Z of vector C: {\em 0 .3536  0.3536} \\
 1089 mged>
 1090 }
 1091 
 1092 Figure \ref{ese-top} is the display of the primitive in the viewing state.
 1093 Since the
 1094 Z axis is perpendicular to the viewing screen, a view of all sides cannot be
 1095 seen.
 1096 
 1097 \noindent{\tt
 1098 mged> {\em Twist ROTY knob clockwise and restore} \\
 1099 mged> {\em Twist ROTX knob counter-clockwise and restore} \\
 1100 mged>
 1101 }
 1102 
 1103 These actions generate a view that shows all sides.
 1104 
 1105 \noindent{\tt
 1106 mged> {\em Select the ``Solid Illum'' entry in the button menu} \\
 1107 mged> {\em Move the mouse out of the menu area} \\
 1108 mged> {\em Click the mouse to enter SOL EDIT state} \\
 1109 mged>
 1110 }
 1111 
 1112 The display will be changed from the VIEWING MODE through the SOL PICK to
 1113 the SOL EDIT state.  Figure \ref{ese-sed} is the view that is displayed.
 1114 
 1115 The coordinates of the points A, B, C, are given by the product of the
 1116 magnitude of the vector and the cosine of X, Y, and Z direction cosines.  In
 1117 the display, the coordinates are:
 1118 
 1119 \begin{center}
 1120 \begin{verbatim}
 1121 A = (1, 0, 0)
 1122 B = (0, 0.3536, -0.3536)
 1123 C = (0, 0.3536,  0.3536)
 1124 \end{verbatim}
 1125 \end{center}
 1126 or
 1127 \begin{center}
 1128 \begin{verbatim}
 1129 A = ( 1* cos  0,  1* cos 90,   1* cos 90 )
 1130 B = (.5* cos 90, .5* cos 45, -.5* cos 45 )
 1131 C = (.5* cos 90, .5* cos 45,  .5* cos 45 )
 1132 \end{verbatim}
 1133 \end{center}
 1134 
 1135 \subsection{Translate Operation}
 1136 
 1137 \begin{figure}
 1138 \centering \includegraphics{ese-tr.ps}
 1139 \caption{Translating Ellipsoid to (-1, 1, 1).}
 1140 \label{ese-tr}
 1141 \end{figure}
 1142 
 1143 \noindent{\tt
 1144 mged> {\em Select the ``Translate'' entry in the solid edit menu} \\
 1145 mged> {\em p -1 1 1} \\
 1146 mged>
 1147 }
 1148 
 1149 The key point V is moved to (-1, 1, 1) and the ellipsoid maintains its
 1150 relative position to V.  See Figure \ref{ese-tr}.
 1151 
 1152 While in the SOL EDIT state, the solid may be translated by
 1153 using the mouse.  These changes are not numerically exact, but they can be
 1154 useful to visually position a solid with respect to other solids.
 1155 Move the mouse to a position outside the menu area on the screen.
 1156 Click the mouse.
 1157 The center point (V) of the ellipsoid will be translated to that point.
 1158 Note that only the value of the coordinates of V are changed.
 1159 The command
 1160 
 1161 \noindent{\tt
 1162 mged> {\em p 0 0 0} \\
 1163 mged>
 1164 }
 1165 
 1166 will restore the original position.
 1167 
 1168 \subsection{Rotate Operation}
 1169 
 1170 \begin{figure}
 1171 \centering \includegraphics{ese-xrot.ps}
 1172 \caption{Solid Edit Rotation of 45 Degrees about X.}
 1173 \label{ese-xrot}
 1174 \end{figure}
 1175 
 1176 \begin{figure}
 1177 \centering \includegraphics{ese-yrot.ps}
 1178 \caption{Solid Edit Rotation of 45 Degrees about Y.}
 1179 \label{ese-yrot}
 1180 \end{figure}
 1181 
 1182 \begin{figure}
 1183 \centering \includegraphics{ese-zrot.ps}
 1184 \caption{Solid Edit Rotation of 45 Degrees about Z.}
 1185 \label{ese-zrot}
 1186 \end{figure}
 1187 
 1188 The rotate operation is initiated by either selecting Rotate on the menu
 1189 screen with the mouse,
 1190 by depressing the Solid Rotate button on the button box,
 1191 or by entering the {\em press srot} command on the keyboard.
 1192 
 1193 \noindent{\tt
 1194 mged> {\em Select the ``Rotate'' entry in the solid edit menu} \\
 1195 mged> {\em p 45 0 0} \\
 1196 mged>
 1197 }
 1198 
 1199 Figure \ref{ese-xrot} shows the rotation of the ellipsoid about its X axis.
 1200 The angle of rotation is counter-clockwise when viewed in the positive X
 1201 direction.  The direction cosines of vectors VB and VC are changed by 45 .
 1202 
 1203 \noindent{\tt
 1204 mged> {\em Select the ``Rotate'' entry in the solid edit menu} \\
 1205 mged> {\em p 0 45 0} \\
 1206 mged>
 1207 }
 1208 
 1209 Figure \ref{ese-yrot} shows the rotation of the ellipsoid about its Y axis.
 1210 The angle
 1211 of rotation is counter-clockwise when viewed in the positive Y direction.  The
 1212 rotation is made from the original view, and the restoration of the view is
 1213 not necessary.
 1214 
 1215 \noindent{\tt
 1216 mged> {\em Select the ``Rotate'' entry in the solid edit menu} \\
 1217 mged> {\em p 0 0 45} \\
 1218 mged>
 1219 }
 1220 
 1221 Figure \ref{ese-zrot} shows the rotation of the ellipsoid about its Z axis.
 1222 The axis
 1223 of rotation is counter-clockwise when viewed in the positive Z direction.
 1224 The command
 1225 
 1226 \noindent{\tt
 1227 mged> {\em p 0 0 0} \\
 1228 mged>
 1229 }
 1230 
 1231 restores the original orientation of the solid.
 1232 
 1233 \subsection{Scale Operation}
 1234 
 1235 \begin{figure}
 1236 \centering \includegraphics{ese-scale.ps}
 1237 \caption{Ellipsoid Scale Decreased.}
 1238 \label{ese-scale}
 1239 \end{figure}
 1240 
 1241 \noindent{\tt
 1242 mged> {\em Select the ``Scale'' entry in the solid edit menu} \\
 1243 mged> {\em p .5} \\
 1244 mged>
 1245 }
 1246 
 1247 Point V is not changed,
 1248 but the distance from V to the surface of the ellipsoid is multiplied by 0.5,
 1249 because the magnitude of the vectors are multiplied by the value of 0.5.
 1250 See Figure \ref{ese-scale}.
 1251 
 1252 Move the mouse to a position outside the menu area and above the X axis,
 1253 and click the mouse.
 1254 Notice that the size of the ellipsoid has grown, i.e.,
 1255 the magnitude of the vectors have increased.
 1256 Move the mouse to a position below the X axis, and click the mouse.
 1257 Notice that the size of the ellipsoid has increased.
 1258 
 1259 The command
 1260 
 1261 \noindent{\tt
 1262 mged> {\em p 1} \\
 1263 mged>
 1264 }
 1265 
 1266 will restore the original scale.
 1267 
 1268 NOTE:
 1269 The use
 1270 of the scale operation from the Solid Edit menu
 1271 will result in the values of all the vectors being
 1272 multiplied by the value of the scale.
 1273 Use of the scale operaton from the Ellipsoid menu
 1274 with a particular vector A, B, or C changes the
 1275 magnitude of that vector to the value of the scale.
 1276 
 1277 \subsection{Scale A Command}
 1278 
 1279 \begin{figure}
 1280 \centering \includegraphics{ese-sa.ps}
 1281 \caption{Ellipsoid Scale A Vector.}
 1282 \label{ese-sa}
 1283 \end{figure}
 1284 
 1285 \noindent{\tt
 1286 mged> {\em Select the ``edit menu'' entry in the solid edit menu} \\
 1287 mged> {\em Select the ``scale A'' entry in the ellipsoid menu} \\
 1288 mged> {\em p 1.5} \\
 1289 mged>
 1290 }
 1291 
 1292 The magnitude of the vector to point A is set equal to the value of p
 1293 (e.g. 1.5).
 1294 The components of the vector are (1.5, 0, 0) since the vector was
 1295 parallel to the X axis.  See Figure \ref{ese-sa}.  The command
 1296 
 1297 \noindent{\tt
 1298 mged> {\em Select the ``scale A'' entry in the TGC menu} \\
 1299 mged> {\em p 1} \\
 1300 mged>
 1301 }
 1302 
 1303 will restore the original shape.
 1304 
 1305 \subsection{Scale B Command}
 1306 
 1307 \begin{figure}
 1308 \centering \includegraphics{ese-sb.ps}
 1309 \caption{Ellipsoid Scale B Vector.}
 1310 \label{ese-sb}
 1311 \end{figure}
 1312 
 1313 \noindent{\tt
 1314 mged> {\em Select the ``scale B'' entry in the Ellipsoid menu} \\
 1315 mged> {\em p 1.5} \\
 1316 mged>
 1317 }
 1318 
 1319 The magnitude of the vector to point B is set equal to the value of p
 1320 (e.g. 1.5).
 1321 The coordinates of the vector are the product of p and the
 1322 direction cosines of B.  See Figure \ref{ese-sb}.  The command
 1323 
 1324 \noindent{\tt
 1325 mged> {\em p 0.5} \\
 1326 mged>
 1327 }
 1328 
 1329 will restore the original shape.
 1330 
 1331 \subsection{Scale C Command}
 1332 
 1333 \begin{figure}
 1334 \centering \includegraphics{ese-sc.ps}
 1335 \caption{Ellipsoid Scale C Vector.}
 1336 \label{ese-sc}
 1337 \end{figure}
 1338 
 1339 \noindent{\tt
 1340 mged> {\em Select the ``scale C'' entry in the Ellipsoid menu} \\
 1341 mged> {\em p 1.5} \\
 1342 mged>
 1343 }
 1344 
 1345 The magnitude of the vector to point C is set equal to the value of p
 1346 (i.e., 1.5).
 1347 The coordinates of the vector are the product of p and the
 1348 direction cosines of C.  See Figure \ref{ese-sc}.  The command
 1349 
 1350 \noindent{\tt
 1351 mged> {\em p 0.5} \\
 1352 mged>
 1353 }
 1354 
 1355 will restore the original shape.
 1356 
 1357 To return control to the VIEWING state, select the ``REJECT Edit''
 1358 item on the button menu, press the ``reject'' button on the button box,
 1359 or enter the command {\em press reject} on the keyboard.
 1360 Then, enter
 1361 
 1362 \noindent{\tt
 1363 mged> {\em d ell} \\
 1364 mged>
 1365 }
 1366 
 1367 to drop the ellipsoid from view.
 1368 
 1369 \section{Solid Edit: Alter Torus}
 1370 
 1371 \begin{figure}
 1372 \centering \includegraphics{est-top.ps}
 1373 \caption{Top View of a Torus.}
 1374 \label{est-top}
 1375 \end{figure}
 1376 
 1377 \begin{figure}
 1378 \centering \includegraphics{est-sed.ps}
 1379 \caption{The Torus in Solid Edit State.}
 1380 \label{est-sed}
 1381 \end{figure}
 1382 
 1383 This tutorial illustrates the application of the SOL EDIT state to the
 1384 torus solid.
 1385 
 1386 \noindent{\tt
 1387 mged> {\em size 6} \\
 1388 mged> {\em in tor tor} \\
 1389 Enter X, Y, Z of vertex: {\em 0 0 0} \\
 1390 Enter X, Y, Z of normal vector: {\em 0 1 0} \\
 1391 Enter radius 1: {\em 1} \\
 1392 Enter radius 2: {\em 0.2} \\
 1393 mged>
 1394 }
 1395 
 1396 Figure \ref{est-top} is the display of the torus solid in viewing state.
 1397 Since the
 1398 Z-axis is perpendicular to the viewing screen, a view of all sides cannot be
 1399 seen.
 1400 
 1401 \noindent{\tt
 1402 mged> {\em Twist ROTY knob clockwise and restore} \\
 1403 mged> {\em Twist ROTX knob counter-clockwise and restore} \\
 1404 mged>
 1405 }
 1406 
 1407 These actions generate a view of the torus that shows all sides,
 1408 as shown in Figure \ref{est-sed}.
 1409 
 1410 \noindent{\tt
 1411 mged> {\em Select the ``Solid Illum'' entry in the button menu} \\
 1412 mged> {\em Move the mouse out of the menu area} \\
 1413 mged> {\em Click the mouse to enter SOL EDIT state} \\
 1414 mged>
 1415 }
 1416 
 1417 The torus is a ring whose cross-section is a circle.  The distance from
 1418 the vertex to the center of the cross-section is r1 and r2 is the radius of
 1419 the circular cross section.
 1420 
 1421 Let the points I and O be the intersection of the line x=-z and the torus.
 1422 Then,
 1423 \begin{center}
 1424 \begin{verbatim}
 1425 I = (-(r2-r1) cos 45, 0, (r2-r1) cos 45 )
 1426 O = (-(r2+r1) cos 45, 0, (r2+r1) cos 45 )
 1427 \end{verbatim}
 1428 \end{center}
 1429 
 1430 \subsection{Translate Operation}
 1431 
 1432 \begin{figure}
 1433 \centering \includegraphics{est-tr.ps}
 1434 \caption{Translating a Torus.}
 1435 \label{est-tr}
 1436 \end{figure}
 1437 
 1438 \noindent{\tt
 1439 mged> {\em Select the ``Translate'' entry in the solid edit menu} \\
 1440 mged> {\em p -.5 -1 .5} \\
 1441 mged>
 1442 }
 1443 
 1444 The vertex V of the torus is moved to (-.5, -1, .5).
 1445 See figure \ref{est-tr}.  The
 1446 coordinates of the other points remain the same, relative to the vertex.
 1447 The command
 1448 
 1449 \noindent{\tt
 1450 mged> {\em p 0 0 0} \\
 1451 mged>
 1452 }
 1453 
 1454 will restore the original position.
 1455 
 1456 \subsection{Rotate Operation}
 1457 
 1458 \begin{figure}
 1459 \centering \includegraphics{est-xrot.ps}
 1460 \caption{Torus Solid Edit Rotation about X.}
 1461 \label{est-xrot}
 1462 \end{figure}
 1463 
 1464 \begin{figure}
 1465 \centering \includegraphics{est-yrot.ps}
 1466 \caption{Torus Solid Edit Rotation about Y.}
 1467 \label{est-yrot}
 1468 \end{figure}
 1469 
 1470 \begin{figure}
 1471 \centering \includegraphics{est-zrot.ps}
 1472 \caption{Torus Solid Edit Rotation about Z.}
 1473 \label{est-zrot}
 1474 \end{figure}
 1475 
 1476 \noindent{\tt
 1477 mged> {\em Select the ``Rotate'' entry in the solid edit menu} \\
 1478 mged> {\em p 45 0 0} \\
 1479 mged>
 1480 }
 1481 
 1482 The torus is rotated 45 degrees counter-clockwise about the positive X axis.
 1483 The
 1484 coordinates of the points I and H are transformed using the following matrix:
 1485 \begin{verbatim}
 1486     [x'] [1   0      0   ] [x]
 1487     [y']=[0  .7071 -.7071] [y]
 1488     [z'] [0  .7071  .7071] [z]
 1489 \end{verbatim}
 1490 See Figure \ref{est-xrot}.
 1491 
 1492 \noindent{\tt
 1493 mged> {\em p 0 45 0} \\
 1494 mged>
 1495 }
 1496 
 1497 The torus is rotated 45 degrees counter-clockwise about the positive Y axis.
 1498 See Figure \ref{est-yrot}.
 1499 
 1500 \noindent{\tt
 1501 mged> {\em p 0 0 45} \\
 1502 mged>
 1503 }
 1504 
 1505 The torus is rotated 45 degrees counter-clockwise about the positive Z axis.
 1506 See Figure \ref{est-zrot}.
 1507 The original orientation is restored by entering
 1508 
 1509 \noindent{\tt
 1510 mged> {\em p 0 0 0} \\
 1511 mged>
 1512 }
 1513 
 1514 \subsection{Scale Operation}
 1515 
 1516 \begin{figure}
 1517 \centering \includegraphics{est-scale.ps}
 1518 \caption{Torus Scale Increased.}
 1519 \label{est-scale}
 1520 \end{figure}
 1521 
 1522 \noindent{\tt
 1523 mged> {\em Select the ``Scale'' entry in the solid edit menu} \\
 1524 mged> {\em p 1.5} \\
 1525 mged>
 1526 }
 1527 
 1528 The vertex remains the same and all distances from the vertex are
 1529 multiplied by 1.5, the value entered with p.  See Figure \ref{est-scale}.
 1530 To return to the original scale, enter
 1531 
 1532 \noindent{\tt
 1533 mged> {\em p 1} \\
 1534 mged>
 1535 }
 1536 
 1537 \subsection{Scale Radius 1 Command}
 1538 
 1539 \begin{figure}
 1540 \centering \includegraphics{est-sr1.ps}
 1541 \caption{Scale Torus Radius 1.}
 1542 \label{est-sr1}
 1543 \end{figure}
 1544 
 1545 \noindent{\tt
 1546 mged> {\em Select the ``edit menu'' entry in the solid edit menu} \\
 1547 mged> {\em Select the ``scale radius 1'' entry in the TORUS menu} \\
 1548 mged> {\em p 1.5} \\
 1549 mged>
 1550 }
 1551 
 1552 The distance from the vertex to the center of the cross-section of the
 1553 ring is set equal to the values given with {\em p}, e.g., 1.5.
 1554 See Figure \ref{est-sr1}.
 1555 The original scale can be restored with
 1556 
 1557 \noindent{\tt
 1558 mged> {\em p 1} \\
 1559 mged>
 1560 }
 1561 
 1562 \subsection{Scale Radius 2 Command}
 1563 
 1564 \begin{figure}
 1565 \centering \includegraphics{est-sr2.ps}
 1566 \caption{Scale Torus Radius 2.}
 1567 \label{est-sr2}
 1568 \end{figure}
 1569 
 1570 \noindent{\tt
 1571 mged> {\em Select the ``edit menu'' entry in the solid edit menu} \\
 1572 mged> {\em Select the ``scale radius 2'' entry in the TORUS menu} \\
 1573 mged> {\em p 0.5} \\
 1574 mged>
 1575 }
 1576 
 1577 The distance from the center of the cross-section of the ring is set equal
 1578 to the value given with {\em p}, e.g. 0.5.
 1579 This value must remain less than the value for r1.
 1580 See Figure \ref{est-sr2}.
 1581 The command
 1582 
 1583 \noindent{\tt
 1584 mged> {\em p 0.2} \\
 1585 mged>
 1586 }
 1587 
 1588 will restore the original shape.
 1589 
 1590 To return control to the VIEWING state, select the ``REJECT Edit''
 1591 item on the button menu, press the ``reject'' button on the button box,
 1592 or enter the command {\em press reject} on the keyboard.
 1593 Then, enter
 1594 
 1595 \noindent{\tt
 1596 mged> {\em d tor} \\
 1597 mged>
 1598 }
 1599 
 1600 to drop the torus from view.