public static IWavyBorder<IEnumerable<Point>> GetWavySurface( IWavyBorder<Point> start, IWavyBorder<Point> finish, IConnectStrategy connectStrategy) { return start.Zip(finish, connectStrategy.Connect); }
public static IWavyBorder<IEnumerable<Point>> Connect( this IWavyBorder<Point> start, IWavyBorder<Point> finish, IConnectStrategy connectStrategy) { return WavySurfaceBuilder.GetWavySurface(start, finish, connectStrategy); }
public WavySurfaceBuilder(IWavyBorder<Point> start, IWavyBorder<Point> finish, IConnectStrategy connectStrategy) { WavySurface = GetWavySurface(start, finish, connectStrategy); }