> For the complete documentation index, see [llms.txt](https://docs.rayon.design/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rayon.design/documentation/design/editing-tools.md).

# Editing tools

An exhaustive list of Rayon's editing tool set.

All editing tools can be found in the **bottom toolbar** or triggered via [**shortcuts**](/documentation/design/shortcuts.md).

<figure><img src="https://2112124689-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FngVHKyaUSSJPTFck3wkz%2Fuploads%2Fl05VsjeaD78QgoS1XkIg%2FFrame%201790%20(3).png?alt=media&#x26;token=0f2ebbb9-e109-4ffb-b2cf-765604736b5b" alt=""><figcaption></figcaption></figure>

### **Editing tools** <a href="#h_ba5c03eeea" id="h_ba5c03eeea"></a>

{% hint style="info" %}
Note that for **every editing tool**, you may either start by...

* **Selecting the element(s)** to be edited, then **triggering the command.**
* **Triggering the command** first, then **selecting the element(s)** and clicking on the **`DONE`**\
  (**`↵`** or **`SPACE`**) button in the command bar.
  {% endhint %}

#### Copy **`CC`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Arguments**: Distance, Angle

* Start by **selecting** the **element** to be copied, then trigger the **`Copy`** command.
* Select the **specific point** you wish to copy the element from.
* Select the **insertion point** for the **copied element.**

{% embed url="<https://player.vimeo.com/video/1031077395?autoplay=1&controls=0&loop=1&muted=1>" %}

#### Move **`MM`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Arguments**: Distance, Angle

* Start by **selecting** the **element** to be moved, then trigger the **`Move`** command.
* Select the **specific point** you wish to move the element from.
* Select the **insertion point** for the **moved element.**

{% embed url="<https://player.vimeo.com/video/1031077382?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Offset **`OO`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Argument**: Distance

* Start by selecting the element to be offset, then trigger the **`Offset`** command.
* Enter the **offset distance**.

{% embed url="<https://player.vimeo.com/video/1031077368?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Trim **`TR`** <a href="#h_4498756b68" id="h_4498756b68"></a>

* Start by **selecting** the **elements** that intersect, then trigger the **`Trim`** command.
* Select the **paths to be deleted**.

{% embed url="<https://player.vimeo.com/video/1031077345?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Scale **`SC`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Mode**: Scope Selection/Model\
**Arguments**: Scale, Distance

* Start by **selecting** the **element** to be scaled, then trigger the **`Scale`** command.
* Select the **first point** to scale from.
* Then select a **second** point or **enter a scale ratio** in the **active command argument**.

{% embed url="<https://player.vimeo.com/video/1031077328?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Join **`J`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Select** the **paths** to be joined, then trigger the **`Join`** command.

{% embed url="<https://player.vimeo.com/video/1031077301?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Rotate **`RR`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Argument**: Angle

* Start by **selecting** the **element** to be rotated, then trigger the **`Rotate`** command.
* Select the **first point** to rotate from.
* Then select an **angle** on the canvas.

{% embed url="<https://player.vimeo.com/video/1031077282?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Mirror **`MI`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Mode**: Copy/Move

* Start by **selecting** the **element** to be mirrored, then trigger the **`Mirror`** command.
* Select the **first point** to mirror from.
* Then select a **second point** on the canvas.

{% embed url="<https://player.vimeo.com/video/1031077265?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Fillet **`CF`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Mode**: Scope Single/All\
**Argument**: Radius

* Start by **selecting** the **element** to be filleted, then trigger the **`Fillet`** command.
* Select the **two contiguous paths** to fillet from.
* Then select the **radius** on the canvas.

{% embed url="<https://player.vimeo.com/video/1031077251?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Chamfer **`CH`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Mode**: Regular/Irregular\
**Arguments**: Distance left, Distance right

* Start by **selecting** the **element** to be chamfered, then trigger the **`Chamfer`** command.
* Select the **two contiguous paths** to chamfer from.
* Then select the **distance** on the canvas.

{% embed url="<https://player.vimeo.com/video/1031077237?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Explode **`X`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Select** the **shapes** to be exploded into **individual** **paths**, then trigger the **`Explode`** command.

{% embed url="<https://player.vimeo.com/video/1031077225?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Extend **`TX`** <a href="#h_4498756b68" id="h_4498756b68"></a>

* Start by **selecting** the **element(s)** to extend to.
* Then select the **paths** to be **extended.**

{% embed url="<https://player.vimeo.com/video/1031077205?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Align **`AL`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Mode**: Unscaled/Scaled

* Start by **selecting** the **element(s)** to be aligned.
* Select the element's **first source point**.
* Select the element's **first** **destination point**.
* Select the element's **second source point**.
* Select the element's **second** **destination point**.

{% embed url="<https://player.vimeo.com/video/1031077189?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Boolean **`BO`** <a href="#h_4498756b68" id="h_4498756b68"></a>

**Mode**: Join/Intersect/Exclude/Subtract

* Start by **selecting** the **`Boolean`** command.
* Select the appropriate mode: **`Join`**, **`Intersect`**, **`Exclude`** or **`Subtract`**.
* Select the element **according to the chosen mode.**

{% embed url="<https://player.vimeo.com/video/1031077171?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Array `AR` <a href="#h_4498756b68" id="h_4498756b68"></a>

* Start by **selecting** the **element(s)** to be duplicated multiple times.
* Select the duplication **start point**.
* Enter the number of copies you want to make.

**Mode**: Distribute\
**Arguments**: Count, Distance, Angle

Pick a **final point** on the canvas. Rayon automatically adjusts the gap between each item so the copies completely fill the distance between the start point and the final point.

**Mode**: Increment\
**Arguments**: Count, Distance, Angle

**Type a distance** to set a fixed spacing between two copies. The item count then determines the total length of the array.

{% embed url="<https://player.vimeo.com/video/1049310025?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Polar Array `AP` <a href="#h_4498756b68" id="h_4498756b68"></a>

* Start by **selecting** the **entity(ies)** to be duplicated multiple times.
* Select the duplication **center** **start point**.
* Select the duplication **end point**.
* Enter the number of copies you want to make.

**Mode**: Fill\
**Arguments**: Count, Angle

Automatically adjusts the gap between each item so the array completely fills the specified angle.

**Mode**: Angle\
**Arguments**: Count, Angle

Uses a fixed angle between items and a user-defined item count to determine the total span of the array.

**Rotate**: Rotates each item to follow the direction of the array path.\
**Don’t Rotate**: Keeps each item’s original orientation regardless of its position in the array.

{% embed url="<https://player.vimeo.com/video/1160731947?autoplay=1&controls=0&loop=1&muted=1>" %}

#### Bucket `BB`

Bucket can be used in two different ways...

* Either by launching the command, and picking areas across your canvas; in that mode, all entities on the canvas will be considered as bounding entities.
* Or by selecting some bounding entities first, then launching the command; this way, the selected shapes will be the only bounding entities while the command is running.

{% embed url="<https://player.vimeo.com/video/1070366117?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Break `BR` <a href="#h_4498756b68" id="h_4498756b68"></a>

Instead of trimming and redrawing, use **`Break`** to split a line or arc at a specific point, creating two editable paths with different properties.

**Mode**: Point

* Start by **selecting** the **element(s)** to be broken.
* Place **breaking points** along the path where a break is needed.

**Mode**: Entities

* Start by **selecting** the **breaking entity(ies).**
* Select the **paths** on the other **entities** to be broken.

{% embed url="<https://player.vimeo.com/video/1129787909?autoplay=1&loop=1&muted=1&controls=0>" %}

#### Divide `DD` <a href="#h_4498756b68" id="h_4498756b68"></a>

The **Divide Command** lets you split an entity into equal segments.\
You can divide by **count** (number of parts) or by **distance** (fixed spacing).\
When dividing a **closed path** with **`Distance`** mode, you'll be asked to choose a direction.

**Mode**: Count

* Start by **selecting** the **path** to be divided.
* Choose how many **segments** you want.
* Rayon places **division points equally** along the entity and splits the path accordingly.

**Mode**: Distance

* Start by **selecting** the **path** to be divided.
* Enter a fixed distance.
* Rayon places **division points at this interval** along the entity and splits the path accordingly.

{% embed url="<https://player.vimeo.com/video/1123827951?autoplay=1&loop=1&muted=1&controls=0>" %}

***

### We are always available

Book a demo with our team, [right here](https://b1kzip68v9f.typeform.com/to/Hgr0eQ4k#source=docs).\
To get some support, reach out to us through our **in-app support chat**.\
More about [our support policy right here](/other-resources/others/support-policy.md).
