// Copyright (c) Six Labors.
// Licensed under the Six Labors Split License.
namespace SixLabors.PolygonClipper {
///
/// Specifies how the connection between two consecutive line segments (a join)
/// is rendered when stroking paths or polygons.
///
public enum LineJoin
{
///
/// Joins lines by extending their outer edges until they meet at a sharp corner.
/// If the miter limit is exceeded, the join is truncated at the limit distance.
///
Miter = 0,
///
/// Joins lines by extending their outer edges to form a miter.
/// If the miter limit is exceeded, the join falls back to a bevel.
///
MiterRevert = 1,
///
/// Joins lines by connecting them with a circular arc centered at the join point,
/// producing a smooth, rounded corner.
///
Round = 2,
///
/// Joins lines by connecting the outer corners directly with a straight line,
/// forming a flat edge at the join point.
///
Bevel = 3,
///
/// Joins lines by forming a miter, but if the miter limit is exceeded,
/// the join falls back to a round join instead of a bevel.
///
MiterRound = 4
}
}