33 lines
709 B
C#
33 lines
709 B
C#
using System;
|
|
|
|
namespace Gma.QrCodeNet.Encoding.Positioning.Stencils;
|
|
|
|
internal abstract class PatternStencilBase : BitMatrix
|
|
{
|
|
protected const bool O = false;
|
|
protected const bool X = true;
|
|
|
|
internal PatternStencilBase(int version)
|
|
{
|
|
Version = version;
|
|
}
|
|
|
|
public int Version { get; private set; }
|
|
|
|
public abstract bool[,] Stencil { get; }
|
|
|
|
public override int Width => Stencil.GetLength(0);
|
|
|
|
public override int Height => Stencil.GetLength(1);
|
|
|
|
public override bool[,] InternalArray => throw new NotImplementedException();
|
|
|
|
public override bool this[int i, int j]
|
|
{
|
|
get => Stencil[i, j];
|
|
set => throw new NotSupportedException();
|
|
}
|
|
|
|
public abstract void ApplyTo(TriStateMatrix matrix);
|
|
}
|