Files
Minint/Minint.Core/Services/IPatternGenerator.cs
2026-03-29 15:34:33 +03:00

29 lines
980 B
C#

using Minint.Core.Models;
namespace Minint.Core.Services;
public enum PatternType
{
Checkerboard,
HorizontalGradient,
VerticalGradient,
HorizontalStripes,
VerticalStripes,
ConcentricCircles,
Tile
}
public interface IPatternGenerator
{
/// <summary>
/// Generates a new document with a single layer filled with the specified pattern.
/// </summary>
/// <param name="type">Pattern type.</param>
/// <param name="width">Image width in pixels.</param>
/// <param name="height">Image height in pixels.</param>
/// <param name="colors">Colors to use (interpretation depends on pattern type).</param>
/// <param name="param1">Primary parameter: cell/stripe size, ring width, etc.</param>
/// <param name="param2">Secondary parameter (optional, pattern-dependent).</param>
MinintDocument Generate(PatternType type, int width, int height, RgbaColor[] colors, int param1, int param2 = 0);
}