16 lines
417 B
Python
16 lines
417 B
Python
'''
|
|
Implements numeric range clamping (idk why its not in the stdlib...)
|
|
NOTE: the upper and lower bounds for clamping are inclusive
|
|
'''
|
|
def clamp(x: int, min: int, max: int) -> int:
|
|
if x < min:
|
|
return min
|
|
elif x > max:
|
|
return max
|
|
return x
|
|
|
|
def clamp_min(x: int, min: int) -> int:
|
|
return x if x > min else min
|
|
|
|
def clamp_max(x: int, max: int) -> int:
|
|
return x if x < max else max
|