Modify Objects

Most Tools and Commands act on the current selection. Therefore, it is important to know how to select object, groups and points in smile2.

Transforming and placing objects and points

Moving, scaling, and rotating groups, objects and points can be done with the manipulation tools. Consult the Manipulation Tools chapter for more information.

The Transform settings sheet in the Attribute Editor can be used to set the transform properties for the selection.

Beside this, a series of convenience commands can be found in the Modify menu in the main menu.


Some convenience commands to align, mirror, or place objects can be found in the Modify menu.

Edit shapes

Most actions to edit objects, can be found in the Modify and Tools menus located in the main menu.

The following sections try to give an overview on how to modify the shapes of objects. For a reference, consult the Modify section of the main menu reference, the Command Reference, or the Tools Reference chapters.

smile2 comes with a number of modification tools and commands. To name a few:

Booleans are handy when it comes to construct complex polygon shapes. Like most tools and commands, booleans in smile2 are implemented in a non destructive way using nodes. Consult the BooleanNode reference for more information.
Offset Polygon
Enlarges or shrinks polygon-based objects. See the OffsetNode reference for more information.
Cut Polygon Tool
Lets you cut polygons into pieces.
Inset Points Tool
Lets you insert points into existing shapes.

Using Nodes

Objects in smile2 are not “elementary” but composed from :doc:`different nodes </doc_structure> forming a directed graph. Most creation and modification commands and tools act create and modify nodes and/or the node graph.

For example, this object:


has been created in the following way:

The resulting node graph (top) and construction history in the attribute editor (bottom) look like this:


The advantage of this construction method is, that “nothing is lost” and everything can be changed at any time.


The Delete History (deleteHistory) command can be used to remove all “history nodes” (oand other input connection) and to keep only the front nodes.

Tweaking Points

In many cases, it is necessary to modify individual points (eg. corner vertices or control vertices). This can be done by selecting the desired points in point selection mode and using one of the manipulation tools, or by editing the points numerically in the attribute editor:


Note, that these points are always in local coordinates.

For point data that does not have any external source input, the changes (tweaks) are directly applied to the data. However, this is not possible for points coming from an external source (for plugs that have an input connection), since all tweaks would be overwritten and lost during the next graph evaluation. In order to be able to modify/tweak also plugs that have an input connection, these plugs store internally an additional “delta” value, the so called tweak value.


Not all point plugs are “tweak-able”. In general only point component plugs (like outlines, holes, and position data of ObjectArray nodes) can be tweaked.

For shape nodes, the Tweak Reset button, located in the attribute editor (in the Other Plugs section), can be used to reset all tweak values to zero.


It is preferred to edit points of source objects (nodes located a the staring point of the node graph), rather then tweaking points on the final objects, since changes in the construction history can lead unexpected effects.