41 lines
975 B
C#
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
|
|
};
|
|
}
|
|
}
|