/// <summary>
/// Space the given objects using the given AbstractLayoutSpacingProvider and the initial position.
/// </summary>
/// <param name="spacer"></param>
/// <param name="initialPosition"></param>
/// <param name="coordinateSpace"></param>
/// <param name="positionals"></param>
public static void Space( AbstractLayoutSpacingProvider spacer
, Vector2 initialPosition
, CoordinateSpace coordinateSpace = CoordinateSpace.TargetSpace
, params IPositional[] positionals )
{
var index = 0;
var total = positionals.Length;
foreach (var positional in positionals)
{
var position = spacer.GetPositionOf(index, total, initialPosition);
positional.SetPosition(position, coordinateSpace);
index++;
}
}