clamp
clampは、入力値を指定した下限値・上限値の間に制限する関数 clipと呼ばれることもある
$ {\rm clamp}(x) = {\rm min}({\rm max}(x, 0), 1)
clampが提供されていない環境においては、上記の数式のように、min関数とmax関数を組み合わせて作る
通常、数値に対して適用される関数だが、後述するRubyの例のように、全順序を満たす型であれば数値以外にも適用可能だったりする 登場作品
as "clamp"
GLSL: clamp(x, minVal, maxVal) 🔗 ECMAScript: 2026年現在、 Math.clamp(value, min, max) が提案されており、Stage 2 🔗 CSS: clamp(min, val, max) 🔗 💀 min, val, max 💀
Rust: f32.clamp(min, max) 🔗 Ruby: num.clamp(min, max) 🔗 min, max には、それぞれ nil を渡すことができる
Rangeオブジェクトを用いて、 num.clamp(range) とも書ける
Dart: num.clamp(lowerLimit, upperLimit) 🔗 as "clip"
numpy: clip(a, a_min, a_max) 🔗 Wolfram: Clip(x, {min, max}, {v_min, v_max}) 🔗 min, max を超えた場合の返り値を指定できる
その他の名称