> For the complete documentation index, see [llms.txt](https://scenegroup.gitbook.io/cavalry/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://scenegroup.gitbook.io/cavalry/nodes/behaviours/number-range.md).

# Number Range

Remap values.

**Source Minimum** - the smallest value within your range.

**Source Maximum** - the largest value within your range.

**Value** - connect a range of values (e.g. from a Spreadsheet)

**Minimum** - the value to remap **Source Minimum** to.

**Maximum** - the value to remap **Source Maximum** to.

**Graph** - see [Common Attributes (Behaviours)](/cavalry/nodes/behaviours/common-attributes-behaviours.md)

**Clamp** - when checked, the output will never go above or below the **Maximum** or **Minimum** values.

**Offset** - add/subtract a value to/from the output.

{% hint style="info" %}
This node is also used as a base for options on the [Spreadsheet](/cavalry/nodes/utilities/spreadsheet.md) Atom. The **Value** attribute will not appear within the **Spreadsheet** [Attribute Editor](/cavalry/user-interface/menus/window-menu/attribute-editor.md) UI as that is being driven by the data on the node itself.
{% endhint %}

{% hint style="success" %}
Example usage:

1. Create 2 [Shapes](/cavalry/nodes/shapes/basic-shape.md) (shape1 and shape2).
2. Create a **Number Range**.
3. Set:
   1. **Source Minimum** = `-100`
   2. **Source Maximum** = `100`
   3. **Minimum** = `-400`
   4. **Maximum** = `400`
4. Connect ***shape1.position.y > numberRange.value***
5. Connect **numberRange.id > shape2.position.y**
6. Move **Shape1** up and down in the [Viewport](/cavalry/user-interface/menus/window-menu/viewport.md).

As **Shape1** reaches a position of **100** in the **Y** axis, **Shape2** will move to a position of **400**. If **Clamp** is checked then as **Shape1** moves above **100** **Shape2** will remain at **400**.
{% endhint %}
