Nudge is an application that allows you to make iterative transformations on selected groups and components.

It will allow you to move, scale and rotate groups or components along the x, y, and z axes. You can choose individual axes or any combination, and objects are all modified by the same values.

In addition to applying consistent regular transformations, it also allows you to randomise them (adding subtle random rotation to furniture or plants, for example).

Please note that the plugin will not work with individual lines, planes or any loose geometry. Create a group or component to use Nudge.

Download: Nudge is included in the Podium Extras .rbz file, which bundles several other free utility tools into a single installation. Download Podium Extras here.


How to use Nudge:

Right click any number of components and/or groups, and from the context menu choose Settings to open the dialog to define the parameters for translation.

Enter the values for modifying the components. "Apply" performs the operations immediately, while "Save" stores the values and dismisses the dialog. You can then use the "Nudge objects" menu option to apply the transformation based on the current settings.

Nudge settings dialog

Cancel aborts the operation, and Apply stores the values and applies them to the objects while keeping the dialog on the screen for another operation. This is useful if you want to use different values in different axes, or repeat the operations until you are happy with the results.

Examples

This 2 minute video shows some quick examples of the operations that can be performed with Nudge.

Operation

There are 3 transformations that can be performed: translation, scale, or rotation.

The first is translation or moving objects. You enter a value in the active model units in the dialog box, and select which axes you want to move an object. Note that when the random box is checked, the distance for movement can be either positive or negative. This means that say you want to move an object along the x axis, if you enter a value of 20 units, normally the object will move 20 units in the positive direction, usually to the right in the normal xyz coordinate system. If you enter a value of -20, it will move in the opposite direction, normally to the left.

If you select the random box, the object will move a maximum of 20 units in both directions. This means that the maximum movement to either side, is 10 units.

Rotations work in a similar way, but the rotation is expressed as a percentage. If you want to rotate an absolute number of degrees, you need to calculate 360/100 x the number of degrees. This is actually straightforward, because every 1% rotation is 3.6 degrees, so each degree is 0.27%. 10 degrees is therefore 2.7%.

Although this is not straightforward for absolute rotations, the units are chosen as percentages because it makes it easier to gauge the amount of randomisation.

As with translation, you can enter negative numbers in the dialog box. When the randomise box is checked, the rotation can be any random value up to half of the percentage value in the dialog box. Although this may sound counter-intuitive, if you want random rotations, you don't want to randomly rotate in one direction only. If you have 10% as a rotation value, your components or groups will rotate by a maximum of 10% (36%) in both directions, from -5% to +5%, or from -18 degrees to +18 degrees.

Rotation is particularly useful for randomising things like furniture in a room or 3d plants. The rotation point is the centre of the individual object - not the origin.

Scaling works the same way as rotation, with the units as percentages. As with rotation, objects are scaled from their midpoint.

Note that with nested groups or components, the plugin will not manipulate these separately. Objects must be directly selected to be transformed.