## "Fossies" - the Fresh Open Source Software Archive

### Member "brlcad-7.32.4/doc/mged/d.tex" (29 Jul 2021, 29029 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{VIEWING FUNCTIONS}
2
3 The MGED viewing features are designed to allow one to examine an object
4 in close detail.  Any of the viewing features can be invoked at any time.
5 It should be noted, that these functions do not change the actual data,
6 only the way the data is displayed.
7
8 \section{Preset Views}
9
10 Six standard views (front, rear, top, bottom, left, and right) and one
11 oblique view (azimuth 35, elevation 25 isometric) are each assigned to the
12 function buttons, views 35 25 (isometric), top, right, front,
13 45 45 are available from the screen editor menu.  Hence, any of these views
14 is immediately available at the press of the appropriate function button or
15 mouse selection.  The views available are not limited to these standard views
16 however, as the display can be rotated to any view by using the dial box.  By
17 pressing the function button labeled save view'' or entering
18 the keyboard {\em saveview} command, the present view as displayed display is
19 saved (used for raytracing,
20 producing colored pictures, which will be discussed later).
21 At any time, the saved view can be immediately returned to the
22 screen by pressing the restore view'' function button.  The
23 restore view'' button will be lit whenever a view has been saved.
24 The function button labeled reset'',
25 restores the display to the default view (front) when pressed.
26
27 \section{View Translation}
28
29 The displays can be panned or slewed on the screen in two ways -- using the
30 mouse pointer or by using the dial box knobs.  When one is editing, the mouse
31 functions are not available for slewing, hence one must use the dial box knobs
32 to slew the display.
33
34 To slew the display using the control knobs, one uses the knobs labeled
35 slew x'' or slew y''.  The null positions on these knobs is in the
36 center or straight up.  If the slew x'' knob is turned clockwise of center,
37 the display will move to the right.  If it turned counterclockwise, the
38 display will move to the left.  For the slew y'' central knob, clockwise
39 of the center moves the display up and counterclockwise moves the display
40 down.  The further these knobs are turned from center, the faster the display
41 moves.
42
43 \section{View Zooming}
44
45 One can zoom the display by using the dial box knob labeled zoom''.
46 Again the null position of this knob is center or straight
47 up.  Turning this knob clockwise of center causes the display to increase in
48 size producing a zoom-in effect.  Turning this knob counterclockwise of center
49 causes the display to decrease in size or zoom-out.  Again, the further the
50 zoom'' knob is turned from center, the faster the zooming will occur.
51
52 \begin{figure}
54 \caption{The Angle Distance Cursor.}
56 \end{figure}
57
58 \section{The Angle Distance Cursor (ADC)}
59
60 The angle distance cursor is a construction aid used to measure
61 angles and distances. It should be noted that all measurements are
62 made in the projected space of the screen, so one should measure only
63 in a view normal to the surface where the measurement is to take place.
64 The ADC is placed on (or removed from) the display by pushing the ADC''
65 button.
66 The ADC consists of three cursors which cover the entire screen.
67 Figure \ref{adc} depicts the ADC as it appears on the screen.
68 All the cursors are centered at the same point and can be moved to any
69 location on the screen.  Two of these cursors rotate for angle measuring
70 purposes. Angle cursor 1 is solid while angle cursor 2 is dashed.  Angle
71 cursor 1 has movable tic marks for measuring distances on the screen.
72 The two angle cursors move with the horizontal and vertical
73 lines of the main cursor.
74 The resulting effect is the moving of the center point
75 horizontally or vertically.
76 The ADC is controlled by the bottom row
77 of the (Megatek) knobs:
78
79 \begin{tabular}{rl}
80 Knob  & Function \\
81  \\
82 6     & moves the center in the horizontal direction \\
83 7     & moves the center in the vertical direction \\
84 8     & rotates angle cursor 1  (alpha) \\
85 9     & rotates angle cursor 2  (beta) \\
86 10    & moves the tic marks
87 \end{tabular}
88
89 Whenever the ADC is on the screen, there is a readout at the bottom of
90 the screen listing pertinent information about the ADC.
91 This information includes the angles that angle cursors 1 and 2
92 have been rotated (alpha and beta), the distance the tic marks are
93 from the center of the ADC, and the location of the center of the ADC.
94 This information is continually updated on the screen.
95
96 \chapter{MGED EDITING FEATURES}
97
98 The heart of the MGED system is its editing features.
99 The editing features are divided into two classes: object editing
100 and solid editing.
101 Object editing is designed to allow one to change the location,
102 size, and orientation of an object.
103 Recall that an object is defined as the basic data unit of the
104 MGED system and includes both combinations and solids.
105 In the case of a solid, one needs to change not only its location,
106 size, and orientation, but also its shape''.
107 Changing the shape of a solid means changing any of its individual parameters.
108 Hence, solid editing is handled separately.
109
110 \section{Combination Editing (OBJECT EDIT)}
111
112 Before being able to enter the OBJECT EDIT state
113 (i.e. edit non-terminal),
114 it is necessary to pass through two intermediate states
115 in which the full path of an object to be edited is specified,
116 and the location of one arc along that path is designated for editing.
117 It is possible to create a transformation matrix to be applied
118 above the root of the tree, affecting everything in the path,
119 or to apply the matrix between any pair of nodes.
120 For example, if the full path /car/chassis/door is specified,
121 the matrix could be applied above the node car'', between
122 car/chassis'', or between chassis/door''.
123
124 The transformation matrix to be applied at the
125 designated location can be created by the concatenation of
126 operations, each specified through several types of user direction.
127 Trees can be rotated around the center of the viewing cube;
128 this rotation can be specified in degrees via keyboard command, or can
129 be controlled by the rotation of a set of control dials or motions on
130 a three-axis joystick.
131 Translation of trees can be specified in terms of a precise new location
132 via keyboard command, or by adjusting a set of control dials.
133 Tree translation can also be accomplished by pointing and
134 clicking with the mouse or tablet.
135 Uniform and single-axis (affine) scaling of a tree can be controlled
136 by a numeric scale factor via keyboard command, or by way of repeated
137 analog scaling by pointing and clicking with the mouse or tablet.
138 Before we discuss the editing features of MGED, we will discuss
139 how one selects objects for editing.
140
141 \section{Selecting Objects For Editing}
142
143 To select a displayed object for editing, press the object illuminate button
144 or select Object illum'' from the ***BUTTON MENU***.
145 The object selection is a two step process.
146
147 Whenever an object is displayed (using the {\em e} command), all paths in the
148 object's hierarchy are traversed recursively, accumulating the transformation
149 matrices.  When the bottom of the path (a solid) is encountered, the
150 accumulated
151 transformations are applied to the solid's parameters and the solid is drawn.
152 Thus every solid displayed is really a path ending with that solid.
153 If the object has been displayed using the {\em E} command, the same procedure
154 is followed, but only until a region is encountered.
155 Then all members of the region have the accumulated transformations
156 applied and the region is then evaluated'' and drawn.
157
158 In the first step of the object selection process, the path is selected.
159 Again, the data tablet is divided in as many horizontal sections as there are
160 paths drawn.
161 The path (solid or evaluated region) corresponding to the horizontal
162 section the pen/mouse is located in will be illuminated (brighter on B/W
163 displays and white on color displays).
164 This complete path is also listed on the display.
165 When the pen/mouse is pressed the illuminated path is selected.
166
167 In the second step, a member of the selected path is chosen.
168 All editing will then be applied to this member.
169 The tablet is divided into as many horizontal sections as there are
170 path members.
171 The word [MATRIX]'' is used to illuminate path members and will appear
172 above the member corresponding to the location of the pen/mouse.
173 Pressing the pen/mouse when the desired path member is illuminated''
174 will put MGED in the object edit state.
175 The editing will be performed on the path member selected.
176
177 If a solid is located at the bottom of this path, it becomes the key
178 solid and its vertex becomes the key point.
179 If an evaluated region is at the bottom of the path, the center of
180 this region becomes the key point.
181 All object editing is done with respect to this key point.
182
183 The object editing features can be invoked in any order and at any time
184 once an object has been selected for editing.  During object editing, any of
185 the viewing features, such as changing views, zooming, and slewing, can be
186 used, and in fact, are usually quite useful.  Again, the only way to exit the
187 object editing mode is to accept'' or reject'' the editing.
188 If the reject'' button is pressed (or selected from the edit menu), the
189 object will return to its pre-edit state.  If the accept'' button is pressed
190 (or selected from the edit menu), the data base will be changed to reflect the
191 object editing performed.
192
193 \section{Object Edit State}
194
195 When MGED enters the object edit state, the following occurs:
196
197 \begin{enumerate}
198 \item all the solids/evaluated regions of the edited object
199 become illuminated
200 \item the key solid's parameters are labeled  OR \\
201 the center of the key evaluated region is marked
202 \item the key solid's parameters are listed and
203 continually updated  OR \\
204 the key evaluated region's center is listed and
205 continually updated
206 \item the ***OBJ EDIT*** menu is displayed
207 \end{enumerate}
208
209 \section{Translate An Object}
210
211 There are three ways to translate an object:  translate in the screen
212 X direction only (X move), translate in the screen Y direction only
213 (Y move) or just straight translation (XY move).
214 In all cases, the complete object is translated so that the key point''
215 is positioned at the desired location.
216 The {\em translate} command is used to enter a precise location (x,y,z) for
217 the key point.
218 Entering {\em translate x y z} will move the complete object so that the key
219 point will be at coordinates (x,y,z).
220
221 \section{Rotate An Object}
222
223 Rotation of the object may be accomplished by selecting the Rotate''
224 menu item, or pressing the Rotate'' button.
225 Turning the knobs results in the object being rotated.
226 The {\em rotobj x y z} command can be used here, to specify
227 a precise rotation in degrees.
228 While in this edit state, the only way to rotate view is to use
229 the {\em vrot x y z} command.
230
231 \section{Scale An Object}
232 \subsection{Global Scale}
233
234 To select global object scale, press the object scale button or select
235 Scale'' from the ***OBJ EDIT*** menu.
236 When the pen/mouse is pressed, the edited object is scaled about the key
237 point by an amount
238 proportional to the distance the pen/mouse is from the center of the screen.
239 If the pen/mouse is above the center, the edited object will become larger.
240 If it is below the center, the object will become smaller.
241 The {\em scale} command can be used to enter precise scale factors.
242 The value entered is applied to the object as it existed when object
243 scale was entered.
244 Hence entering {\em scale 1} will return the object to its size when the
245 object scale session first started.
246
247 \subsection{Local Scale}
248
249 Local object scaling is allowed about any of the coordinate axes.
250 To select local scaling, press one of the buttons (OBJ Scale X, OBJ Scale Y,
251 or OBJ Scale Z) or select Scale X'', Scale Y'', or Scale Z'' from
252 the ***OBJ EDIT*** menu.
253 When the pen/mouse is pressed, the edited object is scaled in the selected
254 coordinate axis only, about the key point.
255 The amount of scaling is proportional to the distance the pen/mouse is
256 from the center of the screen.
257 If the pen/mouse is above the center, the edited object will become larger
258 in the selected axis direction.
259 If it is below the center, the object will become smaller in the selected
260 axis direction.
261 The {\em scale} command can be used to enter precise scale factors.
262 The value entered is applied to the object as it existed when local object
263 scale was entered.
264 Hence entering {\em scale 1} will return the object (in the selected axis
265 direction) to its size when the object scale session first started.
266
267 \section{Solid Editing}
268
269 There are two classes of editing operations that can be performed on
270 leaf nodes, the primitive solids.
271 The first class of operations are generic operations which can be applied to
272 any type of solid, and the second class of operations are those operations
273 which are specific to a particular type of solid.
274 Generic operations which can be applied to all primitive solids are
275 rotation, translation and scaling.
276 Recall that primitives can be treated as any other object and object
277 edited'' as detailed above.
278 Each primitive solid also has a variety of editing operations available that
279 are specific to the definition of that solid.  These operations are
280 detailed below.
281
282 The solid editing mode is necessary to
283 perform to basic shapes of solids.
284 Precise modifications
285 of the shape are possible (using the {\em p} keyboard command) in the solid
286 editing mode.
287
288 The solid editing feature allows the user to interactively translate,
289 rotate, scale, and modify individual parameters of a solid.  Whenever one is
290 in the solid edit mode, the parameters of the solid being edited are listed
291 and continually updated at the top of the screen.  Certain parameters are
292 also labeled on the solid being edited.  Solid editing  is generally used to
293 build'' objects by producing solids of the desired shape and size in the
294 correct orientation and position.  Once the object is built, object editing
295 is used to scale, orient, and position the object in the description.  The
296 general philosophy of solid editing is to first create a solid with the
297 desired name and then to edit this solid.  As an example, suppose one were
298 to build an object called BRACKET''; to produce the base of the object the
299 primitive solid type ARB8 (see Figure 1) would be used along with either the
300 {\em in} command or {\em make} command, so one would type:
301 \begin{verse}
302      in btm box 0 0 0  0 -90 0  40 0 0  0 0 6 \\
303      make block arb8
304 \end{verse}
305 A new solid called btm'' or block'' would be created and displayed on the
306 screen.  These solids would then be edited using solid editing to produce the
307 solid parameters for the shape desired.
308
309 \section{Selecting Solids For Editing}
310
311 The procedure for solid editing is quite similar to that for object editing.
312 First, solid edit state must be entered, by pressing the
313 solid illuminate'' button, or selecting the solid illum'' menu item.
314 Second,
315 A solid is selected for
316 editing using the illuminate mode, just as in object editing,
317 by moving the cursor up and down, and choosing the desired solid.
318 The solid data is listed at the top of the screen and a
319 header depending on the solid type is written above the solid editing data.
320 Third, select the appropriate function button or edit menu operations,
321 and perform the editing desired.  Finally, the solid
322 editing mode is exited
323 by either accepting or rejecting the editing performed.
324
325 A solid must be displayed before it can be picked for editing.
326 To pick a displayed solid for editing, press the solid illum'' button or
327 select Solid Illum'' from the ***BUTTON MENU***.
328 The data tablet and pen/mouse are then used to pick the solid.
329 The surface of the data tablet is divided into as many horizontal sections
330 as there are solids displayed.
331 The displayed solid corresponding to the horizontal section the pen/mouse
332 is located in will be illuminated'' (it will become brighter on black and
333 white devices and white on color devices).
334 The complete hierarchical path to reach the solid is also listed on the
335 display.  When the pen/mouse is pressed, MGED enters the solid edit state
336 with the illuminated solid as the solid to be edited.
337 If the solid is not multiply referenced, entering {\em sed solidname} on
338 the keyboard will immediately put MGED in the solid edit state with
339 {\em solidname} as the edited solid.
340
341 \section{Solid Edit State}
342
343 When MGED enters the solid edit state, the following occurs:
344
345 \begin{enumerate}
346 \item the edited solid remains illuminated
347 \item the edited solid's parameters are labeled
348 \item the edited solid's parameters are listed
349 \item  (and continually updated)
350 \item the ***SOLID EDIT*** menu is displayed
351 \item the parameter edit menu is initially displayed (default)
352 \end{enumerate}
353
354 \section{Rotate A Solid}
355
356 Solid rotation allows the user to rotate the solid being edited to any
357 desired orientation.  The rotation is performed about the vertex of the
358 solid.  To select this option, one presses the function button labeled
359 solid rotate'' or selects from the edit menu on screen.
360 The rotation can be done using the dial box or one can input exact angles
361 of rotation of the solid by using the {\em p} keyboard command.
362 For example, typing:
363 {\em \center
364 p alpha beta gamma
365 }
366 will rotate the solid {\em alpha} degrees about the x-axis, {\em beta} degrees
367 about the y-axis and {\em gamma} degrees about the z-axis.  Alpha, beta, and
368 gamma are measured from the original zero'' orientation of the solid,
369 defined when the solid edit'' function button was
370 pressed.  Hence, typing
371 {\em \center
372 p 0 0 0
373 }
374 will always return the solid to its original position (its position when the
375 current solid editing session began) before accepting edit.
376
377 To select solid rotation, press the solid rotate button or select Rotate''
378 from the ***SOLID EDIT*** menu.
379 The joy stick or appropriate rotation knobs then will rotate the edited solid
380 about the coordinate axes.
381 The solid is rotated about its vertex.
382 The parameter (p) command can be used to make precise rotation changes.
383 The values entered after the p are absolute -- the rotations are applied
384 to the solid as it existed when solid rotation was first selected.
385 Thus entering {\em p 0 0 0} will undo'' any rotations performed since
386 solid rotation was selected.
387 The rotation about the z-axis is done first, then the y, then the x.
388
389 \section{Translate A Solid}
390
391 Solid translation allows the user to place the solid being edited anywhere
392 in the description.  To invoke this option, one presses the function
393 button labeled solid trans'' or selects from the screen edit
394 menu.  To move the solid, use the mouse pointer to position the solid and
395 click the center mouse button.  Whenever the mouse button is pressed, the
396 VERTEX of the solid moves to that location on the screen.
397
398 One can read the actual coordinates of the vertex on the top of the
399 screen, along with other data.  If the actual desired coordinates of the
400 vertex are known, one can place the solid exactly using the {\em p} keyboard
401 command.  For example, to place a solid's vertex at the coordinates (x,y,z)
402 one would type:
403 {\em \center
404 p40 20 10
405 }
406 The solid would then jump to this location.
407
408 To select solid translation, press the solid translate button or
409 select Translate'' from the ***SOLID EDIT*** menu.
410 When the pen/mouse is pressed, the vertex of the edited solid will
411 move to that location.
412 The parameter (p) command can be used to translate the solid to
413 a precise location.
414 Entering {\em p x y z} will place the vertex of the edited solid at (x, y, z).
415
416 \section{Scale A Solid}
417
418 The solid SCALE feature allows the user to scale the solid being to any
419 desirable size.  The scaling is done about the vertex of the solid, hence NO
420 translation of the solid occurs.  The scaling is performed using the mouse
421 pointer and clicking the center mouse button, just as in object scaling.  One
422 can input an exact scale factor using the {\em p} keyboard command, in the form
423 of.  For example, typing
424 {\em \center
425 p factor
426 }
427 will scale the solid by an amount equal to {\em factor}.   The value of
428 {\em factor} is absolute -- the original solid is scaled.  By setting {\em factor}
429 equal to one (1), the original size solid will be displayed on the screen
430 before accepting your edit.
431
432 To select solid scale, press the solid scale button or select Scale''
433 from the ***SOLID EDIT*** menu.
434 When the pen/mouse is pressed, the edited solid is scaled by an amount
435 proportional to the distance the pen/mouse is from the center of the screen.
436 If the pen/mouse is above the center, the edited solid will become larger.
437 If it is below the center, the solid will become smaller.
438 The parameter (p) command can be used to enter precise scale factors.
439 The value entered is applied to the solid as it existed when solid
440 scale was entered.
441 Hence entering {\em p 1} will return the solid to its size when solid scale
442 session first started.
443
444 \section{Solid Parameter Editing}
445
446 To modify individual solid parameters, press the menu button or select
447 edit menu'' from the ***SOLID EDIT*** menu.
448 A menu listing what parameter editing is available for that particular
449 solid type will be displayed.
450 Using the pen/mouse select the desired item(s) from this menu.
451 For most of the parameter editing, the {\em p} command can be used to
452 make precise changes.
453 Parameter editing is the default edit mode entered when MGED first
454 enters the solid edit state.
455 In the following paragraphs, we will discuss parameter editing
456 for each of the MGED general types of solids.
457
458 \begin{figure}
460 \caption{ARB Control Menu.}
462 \end{figure}
463
464 \subsection{ARB Parameter Editing}
465
466 The GENERAL ARB class of solids represents all the convex polyhedrons
467 (RPP, BOX, RAW, and ARBs).
468 The ARBs comprise five classes of polyhedrons each with a characteristic
469 number of vertices.
470 These are the ARB8, ARB7, ARB6, ARB5, and ARB4, where the ARB8 has
471 eight vertices, etc.
472 During editing, all the vertices are labeled on the screen.
473
474 An ARB is defined by a fixed number of vertices where all faces must
475 be planar.  This fact means that during parameter editing, movement
476 of individual vertices in faces containing four vertices is not allowed.
477 There are three classes of parameter editing that can be done to ARBs:
478 move edges,
479 move faces, and rotate faces.  There is an ARB control menu''
480 (see Figure \ref{menu-arb-ctl}) from
481 which one selects the type of parameter editing to be done.
482 A specific ARB edit menu will appear dependent on which parameter editing
483 option was selected.  The return'' entry on each of these specific menus
484 will return the ARB control'' menu to the screen.
485
486 Note that there are several keyboard commands that apply only to ARB solids
487 which are being edited in SOLID EDIT state.
488 Once such command is {\em mirface}, which replaces a designated
489 face of the ARB with a copy of an original face mirrored about
490 the indicated axis.
491 Another such command is {\em extrude}, which projects a designated face
492 a given amount in the indicated direction.
493
494 \begin{figure}
496 \caption{Move Edge Menu for ARB8.}
498 \end{figure}
499
500 \begin{figure}
502 \caption{Move Edge Menu for ARB4.}
504 \end{figure}
505
506 \begin{figure}
508 \caption{Move Face Menu for ARB8.}
510 \end{figure}
511
512 \begin{figure}
514 \caption{Move Face Menu for ARB4.}
516 \end{figure}
517
518 \subsection{Move ARB Edges}
519
520 To move an ARB edge, select the desired edge from the move edge'' menu.
521 For example, Figure \ref{menu-arb8-edge} shows the menu for
522 moving an edge of an ARB8, and Figure \ref{menu-arb4-edge}
523 shows the menu for moving an edge of an ARB4.
524 A point is then input'' either through a pen press or through the {\em p}
525 command.
526 The line containing the selected edge is moved so that it goes through
527 coordinate of the input point.
528 Any affected faces are automatically adjusted to remain planar.
529
530 \subsection{Move ARB Faces}
531
532 To move an ARB face, select the desired face from the move face'' menu.
533 A point is then input'' either through a pen press or through the {\em p}
534 command.  The plane containing the edited face is then moved so that it
535 contains the input point.  The new face is then calculated and the ARB
536 is displayed.
537 The move face menus for an ARB8 are shown
538 in Figure \ref{menu-arb8-face}, and the move face menus for an ARB4
539 are shown in Figure \ref{menu-arb4-face}.
540
541 \begin{figure}
543 \caption{Rotate Face Menu for ARB8.}
545 \end{figure}
546
547 \begin{figure}
549 \caption{Rotate Face Menu for ARB4.}
551 \end{figure}
552
553 \subsection{Rotate ARB Faces}
554
555 ARB faces may be rotated around any of the vertices comprising that face.
556 First, select the desired face from the rotate face'' menu.  You will then
557 be asked to select the vertex number around which to rotate the face.
558 The face can be rotated about the three coordinate axes.  The knobs (Rotate X,
559 Rotate Y, and Rotate Z) are used for this purpose.  For precise rotations,
560 use the {\em p} command.  If three values are entered after the {\em p}, then
561 they are interpreted as angles (absolute) of rotation about the X, Y, Z axes
562 respectively.  If only two values are entered, then they are considered as
563 rotation and fallback angles for the normal to that face.  The {\em eqn}
564 command can also be used here to define the plane equation coefficients of
565 the face being rotated.
566 The rotate face menus for an ARB8 are shown
567 in Figure \ref{menu-arb8-rot}, and the rotate face menus for an ARB4
568 are shown in Figure \ref{menu-arb4-rot}.
569
570 \begin{figure}
571 \centering \includegraphics{ped-tgc.ps}
572 \caption{Typical TGC During Parameter Editing.}
573 \label{ped-tgc}
574 \end{figure}
575
576 \subsection{Truncated General Cone (TGC) Parameter Editing}
577
578 The TGC general class of solids includes all the cylindrical COMGEOM solids.
579 The defining parameters of the TGC are two base vectors (A and B), a height
580 vector (H), two top vectors (C and D), and the vertex (V).
581 The top vectors C and D are directed the same as the base vectors A and
582 B respectively,
583 hence the top vectors are defined only by their lengths (c and d).
584 During solid editing, only vectors A and B are
585 labeled on the display.
586 Figure \ref{ped-tgc} depicts a typical TGC during parameter editing.
587
588 It is possible to change the length of the H, A, B, C, or D
589 vectors, resulting in a change in height or eccentricity of the
590 end plates.  The overall size of the A,B or C,D end plates can
591 be adjusted, or the size of both can be changed together, leaving
592 only the H vector constant.
593 The H vector or the base plate (AXB) can be rotated.
594 Recall that vectors A \& C and vectors B \& D have like directions, hence
595 rotating the base (AXC) will automatically rotate the top (BXD).
596 Finally, one can move the end of the height vector H
597 with the TGC becoming or remaining
598 a right cylinder (move end H (rt)),
599 or with the orientation of the base (and top)
600 unchanged (move end H).
601 Either the mouse/tablet or the {\em p} command can be used.
602 These functions are selected from the menu which can be seen
603 in Figure \ref{ped-tgc}.
604
605 \begin{figure}
606 \centering \includegraphics{ped-ell}
607 \caption{Ellipsoid Parameter Editing Menu.}
608 \label{ped-ell}
609 \end{figure}
610
611 \subsection{Ellipsoid Parameter Editing}
612
613 The ELLG general class represents all the ellipsoidal solids, including
614 spheres and ellipsoids of revolution.
615 The defining parameters of the ELLG are three mutually perpendicular
616 vectors (A, B, and C) and the vertex (V).
617 When an ELLG is being edited, only vectors A and B are labeled on the display.
618 Figure \ref{ped-ell} depicts a typical ELLG during parameter editing.
619
620 The parameter editing of the ELLG consists of scaling the lengths of the
621 individual vectors A, B, C.
622 One may also scale all theses vectors together of equal length.
623
624 The scaling of these vectors is done using the data tablet/mouse in
625 exactly the same manner as in object scaling.
626 The {\em p} keyboard command again can be used to produce a vector of
627 desired length.
628
629 \begin{figure}
630 \centering \includegraphics{ped-tor}
631 \caption{Torus Parameter Editing Menu.}
632 \label{ped-tor}
633 \end{figure}
634
635 \subsection{Torus Parameter Editing}
636
637 The TOR general class of solids contains only one type of torus, one with
638 circular cross-sections.
639 The defining parameters of the TOR are two radii (r1 and r2), a normal
640 vector (N), and the vertex (V).
641 The scalar r1 is the distance from the vertex to the midpoint of the
642 circular cross section.
643 The scalar r2 is the radius of the circular cross-section.
644 The vector N is used to orient the torus.
645 During solid editing, none of these parameters are labeled on the screen.
646 Figure \ref{ped-tor} depicts a typical torus during parameter editing.
647
648 The parameter editing of the TOR consists of scaling the radii, hence the
649 menu contains only two members.