> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/function-blocks/blocks-reference/input-output/data-inputs/number-range.md).

# Number Range

This function block provides an easy-to-use horizontal range slider to define a pair of numeric bounds (minimum and maximum). It is useful for creating reusable numeric ranges that can control thresholds, sizes or parameters across your scenario.

## 📥 Inputs <a href="#inputs" id="inputs"></a>

`Minimum` Provide a number to override the lower bound. (Optional)

`Maximum` Provide a number to override the upper bound. (Optional)

## 📤 Outputs <a href="#outputs" id="outputs"></a>

`Range` The current min-max pair is output as a numeric range (two values). This output is marked as multiple and can be consumed by blocks that expect numeric inputs.

## 🕹️ Controls <a href="#controls" id="controls"></a>

`Min - Max` A text label that shows the current numeric pair.

`Range Slider` A horizontal slider widget you drag to set the lower and upper limits interactively.

(hint) If an input is connected to `Minimum` or `Maximum`, that value overrides the corresponding end of the slider.

## 🎯 Features <a href="#features" id="features"></a>

* Real-time interactive control: adjust both ends of the range with a single slider.
* Input overrides: connecting numbers to the inputs will update (and clamp) the slider range automatically.
* Multiple output format: the range is provided as a pair so it can be used directly by other blocks.
* Simple visual feedback: the label displays the current values so you always know the active limits.

## ⚙️ How it runs <a href="#how-it-works" id="how-it-works"></a>

* If no external inputs are connected, the block uses the values set on the `Range Slider` and shows them on `Min - Max`.
* When a number is connected to `Minimum` or `Maximum`, that value takes effect and the slider range updates to reflect the new bounds.
* The block continuously outputs the current bounds via `Range` so downstream blocks receive the latest pair.

## 📝 Usage Instructions <a href="#usage" id="usage"></a>

1. Drag the block into your scenario.
2. Set a desired numeric interval by dragging the `Range Slider` handles.
3. Optionally connect numbers to `Minimum` and/or `Maximum` to override the slider ends from other blocks or calculations.
4. Connect the `Range` output to any block that accepts numeric inputs to use the bounds in processing.

## 💡 Tips and Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Use with comparison blocks `Greater` and `Smaller` to build range checks: feed the `Greater` and `Smaller` results into `All True` to verify a value lies inside the range.
* Drive image processing limits (for example width/height) by connecting `Range` to `Image Resize` or `Image Padding` inputs to make interactive resizing workflows.
* Use with `Histogram On Line` or `Image Threshold` (via numeric inputs) to switch thresholds dynamically during inspection.
* Combine with `Number Input` when you want a fixed numeric override that is easy for operators to type in.
* Send the numeric pair to `Scope` to visualize how the range changes over time during a run.

(hint) Keep your ranges consistent: if an external input sets a minimum larger than the maximum, the block will adjust/clamp values so the slider remains valid.

## 🛠️ Troubleshooting <a href="#troubleshooting" id="troubleshooting"></a>

* If connected values appear not to take effect, verify the inputs are actually connected and producing numeric outputs.
* If the slider jumps or the displayed pair is unexpected, check for conflicting external inputs on `Minimum` and `Maximum`. Disconnect one to let the slider control that end again.
* If downstream blocks behave oddly, confirm they accept a two-value range and expect the same order (min, max).
