RobotNet/RobotNet.WebApp/Robots/Components/Monitoring/Element/Edge.razor.cs
2025-10-15 15:15:53 +07:00

39 lines
1.5 KiB
C#

using RobotNet.MapShares.Dtos;
using RobotNet.MapShares.Enums;
namespace RobotNet.WebApp.Robots.Components.Monitoring.Element;
public class EdgeModel(EdgeDto data, NodeModel startNode, NodeModel endNode) : IDisposable
{
public Guid Id => Data.Id;
public Guid MapId => Data.MapId;
public double X1 => StartNode.X;
public double Y1 => StartNode.Y;
public double X2 => EndNode.X;
public double Y2 => EndNode.Y;
public DirectionAllowed DirectionAllowed => Data.DirectionAllowed;
public TrajectoryDegree TrajectoryDegree => Data.TrajectoryDegree;
public double ControlPoint1X => Data.ControlPoint1X;
public double ControlPoint1Y => Data.ControlPoint1Y;
public double ControlPoint2X => Data.ControlPoint2X;
public double ControlPoint2Y => Data.ControlPoint2Y;
public double MaxSpeed => Data.MaxSpeed;
public double MaxHeight => Data.MaxHeight;
public double MinHeight => Data.MinHeight;
public bool RotationAllowed => Data.RotationAllowed;
public double MaxRotationSpeed => Data.MaxRotationSpeed;
public string Actions => Data.Actions;
public double AllowedDeviationXy => Data.AllowedDeviationXy;
public double AllowedDeviationTheta => Data.AllowedDeviationTheta;
public NodeModel StartNode { get; private set; } = startNode;
public NodeModel EndNode { get; private set; } = endNode;
private readonly EdgeDto Data = data;
public void Dispose()
{
GC.SuppressFinalize(this);
}
}