Class EnumerableUtil
- Namespace
- Hi.Common.Collections
- Assembly
- HiGeom.dll
Utility class providing extension methods for enumerable collections.
public static class EnumerableUtil
- Inheritance
-
EnumerableUtil
- Inherited Members
Methods
GetIntensiveItems<TItem>(IEnumerable<TItem>, double, Func<TItem, double>)
Gets a collection of items with additional interpolated items inserted where the distance between consecutive items exceeds a specified resolution.
public static IEnumerable<TItem> GetIntensiveItems<TItem>(this IEnumerable<TItem> src, double resolution, Func<TItem, double> keyFunc) where TItem : IAdditionOperators<TItem, TItem, TItem>, ISubtractionOperators<TItem, TItem, TItem>, IMultiplyOperators<TItem, double, TItem>, IDivisionOperators<TItem, double, TItem>
Parameters
src
IEnumerable<TItem>The source collection.
resolution
doubleThe maximum allowed distance between consecutive items.
keyFunc
Func<TItem, double>A function that extracts a double value from an item, used to measure the distance between items.
Returns
- IEnumerable<TItem>
A collection containing the original items and additional interpolated items where needed.
Type Parameters
TItem
The type of items in the collection, which must support arithmetic operations.
Remarks
This method ensures that the distance between consecutive items in the resulting collection does not exceed the specified resolution. When the distance between two consecutive items in the source collection exceeds the resolution, additional items are interpolated between them.