namespace RobotNet10.NavigationTune.Shared.Models; /// /// Edge in a custom path /// Represents a segment of the path with start, end, and optional control points for curves /// public class PathEdge { /// /// Start point X coordinate (meters) /// public double StartX { get; set; } /// /// Start point Y coordinate (meters) /// public double StartY { get; set; } /// /// End point X coordinate (meters) /// public double EndX { get; set; } /// /// End point Y coordinate (meters) /// public double EndY { get; set; } /// /// Degree of the curve (1 = linear, 2 = quadratic Bezier, 3 = cubic Bezier) /// public int Degree { get; set; } = 1; /// /// First control point X (for Degree 2 and 3) /// public double? ControlPoint1X { get; set; } /// /// First control point Y (for Degree 2 and 3) /// public double? ControlPoint1Y { get; set; } /// /// Second control point X (for Degree 3 only) /// public double? ControlPoint2X { get; set; } /// /// Second control point Y (for Degree 3 only) /// public double? ControlPoint2Y { get; set; } /// /// Direction of movement along this edge /// public RobotDirection Direction { get; set; } = RobotDirection.FORWARD; }