62 lines
1.2 KiB
C#

namespace EnvelopeGenerator.Web.Models;
public class Annotation
{
#region Bound Annotation
public string? HorBoundAnnotName { get; init; }
public string? VerBoundAnnotName { get; init; }
#endregion
#region Layout
internal double _marginX = default;
internal double _marginY = default;
internal double _width = default;
internal double _height = default;
public double MarginX
{
get => _marginX;
init => _marginX = value;
}
public double MarginY
{
get => _marginY;
init => _marginY = value;
}
public double Width
{
get => _width;
init => _width = value;
}
public double Height
{
get => _height;
init => _height = value;
}
#endregion
#region Pos
public double PosX => MarginX + (HorBoundAnnot?.HorBoundary ?? 0);
public double PosY => MarginY + (VerBoundAnnot?.VerBoundary ?? 0);
#endregion
#region Boundary
public double HorBoundary => MarginX + Width;
public double VerBoundary => MarginY + Height;
#endregion
#region BoundAnnot
public Annotation? HorBoundAnnot { get; set; }
public Annotation? VerBoundAnnot { get; set; }
#endregion
};