using GeoGraph; namespace OSMDatastructure; public class OsmNode : Node { public new HashSet edges { get; } public Coordinates coordinates { get; } public OsmNode previousPathNode = null; public double currentPathWeight = double.MaxValue; public double DirectDistanceToGoal = double.MaxValue; public OsmNode(float lat, float lon) : base(lat, lon) { this.edges = new(); this.coordinates = new Coordinates(lat, lon); } public OsmNode(Coordinates coordinates) : base(coordinates.latitude, coordinates.longitude) { this.edges = new(); this.coordinates = new Coordinates(lat, lon); } public OsmEdge? GetEdgeToNode(OsmNode n) { foreach (OsmEdge e in this.edges) if (e.neighborCoordinates.Equals(n.coordinates)) return e; return null; } }