> 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

The Smart Axes Tool helps you orient the local axes of components.

{% 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="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2FKMoBaieZKZlP36yF1328%2FSmart%20Axes%20Tool%20-%20Access.png?alt=media&amp;token=303347c2-aaec-42c8-956e-c81d819d3f91" alt="" width="563"><figcaption></figcaption></figure>

<figure><img src="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2FaE72fBo0FzGEKtCiql0O%2FCapture%20d%E2%80%99e%CC%81cran%202023-05-05%20a%CC%80%2017.21.12.png?alt=media&amp;token=c17fd353-4d91-436b-98bd-14ad83ffec3c" 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="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2FSVzTL0qYmlroVH51qYAB%2FSmart%20Axes%20Tool%20-%20Flip.gif?alt=media&amp;token=3b76cf72-d1e2-4849-af39-5eac9ab3e34a" 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="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2Fp1qK1vd5lqYFNyNdZXDm%2FSmart%20Axes%20Tool%20-%20Swap%20Length%20Width.gif?alt=media&amp;token=9d3ac8d2-d413-4024-b59d-392e4be0e5ed" 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="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2FkudMwtPoEQFzi9wf3CMF%2FSmart%20Axes%20Tool%20-%20Swap%20Front%20Backside.gif?alt=media&amp;token=37e730cf-74b7-4a3c-9811-e8eae0a514ac" 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="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2Fmvv34Uhqk31Z0I8OnLAd%2FSmart%20Paint%20Tool%20-%20Adapt%20Axes%20Animation.gif?alt=media&amp;token=455bea62-83bb-46bf-98fd-f5b3e351a39b" 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="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2F7QekCsAXfMDWnoVfFUWi%2FEnregistrement%20de%20l%E2%80%99e%CC%81cran%202025-05-29%20a%CC%80%2017.50.58-GIF%20720x720%2015%20ips.gif?alt=media&amp;token=737365d6-f1ad-4587-bdba-6b6572405a94" 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.
