/// <summary> /// Clamps the given index value according to Max(Min(clamp, max), min). /// </summary> /// <param name="value">The value to clamp.</param> /// <param name="min">The first argument.</param> /// <param name="max">The second argument.</param> /// <returns>The clamped value in the interval [min, max].</returns> public static Index3 Clamp(Index3 value, Index3 min, Index3 max) => new Index3( IntrinsicMath.Clamp(value.X, min.X, max.X), IntrinsicMath.Clamp(value.Y, min.Y, max.Y), IntrinsicMath.Clamp(value.Z, min.Z, max.Z));
/// <summary> /// Clamps the given index value according to Max(Min(clamp, max), min). /// </summary> /// <param name="value">The value to clamp.</param> /// <param name="min">The first argument.</param> /// <param name="max">The second argument.</param> /// <returns>The clamped value in the interval [min, max].</returns> public static Index2 Clamp(Index2 value, Index2 min, Index2 max) => new Index2( IntrinsicMath.Clamp(value.X, min.X, max.X), IntrinsicMath.Clamp(value.Y, min.Y, max.Y));
/// <summary> /// Clamps the given index value according to Max(Min(clamp, max), min). /// </summary> /// <param name="value">The value to clamp.</param> /// <param name="min">The first argument.</param> /// <param name="max">The second argument.</param> /// <returns>The clamped value in the interval [min, max].</returns> public static Index Clamp(Index value, Index min, Index max) => new Index(IntrinsicMath.Clamp(value.X, min.X, max.X));
/// <summary> /// Clamps the given index value according to Max(Min(clamp, max), min). /// </summary> /// <param name="value">The value to clamp.</param> /// <param name="min">The first argument.</param> /// <param name="max">The second argument.</param> /// <returns>The clamped value in the interval [min, max].</returns> public static Index1 Clamp(Index1 value, Index1 min, Index1 max) => new Index1(IntrinsicMath.Clamp(value.X, min.X, max.X));