Английская Википедия:Clamping (graphics)
Шаблон:Short description Шаблон:Refimprove
In computer science, clamping, or clipping is the process of limiting a value to a range between a minimum and a maximum value. Unlike wrapping, clamping merely moves the point to the nearest available value.
Y = clamp(X, 1, 3) | |
---|---|
X | Y |
0 | 1 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 3 |
In Python, clamping can be defined as follows:
def clamp(x, minimum, maximum):
if x < minimum:
return minimum
if x > maximum:
return maximum
return x
This is equivalent to Шаблон:Code for languages that support the functions min and max.
Uses
Several programming languages and libraries provide functions for fast and vectorized clamping. In Python, the pandas library offers the Series.clip
[1] and DataFrame.clip
[2] methods. The NumPy library offers the clip
[3] function. In the Wolfram Language, it is implemented as Шаблон:Code.[4]
In OpenGL, the glClearColor
function takes four GLfloat
values which are then 'clamped' to the range <math>[0,1]</math>.[5]
One of the many uses of clamping in computer graphics is the placing of a detail inside a polygon—for example, a bullet hole on a wall. It can also be used with wrapping to create a variety of effects.
References