RobotNet/RobotNet.RobotManager/Services/Simulation/Models/NavigationNode.cs
2025-10-15 15:15:53 +07:00

41 lines
975 B
C#

using RobotNet.MapShares.Dtos;
using RobotNet.RobotManager.Services.Planner.Space;
using RobotNet.RobotShares.Enums;
namespace RobotNet.RobotManager.Services.Simulation.Models;
public class NavigationNode
{
public Guid Id { get; set; }
public double X { get; set; }
public double Y { get; set; }
public double Theta { get; set; }
public RobotDirection Direction { get; set; }
public string Actions { get; set; } = string.Empty;
public override bool Equals(object? obj)
{
if (obj is NavigationNode other)
return Id == other.Id;
return false;
}
public override int GetHashCode()
{
return HashCode.Combine(Id);
}
public NodeDto ToNodeDto()
{
return new NodeDto
{
Id = Id,
X = X,
Y = Y,
Theta = Theta,
Direction = MapCompute.GetNodeDirection(Direction),
Actions = Actions
};
}
}