> For the complete documentation index, see [llms.txt](https://docs.opencutlist.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.opencutlist.org/features/smart-axes-tool.md).

# Smart Axes Tool

{% hint style="info" %}
The Smart Axes Tool was introduced in version 5.0.0.
{% endhint %}

It is accessible from the axes icon in the toolbox or from the *OpenCutList → Orient* *Parts* menu.

<figure><img src="/files/84TZVCklPi7yBVe9MpwR" alt="" width="563"><figcaption></figcaption></figure>

<figure><img src="/files/7Gf7vYqJq2XC8kwl7h1G" alt=""><figcaption></figcaption></figure>

**OpenCutList** computes the **dimensions** of a part along the **local axes** of the underlying component. They are defined as the lengths of the (blue) bounding box of the part. For a good computation of the dimensions, the bounding box of a part should therefore preferably closely surround it.

The dimensions of a part do not depend on the position of the local axes (the axes can be translated), but do depend on their spatial orientation.

The default set of local axes is [right-handed](https://en.wikipedia.org/wiki/Right-hand_rule). When the set of axes is placed on a vertex of the bounding box, the blue axis shows the direction of the thickness of a part. It does not matter whether the blue axis points in or out of the part, but the face which is the **most positive** along the blue axis will be considered the **front face** of the part, and the opposite face the **back face**.

{% hint style="warning" %}
Some of these assumptions are deliberate choices. We could have made other choices, but these seemed to be the most convenient to understand.
{% endhint %}

If you flip the local axes in such a way that the most positive face is the opposite face, then you have told **OpenCutList** that the other side is now the front face. Remember, changing the local axes does not affect the definition of the part, but only its reading by **OpenCutList**.

## Actions

The Smart Axes Tool supports several actions (Flip, Swap Length ↔ Width, Swap Front ↔ Backside, Adapt Axes, Move Origin). Each action can have several modifiers. All possible actions are visible at the top of the screen.

### Flip

The **Flip action** is more convenient than the SketchUp tool, because it automatically detects parts under the mouse pointer and lets you decide along which direction (as seen by OpenCutList) a part must be flipped. This can be `L` for length, `W` for width or `T` for thickness. Also, you do not have to select the part to flip it.

{% hint style="warning" %}
Flipping only affects the selected instance.
{% endhint %}

<figure><img src="/files/KuxNTn4BDvjIJY3V7nqP" alt=""><figcaption><p>Flip</p></figcaption></figure>

### Swap Length ↔ Width

This tool orients the local axes in such a way that length and width (the red and green axes, respectively), as seen by OpenCutList, are swapped.

{% hint style="warning" %}
Swapping length and width affects all instances. It operates on the component definition.
{% endhint %}

<figure><img src="/files/U77RpVk2rTPqmIitheQR" alt=""><figcaption><p>Swap Length - Width</p></figcaption></figure>

### Swap Front ↔ Backside

This tool orients the local axes in such a way that the thickness (on the blue axis) is swapped. This reverses the blue axis, and (because the set of axes must remain right-handed) also the green axis. By convention, the front face is the face with the most positive coordinate on the blue axis.

{% hint style="warning" %}
Swapping Front - Backside affects all instances.
{% endhint %}

<figure><img src="/files/B4WtsZC7BorhfUjVsDJF" alt=""><figcaption><p>Swap Front - Backside</p></figcaption></figure>

### Adapt Axes

For an even finer control, this tool lets you pick the front of a part. It will then adapt the axes to match length and width. The thickness is automatically the last direction. When moving the mouse over a part, a white arrow shows the current front and the direction of the length.

The arrow shows the direction of the old and new red (length) axis.\
Hover a face and an edge displays the future setting, click to confirm.&#x20;

{% hint style="warning" %}
Adapt Axes affects all instances.
{% endhint %}

<figure><img src="/files/jLpf2xz8b7GeC0M3YNju" alt=""><figcaption><p>Adapt Axes Tool</p></figcaption></figure>

The modified part is automatically the one under the mouse pointer.\
To align the axes to an element outside the part, simply hover over it, press the `SHIFT` key, and point to any segment, axis, or guide in the model that would be parallel to the targeted face when you started pressing `SHIFT`.

### Move Origin

This action allows you to move the part component axes origin.

{% hint style="warning" %}
Move Origin affects all instances.
{% endhint %}

<figure><img src="/files/vVUfmG8oKgpAljh1eaHf" alt="" width="360"><figcaption><p>Move Origin</p></figcaption></figure>

The modified part is automatically the one under the mouse pointer.\
To place the origin outside the part, simply hover over it, press the `SHIFT` key, and click on any point in the model.

### Shortcuts

* Use `TAB` or `SHIFT` + `TAB` to navigate forward or backward through actions, respectively.
* Use `CTRL` + `TAB` (on Windows) or `OPTION` + `TAB` (on Mac) to navigate through the action's modifier.
