[N-World Contents] [Book Contents] [Prev] [Next] [Index]

Working with Objects


As described earlier, an object is made up of two elements:

If you want to make changes to the location and orientation of an object without altering its body, you want to work with the object.

To edit an object:

1. (CLICK-L) on objects in the element sensitivity menu.

2. Move the mouse over the object you want to transform in N-Geometry.

You'll be able to tell you're working with an object in N-Geometry if both a bounding box and the local axes for that that object are displayed:

Figure 3.1 Objects are highlighted in a bounding box; local axes are also displayed at the object's origin

3. When the object you want to transform is highlighted, (SHIFT-L).

After you (SHIFT-L) on the object, a context-sensitive menu of transformation operations is displayed; only transformation operations are displayed on this menu:

Figure 3.2 Transform object flip menus

The mouse is automatically positioned over the menu. As you move the mouse up and down over the different operations, the mouse documentation line at the bottom of the screen tells you what happens if you (CLICK-L), (CLICK-M), or (CLICK-R) when you select an operation.

This menu is divided into two sections:


Object Transform Operations

This section describes the operations that let you change an object's transformation matrix- an object's transformation matrix determines its location, scale, and orientation.

Each of the object-transformation operations is described in more detail in this section. Additional "utility" operations that can be performed on an object are described in the section "Object Utilities," on page 3-28.

Note. Object transformation cannot be undone using the Undo command. This command is for body modifications only.

Apply Transform

Applies the matrix transformations to each vertex on the object's body, then reinitializes the matrix, making its previously transformed position its home position. This has the effect of shifting the object to coincide with the object's home position without changing the apparent location of the object.

Try this:

1. Create a tetrahedron and transform it away from the global center.

Note that right now its local axes are at the center of the object.

Figure 3.3 Transformed tetrahedron

2. (SHIFT-L) on the object, then (CLICK-L) on Apply Transform.

The local axes are returned to their home position, but the body of the object stays in its current position.

Figure 3.4 The matrix is reinitialized to its home position

The home position will be the global center unless you have used the Set Home command to save a new home position for the object.

Now, if you transform the object, those transforms are measured from the home position for the object. Consider a simple Rotate transform around the Y axis:

Figure 3.5 Transformations are measured from an object's local axes

Note. The Apply Transform operation cannot be undone.

Axis Move

Moves the object along a specified axis. (SHIFT-L) on the object, then choose the axis along which you want to translate it.

In Figure 3.6, we used Axis Move>X to move the sphere along the X axis.

Figure 3.6 Axis move

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Axis Scale

Scales the selected object(s) along a selected axis. Axis Scale has different capabilities, depending on which mouse button you use:

Figure 3.7 Left, original object; middle, normal Axis Scale along the X axis; right, using (CLICK-R) to retain volume

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Copy From

This option lets you copy the transformation matrix from one object to the current object.

To copy a transformation matrix from one object to the currently selected object:

1. (SHIFT-L) on the object whose matrix you want to change.

A list of objects in the scene is displayed:

2. (CLICK-L) on the object whose matrix you want to copy.

A list of objects in the scene is displayed:

Figure 3.8 Select the object whose transformation matrix you want to copy

3. (CLICK-L) on the object whose transformation matrix you want to copy.

If you want to copy the identity matrix, (CLICK-L) on global.

Free Rotate

Rotates the object independently around three orthogonal axes.

Figure 3.9 Two examples of rotating an object around a selected axis: left, original cube; middle, rotating around global y; right, rotating around edge selected

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Free Scale

Scales an object independently along each axis in the object's local coordinate system.

Figure 3.10 Left, original cube; right, transformed using Free Scale, which scales interactively along all three axes

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Home

Resets the object's transformation matrix back to its home position. The home position is by default the global center; if you have used the Set Home command to save a new home position, the transformation matrix is set to that position.

To see how the Home command works:

1. Create a tetrahedron and use Axis Move to transform it along the X axis:

Figure 3.11 Tetrahedron object translated along X axis

2. (SHIFT-L) on the tetrahedron object and (CLICK-L) on Axis Scale>Y.

Stretch the tetrahedron.

Figure 3.12 Tetrahedron object Axis Scaled along Y axis

Note. The Home command clears not only translations, but also any scaling, skewing or other transformations that may have been applied to the object.

3. (SHIFT-L) on the tetrahedron object and (CLICK-L) on Home.

The object is "reinitialized" to its home position (which, since no new home has been specified, is still the global center).

Figure 3.13 Tetrahedron returned to its home position with Home

Local Skew

This option distorts an object along a selected local axis (x, y, or z).

Figure 3.14 Local skew along X axis

Figure 3.15 Local skew along Y axis

Figure 3.16 Local skew along Z axis

Use (CTRL-L), (CTRL-M), (CTRL-R) to display a menu that lets you specify the amount of skew numerically rather than with the mouse.

Suppose you want to displace in y half the distance its vertices are from the origin in x. The x-component of the y-shear would be 0.5. If you wanted the object to displace upward (positive y) on the negative x side (and vice-versa), the x-component would be -0.5.

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Move

Move the object freely in the x, y, or z direction. Move the mouse left and right to move in the X, up and down to move in the Y, and (HOLD-M) to move in the Z; which XYZ coordinate system is used depends on which mouse click you use:

Figure 3.17 Moving an object

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Move Away

Move Away scales the distance between two or more selected objects.

To scale the distance between several objects:

1. (CLICK-R) on objects in the elements sensitivity menu.

Collect the objects you want to move away from each other.

Figure 3.18 Original set of objects

2. (CLICK-L) on Move Away.

3. From the menu that appears, choose an anchor point from which all the selected objects are moved.

Figure 3.19 shows the move away operation using the global center as the "anchor point," moving four tetrahedra away from each other.

Figure 3.19 Move Away moves objects away (or toward) each other (here with respect to the global center)

Choosing a point other than the global center will create different effects; for example, if you choose Select Element from the menu described above, then choose a point on one of the tetrahedra, the distance between the objects is scaled from that point, as shown in Figure 3.20:

Figure 3.20 You can select various points from which to base the Move Away operation

Note. Use Home to return object to their saved home state. To make the new positions the objects' new home positions, select the objects and use the Set Home command.

Move Origin

The Move Origin command lets you move an object's origin without moving the object's body.

To move the origin of an object:

1. (CLICK-L) on the object whose origin you want to move.

2. (CLICK-L) on Move Origin.

Move the mouse freely to adjust the local origin for the object.

Figure 3.21 Left, cube with unaltered origin; right, (CLICK-L) on Move Origin to move the origin interactively

If you want to select the position for the origin from a menu:

3. (CLICK-L) on the object whose origin you want to move.

4. (CLICK-R) on Move Origin.

Choose the new location for the object's origin.

Figure 3.22 Left, cube before Move Origin; right, (CLICK-L) on Move Origin and (CLICK-M) on Origin (to select global origin)

Move To

Move To moves an object's center (or a selected point on the object's body) to another point.

Consider an example like the one in Figure 3.24; you could use this feature to make the tetrahedron's center co-local with one of the corners of the cube:

Figure 3.23 A tetrahedron inside of a cube

1. (SHIFT-L) on the tetrahedron.

2. (CLICK-L) on Move To.

3. (CLICK-L) on Select Element.

4. (CLICK-L) on the cube's upper right corner.

Figure 3.24 The tetrahedron's object is moved to the selected location

If you (CLICK-M) on Move To, you are given even more flexibility in moving an object.

1. (SHIFT-L) on the tetrahedron.

2. (CLICK-M) on Move To.

3. (CLICK-L) on Select Element.

4. (CLICK-L) on the tetrahedron's upper right corner.

A menu appears, asking where you want to place the selected point.

5. (CLICK-L) on Select Element.

6. (CLICK-L) on the cube's upper right corner.

You should see something like this:

Figure 3.25 You can align objects based on some element of the object as well (like a point)

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Plane Move

Moves an object around on a selected plane, with local rotations perpendicular to the chosen plane.

Figure 3.26 Plane move on the Y plane

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Remember

Lets you temporarily save the transformation matrix of the currently selected object. To remember a transformation matrix:

1. (SHIFT-L) on the object whose transformation matrix you want to remember.

A dialog box appears:

Figure 3.27 Remember

Once an object's transformation matrix has been saved, you can click on Use Remembered to get a menu of all saved transformation matrices for all loaded objects. To save a transformation matrix to file, (CLICK-R) on Select.

Rotate

Rotates the object around a selected axis.

Figure 3.28 Left, original object; middle, similar object rotated on Y axis; right, rotated on Z axis

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Scale

This option scales the object along three axes uniformly in the object's local coordinate system.

Figure 3.29 Object scaled around object center with (CLICK-L)

Figure 3.30 Object scaled around a selected vertex with (CLICK-R)

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Scale to Fit

This operation scales one object to match the size of another object.

Scales the scale portion of an object's transformation matrix to match that of another object. In Figure 3.31, assume that you want the sphere to be the same scale as the tetrahedron:

Figure 3.31 Scale to fit (before)

1. (SHIFT-L) on the sphere object.

2. (CLICK-L) on Scale to Fit.

3. Choose the target object from the list that appears.

If you were to choose the tetrahedron shown above as the target object, you'd get results that looked something like this:

Figure 3.32 Scale to fit (after)

Note that the object is translated as well.

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.

Select

The Select command lets you replace the current object's transformation matrix with a previously remembered matrix.

Figure 3.33 Using a "remembered" transformation matrix

See the section "Remember," on page 3-20 for instructions on how to save a transformation matrix.

Figure 3.34 Transformation matrix operations

Set Home

Set Home makes the current transformation matrix the "home" matrix for the object. This will be the transformation to which an object returns when you use Home on the object.

Skew

Skew resembles Local Skew, but the axes are defined according to the axes of the superior object.

To see how Skew works, try this:

1. Create a new tetrahedron object.

2. (SHIFT-L) on the object and (CLICK-L) on Axis Move>X.

Move the object away from the global center.

3. (SHIFT-L) on the object and (CLICK-L) on Rotate>Y.

Your tetrahedron should look something like this:

Figure 3.35 Original object and copy translated along X and rotated on its local Y axis

Note that the local axes for the transformed tetrahedron are no longer aligned with the global center.

4. (SHIFT-L) on the transformed tetrahedron, and (CLICK-R) on Skew.

Move the mouse left and right to skew the object; note, however, that instead of using the object's local coordinate system, it uses that of its superior (which in this case is the global coordinate system).

Figure 3.36 The object is skewed along the object's superior (in this case, the global center)

Note. Use Home to return the object to its saved home state. To make this the object's new home position, select the object and use the Set Home command.


Object Utilities

The object utilities are some generalized features that you commonly perform on an object:

Each of these operations is described (in alphabetical order) in the sections below.

Backfacing

Toggles the backfacing on/off for the selected object's body. If turned on, N-Geometry displays only those faces whose normals point toward the camera.

Toggling backfacing on is useful whenever you want to hide the faces pointing away from the camera. With backfacing turned on, an object feels more "solid" than "wireframe."

To toggle the backfacing of an object's body:

1. (SHIFT-L) on the object.

2. (CLICK-L) on Backfacing.

Figure 3.37 Left, object with backfacing off; right, backfacing on

Copy

Makes a discrete copy of the selected object(s). For more information, see the section "Copy," on page 2-59.

Delete

Deletes the selected object(s) from the scene. For more information, refer to the section "Delete," on page 2-68.

Describe

Prints out the object's transformation matrix in the UNIX shell window from which N·World was started. You may find it helpful at times to be able to read the transformation matrix of an object (for example, to see if an operation you performed actually did what you think it did).

A transformation matrix looks something like this:

32 (move)

  1.0000          .0000         .0000          .0000

   .0000        1.0000         .0000          .0000

   .0000         .0000        1.0000         .0000

   12.26            2.00            5.50       1.0000

The values in a transformation matrix are arranged as follows:

Except for translations, which are always on the bottom, rotations, skews, and scales affect more than one component of the matrix, so it's not necessarily possible to point to a slot and say what it contains-multiple transform operations affect more than one component.

Export

Exports the selected object in one of the formats described in the section "Export," on page 2-53.

Hard Edging

Hard Edging toggles the display of edges whose adjacent faces meet at an angle greater than a specified value. This option is useful when animating (with N-Dynamics) if you want to turn off the display of some edges. This operation does not affect the geometry of the object, only its display!

Figure 3.38 Left, original object; right, with hard edging of 10 degrees

A higher value will turn off the display of more edges; if you're experimenting, start with a value of 10 degrees, and go up in 10 degree increments from there.

Figure 3.39 shows an object in its original state, and with hard edging turned on to reduce the number of displayed edges:

Figure 3.39 Left, original object; right, with hard edging of 10 degrees

List

The List command displays a list of elements in the selected object(s). This list is printed in the UNIX shell window from which N·World was started.

A list for a complex object might look like this:

----------------- SELECTED OBJECTS --------------------

"2-Subobjects" 

   "Copy of Torus"  #<POLYHEDRON 94>:   648pts  1296edges   648faces.

   "Torus"          #<POLYHEDRON 91>:   648pts  1296edges   648faces.

Element totals:  1296 pts, 2592 segments, 1296 faces.

Local Axes

Toggle the display labeled local axes of terminal objects. Displaying local axes makes it easy to see where an object's origin is (see Figure 3.40.) This feature makes it easier to visualize transformations, many of which are relative to the local axes.

Figure 3.40 Displaying local axes makes it easy to see how a transform operation will work

This is identical to the Local Axes command described in the section "Local Axes," on page 6-5.

Multiply

Creates multiple versions of the selected object(s), allowing you to create complex lattices of various shapes. For more information, see the section "Multiply," on page 2-61.

Normals

Toggles the display of normals for the selected object; you can display normals for points, edges, or faces, depending on which button you click:

Figure 3.41 Left, cube with point normals displayed; middle, edge normals; right, face normals

Points

The Points operation toggles highlighting of the object's vertices (see Figure 3.42.) This type of presentation is especially useful with wires or with objects that have many vertices with only two adjacent edges, which might appear to blend together if the angle between them is fairly small.

The highighted point radius can be set using Utilities>Preferences>Objects>Point Display Radius.

Figure 3.42 Object with point display turned on

Reinstance

Creates a new instance of the selected object; the reinstance and the original object share the same body, so that changes made to the body in one place are reflected in every reinstance. For more information, see the section "Reinstance," on page 2-59.

Rename

Renames the selected object. When you select the object to be renamed, a dialog box appears with the object's current name in it.

Figure 3.43 Object with point display turned on

(CLICK-L) to position the cursor in the text edit box, or (CLICK-M) to clear out the text edit box completely and enter a new name. (CLICK-L) on Rename when you're done.

Restructure

Restructures the selected object into a different level in the object hierarchy. Restructuring, and object hierarchy in general, are described in more detail in the section "Restructure," on page 7-2.

Restructuring using a click and drag approach is also possible through the use of the Browser, as described in Getting Started.

Save

Save the selected object. This is identical to the Save command described in the section "Save," on page 2-50.

Sensitivity

Toggles the sensitivity on/off for the selected object's body. If turned on, the object's body is made temporarily "insensitive;" it cannot be modified (with any of the body modification operations). The insensitive body is displayed in a lighter gray in the N-Geometry window.

Toggling sensitivity is useful if you have several overlapping bodies, and want to be able to work on one without affecting another.

To toggle the sensitivity of an object's body:

1. (SHIFT-L) on the object.

2. (CLICK-L) on Sensitivity.

Figure 3.44 Left, insensitive body; right, sensitive body

Shading

Toggles the shading on/off for the selected object. If turned on, the object is hardware-rendered in the N-Geometry window using GL Shade.

To toggle an object's shading:

1. (SHIFT-L) on the object.

2. (CLICK-L) on Shading.

Figure 3.45 Original and shaded object

Stand-ins

The Stand-ins command displays a "substitute" box instead of the object itself whenever you move the camera or transform the object.

The substitute is essentially a bounding box which encompasses the object. The use of substitute boxes greatly increases the speed with which camera movements and transformations for more complicated objects are performed, because fewer lines need to be drawn.

This is identical to the Stand-ins command as described in the section "Stand-ins," on page 6-8.

Visibility

Makes the selected object invisible.

To toggle an object's visibility:

1. (SHIFT-L) on the object.

2. (CLICK-L) on Visibility.

Once you've made an object invisible, you can no longer select it directly; to make an invisible object visible again, use GeoMenus>Object Display>Visibility.

This displays a list of all objects in the scene; depending on which mouse click you use, you can make one or more elements visible.

For more information, see the section "Visibility," on page 6-8.



[N-World Contents] [Book Contents] [Prev] [Next] [Index]

Another fine product from Nichimen documentation!

Copyright © 1996, Nichimen Graphics Corporation. All rights reserved.