コンピュータサイエンスにおいて、クランプ(またはクリッピング)とは、値を最小値と最大値の間の範囲に制限するプロセスです。ラッピングとは異なり、クランプは値が許容範囲外にある場合、最も近い境界に移動します。
| Y = クランプ(X, 1, 3) | |
|---|---|
| X | はい |
| 0 | 1 |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 4 | 3 |
Pythonでは、クランプは次のように定義できます。
def clamp ( x , minimum , maximum ): x < minimum の場合: minimumを返すx > maximumの場合: maximumを返すxを返すこれは、関数minおよびmax をサポートする言語の場合と同等です。 max(minimum,min(x,maximum))
用途
いくつかのプログラミング言語やライブラリは、高速かつベクトル化されたクランプのための関数を提供しています。Pythonでは、pandasライブラリがSeries.clip[ 1 ]とDataFrame.clip[ 2 ]のメソッドを提供しています。NumPyライブラリは[ 3 ]の関数を提供しています。Wolframclip言語では、これは[ 4 ]として実装されています。Clip[x,{minimum,maximum}]
OpenGLでは、このglClearColor関数は4つのGLfloat値を取り、その値は範囲に「クランプ」されます。[ 5 ]
コンピュータグラフィックスにおけるクランプの多様な用途の一つは、ポリゴン内にディテールを配置することです。例えば、壁の銃弾の穴などです。また、ラッピングと組み合わせて様々なエフェクトを作成することもできます。
CSSでは、clamp()[ 6 ]はレスポンシブタイポグラフィやレスポンシブデザインを実装するのに役立ちます。[ 7 ]
Excel、Open Office Calc、Google Sheetsなどのスプレッドシートはクランプ関数を直接提供していませんが、MAX&などの関数をMIN一緒に使用したり、、MEDIAN[ 8 ] [ 9 ]またはセル関数マクロを使用することで同じ効果を得ることができます。[ 10 ]入力が配列である場合にクランプを実行しようとすると、他の方法を使用する必要があります。[ 11 ]
参考文献
- ^ 「Pandas Series.clipメソッドのドキュメント」 。 2023年10月15日閲覧。
- ^ 「Pandas DataFrame.clipメソッドのドキュメント」 。 2023年10月15日閲覧。
- ^ 「NumPyクリップ関数のドキュメント」 。 2023年10月15日閲覧。
- ^ 「Wolfram Language Clip関数のドキュメント」 。 2023年10月15日閲覧。
- ^ 「OpenGL 4リファレンスページ」 . www.khronos.org . 2018年10月31日閲覧。
- ^ "clamp()" . MDN Web Docs . Mozilla.
- ^ Bece, Adrian. 「CSS Clampを使用したモダンなフルイドタイポグラフィ」 . Smashing Magazine . Smashing Media AG . 2025年1月29日閲覧。
- ^ Citi, Jasper. 「Excelで値を特定の範囲に制限するにはどうすればよいですか?」 . Stack Overflow . 2025年1月29日閲覧。
- ^ 「ExcelのClamp関数」 Excelフォーラム. 2025年1月29日閲覧。
- ^ 「[解決済み] Math Clamp Function?」 Apache OpenOfficeコミュニティフォーラム。 2025年1月29日閲覧。
- ^ 「Googleスプレッドシートの配列セーフなクランプ値」 . Stack Exchange > Webアプリケーション. Stack Overflow . 2025年1月29日閲覧。
さらに読む
- アポダカ、アンソニー・A.、グリッツ、ラリー(1999年12月)『Advanced RenderMan:映画のためのCGI作成』モーガン・カウフマン著。