Math.Clamp Method 
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
| Clamp(Single, Single, Single) | 
						 Returns   | 
        	
| Clamp(UIntPtr, UIntPtr, UIntPtr) | 
						 Returns   | 
        	
| Clamp(UInt64, UInt64, UInt64) | 
						 Returns   | 
        	
| Clamp(UInt32, UInt32, UInt32) | 
						 Returns   | 
        	
| Clamp(UInt16, UInt16, UInt16) | 
						 Returns   | 
        	
| Clamp(SByte, SByte, SByte) | 
						 Returns   | 
        	
| Clamp(Int32, Int32, Int32) | 
						 Returns   | 
        	
| Clamp(Int64, Int64, Int64) | 
						 Returns   | 
        	
| Clamp(Int16, Int16, Int16) | 
						 Returns   | 
        	
| Clamp(Double, Double, Double) | 
						 Returns   | 
        	
| Clamp(Decimal, Decimal, Decimal) | 
						 Returns   | 
        	
| Clamp(Byte, Byte, Byte) | 
						 Returns   | 
        	
| Clamp(IntPtr, IntPtr, IntPtr) | 
						 Returns   | 
        	
Clamp(Single, Single, Single)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static float Clamp(float value, float min, float max);
	public static float Clamp(float value, float min, float max);
	static member Clamp : single * single * single -> single
	Public Shared Function Clamp (value As Single, min As Single, max As Single) As Single
	Parameters
- value
 - Single
 
The value to be clamped.
- min
 - Single
 
The lower bound of the result.
- max
 - Single
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
-or-
Exceptions
max is less than min.
Applies to
Clamp(UIntPtr, UIntPtr, UIntPtr)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Important
This API is not CLS-compliant.
Returns value clamped to the inclusive range of min and max.
public:
 static UIntPtr Clamp(UIntPtr value, UIntPtr min, UIntPtr max);
	[System.CLSCompliant(false)]
public static UIntPtr Clamp(UIntPtr value, UIntPtr min, UIntPtr max);
	[System.CLSCompliant(false)]
public static nuint Clamp(nuint value, nuint min, nuint max);
	[<System.CLSCompliant(false)>]
static member Clamp : unativeint * unativeint * unativeint -> unativeint
	Public Shared Function Clamp (value As UIntPtr, min As UIntPtr, max As UIntPtr) As UIntPtr
	Parameters
- value
 - 
				
				UIntPtr
nuint
unativeint
 
The value to be clamped.
- min
 - 
				
				UIntPtr
nuint
unativeint
 
The lower bound of the result.
- max
 - 
				
				UIntPtr
nuint
unativeint
 
The upper bound of the result.
Returns
unativeint
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
- Attributes
 
Exceptions
max is less than min.
Applies to
Clamp(UInt64, UInt64, UInt64)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Important
This API is not CLS-compliant.
Returns value clamped to the inclusive range of min and max.
public:
 static System::UInt64 Clamp(System::UInt64 value, System::UInt64 min, System::UInt64 max);
	[System.CLSCompliant(false)]
public static ulong Clamp(ulong value, ulong min, ulong max);
	[<System.CLSCompliant(false)>]
static member Clamp : uint64 * uint64 * uint64 -> uint64
	Public Shared Function Clamp (value As ULong, min As ULong, max As ULong) As ULong
	Parameters
- value
 - UInt64
 
The value to be clamped.
- min
 - UInt64
 
The lower bound of the result.
- max
 - UInt64
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
- Attributes
 
Exceptions
max is less than min.
Applies to
Clamp(UInt32, UInt32, UInt32)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Important
This API is not CLS-compliant.
Returns value clamped to the inclusive range of min and max.
public:
 static System::UInt32 Clamp(System::UInt32 value, System::UInt32 min, System::UInt32 max);
	[System.CLSCompliant(false)]
public static uint Clamp(uint value, uint min, uint max);
	[<System.CLSCompliant(false)>]
static member Clamp : uint32 * uint32 * uint32 -> uint32
	Public Shared Function Clamp (value As UInteger, min As UInteger, max As UInteger) As UInteger
	Parameters
- value
 - UInt32
 
The value to be clamped.
- min
 - UInt32
 
The lower bound of the result.
- max
 - UInt32
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
- Attributes
 
Exceptions
max is less than min.
Applies to
Clamp(UInt16, UInt16, UInt16)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Important
This API is not CLS-compliant.
Returns value clamped to the inclusive range of min and max.
public:
 static System::UInt16 Clamp(System::UInt16 value, System::UInt16 min, System::UInt16 max);
	[System.CLSCompliant(false)]
public static ushort Clamp(ushort value, ushort min, ushort max);
	[<System.CLSCompliant(false)>]
static member Clamp : uint16 * uint16 * uint16 -> uint16
	Public Shared Function Clamp (value As UShort, min As UShort, max As UShort) As UShort
	Parameters
- value
 - UInt16
 
The value to be clamped.
- min
 - UInt16
 
The lower bound of the result.
- max
 - UInt16
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
- Attributes
 
Exceptions
max is less than min.
Applies to
Clamp(SByte, SByte, SByte)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Important
This API is not CLS-compliant.
Returns value clamped to the inclusive range of min and max.
public:
 static System::SByte Clamp(System::SByte value, System::SByte min, System::SByte max);
	[System.CLSCompliant(false)]
public static sbyte Clamp(sbyte value, sbyte min, sbyte max);
	[<System.CLSCompliant(false)>]
static member Clamp : sbyte * sbyte * sbyte -> sbyte
	Public Shared Function Clamp (value As SByte, min As SByte, max As SByte) As SByte
	Parameters
- value
 - SByte
 
The value to be clamped.
- min
 - SByte
 
The lower bound of the result.
- max
 - SByte
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
- Attributes
 
Exceptions
max is less than min.
Applies to
Clamp(Int32, Int32, Int32)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static int Clamp(int value, int min, int max);
	public static int Clamp(int value, int min, int max);
	static member Clamp : int * int * int -> int
	Public Shared Function Clamp (value As Integer, min As Integer, max As Integer) As Integer
	Parameters
- value
 - Int32
 
The value to be clamped.
- min
 - Int32
 
The lower bound of the result.
- max
 - Int32
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
Exceptions
max is less than min.
Applies to
Clamp(Int64, Int64, Int64)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static long Clamp(long value, long min, long max);
	public static long Clamp(long value, long min, long max);
	static member Clamp : int64 * int64 * int64 -> int64
	Public Shared Function Clamp (value As Long, min As Long, max As Long) As Long
	Parameters
- value
 - Int64
 
The value to be clamped.
- min
 - Int64
 
The lower bound of the result.
- max
 - Int64
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
Exceptions
max is less than min.
Applies to
Clamp(Int16, Int16, Int16)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static short Clamp(short value, short min, short max);
	public static short Clamp(short value, short min, short max);
	static member Clamp : int16 * int16 * int16 -> int16
	Public Shared Function Clamp (value As Short, min As Short, max As Short) As Short
	Parameters
- value
 - Int16
 
The value to be clamped.
- min
 - Int16
 
The lower bound of the result.
- max
 - Int16
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
Exceptions
max is less than min.
Applies to
Clamp(Double, Double, Double)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static double Clamp(double value, double min, double max);
	public static double Clamp(double value, double min, double max);
	static member Clamp : double * double * double -> double
	Public Shared Function Clamp (value As Double, min As Double, max As Double) As Double
	Parameters
- value
 - Double
 
The value to be clamped.
- min
 - Double
 
The lower bound of the result.
- max
 - Double
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
-or-
Exceptions
max is less than min.
Applies to
Clamp(Decimal, Decimal, Decimal)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static System::Decimal Clamp(System::Decimal value, System::Decimal min, System::Decimal max);
	public static decimal Clamp(decimal value, decimal min, decimal max);
	static member Clamp : decimal * decimal * decimal -> decimal
	Public Shared Function Clamp (value As Decimal, min As Decimal, max As Decimal) As Decimal
	Parameters
- value
 - Decimal
 
The value to be clamped.
- min
 - Decimal
 
The lower bound of the result.
- max
 - Decimal
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value <min.
-or-
max if max < value.
Exceptions
max is less than min.
Applies to
Clamp(Byte, Byte, Byte)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static System::Byte Clamp(System::Byte value, System::Byte min, System::Byte max);
	public static byte Clamp(byte value, byte min, byte max);
	static member Clamp : byte * byte * byte -> byte
	Public Shared Function Clamp (value As Byte, min As Byte, max As Byte) As Byte
	Parameters
- value
 - Byte
 
The value to be clamped.
- min
 - Byte
 
The lower bound of the result.
- max
 - Byte
 
The upper bound of the result.
Returns
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
Exceptions
max is less than min.
Applies to
Clamp(IntPtr, IntPtr, IntPtr)
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
- Source:
 - Math.cs
 
Returns value clamped to the inclusive range of min and max.
public:
 static IntPtr Clamp(IntPtr value, IntPtr min, IntPtr max);
	public static IntPtr Clamp(IntPtr value, IntPtr min, IntPtr max);
	public static nint Clamp(nint value, nint min, nint max);
	static member Clamp : nativeint * nativeint * nativeint -> nativeint
	Public Shared Function Clamp (value As IntPtr, min As IntPtr, max As IntPtr) As IntPtr
	Parameters
- value
 - 
				
				IntPtr
nint
nativeint
 
The value to be clamped.
- min
 - 
				
				IntPtr
nint
nativeint
 
The lower bound of the result.
- max
 - 
				
				IntPtr
nint
nativeint
 
The upper bound of the result.
Returns
nativeint
value if min ≤ value ≤ max.
-or-
min if value < min.
-or-
max if max < value.
Exceptions
max is less than min.