namespace RobotNet10.GlobalPathPlanner.Model; public class AStarNode { public Guid Id { get; set; } public double X { get; set; } public double Y { get; set; } public double Cost { get; set; } public double Heuristic { get; set; } public double TotalCost => Cost + Heuristic; public string? Name { get; set; } public AStarNode? Parent { get; set; } public List NegativeNodes { get; set; } = []; public override bool Equals(object? obj) { if (obj is AStarNode other) return Id == other.Id; return false; } public override int GetHashCode() { return HashCode.Combine(Id); } }