# Editing tools

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

<figure><img src="/files/29klqb4GizELsWSwrRsb" 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 triggering 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 triggering 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 triggering the **`Offset`** command
* Select the **specific offset distance** you wish to offset the element with

{% embed url="<https://vimeo.com/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 triggering the **`Trim`** command
* Select the **paths to be deleted**

{% embed url="<https://vimeo.com/1031077345?autoplay=1&_loop=1&_muted=1&_controls=0>" %}

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

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

* Start by **selecting** the **element** to be scaled, then triggering 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://vimeo.com/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 triggering the **`Join`** command

{% embed url="<https://vimeo.com/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 triggering the **`Rotate`** command
* Select the **first point** to rotate from
* Then select an **angle** on the canvas

{% embed url="<https://vimeo.com/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 triggering the **`Mirror`** command
* Select the **first point** to mirror from
* Then select a **second point** on the canvas

{% embed url="<https://vimeo.com/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 triggering the **`Fillet`** command
* Select the **two contiguous paths** to fillet from
* Then select the **radius** on the canvas

{% embed url="<https://vimeo.com/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 triggering the **`Chamfer`** command
* Select the **two contiguous paths** to chamfer from
* Then select the **distance** on the canvas

{% embed url="<https://vimeo.com/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 in **individual** **paths** then triggering the **`Explode`** command

{% embed url="<https://vimeo.com/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://vimeo.com/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 **first source point**
* Select the element **first** **destination point**
* Select the element **second source point**
* Select the element **second** **destination point**

{% embed url="<https://vimeo.com/1031077189?autoplay=1&_loop=1&_muted=1&_controls=0>" %}

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

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

* Start by **selecting** the **`Boolean`** comman&#x64;**.**
* Select the appropriate mode : **`Join`**, **`Intersect`**, **`Exclude`** or **`Subtract`**
* Select the element **according to the chosen mode.**

{% embed url="<https://vimeo.com/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 a number of copies you want to make.
* Either pick a **final point**, or **type a distance** to specify the length between two copies in the array.

{% embed url="<https://vimeo.com/1049310025?autoplay=1&_loop=1&_muted=1&_controls=0>" %}

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

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

**Mode** : Fill \
**Argument** : Count, Angle.&#x20;

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

**Mode** : Angle\
**Argument :** Count, Angle.&#x20;

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.&#x20;
* 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://vimeo.com/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&#x20;

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

**Mode** : Entities

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

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

#### 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 **closed path** with **`Distance`** mode, you'll be asked to choose a direction.&#x20;

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.&#x20;

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.&#x20;

{% embed url="<https://vimeo.com/1123827951?_controls=0&_loop=1&_muted=1&autoplay=1>" %}

### Tutorial

For more step-by-step information, watch our tutorial about how to use editing tools in Rayon:

{% embed url="<https://www.youtube.com/watch?v=DJlmNbZjnYM>" %}

***

### 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.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rayon.design/documentation/design/editing-tools.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
