Positioning Policies

Positioning policies are used to control object placement and movement within the workspace. Positioning Policies can be classified according to type.

Rotate Policies

Rotate policies control the object’s ability to rotate by a certain number of degrees within its plane.

Rotate

As its name indicates, Rotate rotates an object by D degrees (increments) over a range of D degrees.

Cone Rotate

Cone Rotate rotates an object on its X and Y axes by D degrees over a 360? range of motion.

Push Policies

Push policies control object movement along the X, Y, and Z axes.

Planar Push

Planar Push pushes object by a specified distance over its X and Y axes.

Vertical Push

Vertical Push pushes the object by a specified distance along its Z axis.

Push Y

Push Y is similar to Planar Push: it pushes an object by a specified distance, but only along its Y axis. Push Y is helpful for displacing objects along a perpindicular.

The example below will make the difference between Planar Push and PushY more clear.

Scale Policies

Scale policies are used to change object scale.

Uniform Scale

Uniform Scale is used to change the X, Y, and Z proportions of an object by a variable but uniform factor.

In the example below, we have specified a variation between 1.2 and .8. This means that the X, Y, and Z proportions will vary between 1.2 and .8 of their original size. However, the original proportion between them will always be maintained.

Not Uniform

Not Uniform Scale is similar to Uniform Scale. As its name indicates, the scale change is not uniform. You will notice in the parameter interface that you may specify the degree of X, Y, and Z variation for each value individually. (Contrast this to Uniform Scale, where the X, Y, and Z values cannot be changed independently.) You can therefore choose to vary the X value while keeping Y constant, for example.

Support Policies

Support policies are used in mesh stacking. Meshes are supported by the terrain (heightfield), and it follows that meshes, such as houses and roofs, need support policies to regulate their placement. Support policies are also used to solve the “mesh sink” problem that arises from altitude variations.

The “Mesh Sink” Problem

Meshes will “sink” into the heightfield when the altitude is greater than 0. In the following example, a cube with a height of 50 has been set in a heightfield with an altitude of 50 (highest point):

As you can see, the mesh seems to have sunk into the heightfield. This is because the heightfield’s altitude has not been taken into consideration during mesh placement.

A wireframe view shows that the mesh is still there, but hidden by the terrain.

Two policies control mesh heightfield adaptation and stacking properties.

Follow Support

The Follow Support policy is used for meshes that are placed on a heightfield, or on their supports. The policy is necessary when objects are placed on an irregular heightfield to control the appearance of the object. Meshes placed in irregular heightfields will “sink” if not given a Follow Support policy.

One example of how to use Follow Support correctly follows in the illustration below.

Constructing a house with a base mesh and a roof:

The base mesh is placed on a heightfield. Since we want the mesh to adapt to its heightfield, or support, we add the Follow Support policy.

The roof is stacked on the base mesh. We do not add the Follow Support policy because the roof would try to position itself directly on the heightfield and “sink” into the base, becoming invisible.