constrain() — Maple v0.0.10beta Documentation

### Navigation

- next
- previous |
- LeafLabs |
- Index »
- Complete Language Index »

# constrain()

(Macro) Constrains a number to be within a range.

## Syntax

    constrain(x, a, b)

## Parameters

x: the number to constrain

a: the lower end of the range

b: the upper end of the range

## Returns

x: if x is between a and b

a: if x is less than a

b: if x is greater than b

## Example

    // limits range of sensor values to between 10 and 150:
    sensVal = constrain(sensVal, 10, 150);

## Warning

Because of the way `constrain()` is implemented, avoid using other functions or causing side effects inside the parentheses, as it may lead to incorrect results:

    constrain(x,a++,b);   // avoid this - yields incorrect results

    constrain(x,a,b);     // use this instead-
    a++;                  // keep other math outside constrain()

## Arduino Compatibility

Maple’s implementation of `constrain()` is compatible with Arduino.

## See Also

- min()
- max()

License and Attribution

Portions of this page were adapted from the Arduino Reference Documentation, which is released under a Creative Commons Attribution-ShareAlike 3.0 License.

### Navigation

- next
- previous |
- LeafLabs |
- Index »
- Complete Language Index »