// Copyright (c) Six Labors. // Licensed under the Six Labors Split License. using System; namespace SixLabors.ImageSharp.Drawing.Processing { /// public sealed class StrokeOptions : IEquatable { /// public double MiterLimit { get; set; } = 4D; /// public double ArcDetailScale { get; set; } = 1D; /// public LineJoin LineJoin { get; set; } = LineJoin.Bevel; /// public LineCap LineCap { get; set; } = LineCap.Butt; /// public override bool Equals(object? obj) => this.Equals(obj as StrokeOptions); /// public bool Equals(StrokeOptions? other) => other is not null && this.MiterLimit == other.MiterLimit && this.ArcDetailScale == other.ArcDetailScale && this.LineJoin == other.LineJoin && this.LineCap == other.LineCap; /// public override int GetHashCode() => HashCode.Combine( this.MiterLimit, this.ArcDetailScale, this.LineJoin, this.LineCap); } }