(Macro) Constrains a number to be within a range.
constrain(x, a, b)
// limits range of sensor values to between 10 and 150:
sensVal = constrain(sensVal, 10, 150);
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()
Maple’s implementation of constrain() is compatible with Arduino.
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.