/// <summary> /// Gets the snapped geometry from the map matcher's current state (potentially after the map matcher breaks) /// </summary> /// <param name="matcher"></param> /// <param name="cleanShape"></param> /// <param name="startIndex"></param> /// <param name="breakIndex"></param> /// <returns></returns> private List <Coord> GetSnappedSection(OsmMapMatcher matcher, List <Coord> cleanShape, int startIndex, int breakIndex) { var sequenceSoFar = matcher.State.GetMostLikelySequence(); var connectedSequence = PathFinding.DijstraConnectUpSequence(sequenceSoFar, matcher.Graph); return(TrimRoadSequence(connectedSequence.Select(st => st.Geometry).ToList(), cleanShape[startIndex], cleanShape[breakIndex])); }