public List <IPlanNode> Create() { // We compute the flight backwards - from destination to origin. var planNodes = new List <IPlanNode>(); IPlanNode prevPlanNode = new PlanNode( route.Last.Value, windTable, route.Last, route.Last.Value.Waypoint, DestElevationFt(), zfw + landingFuel, landingFuel, 0.0, fuelData.DescendKias); planNodes.Add(prevPlanNode); while (prevPlanNode.PrevRouteNode != null) { var nextPlanNodeInfo = GetNextPara(prevPlanNode); prevPlanNode = NextPlanNode(prevPlanNode, nextPlanNodeInfo); planNodes.Add(prevPlanNode); } planNodes.Reverse(); return(planNodes); }
private static IPlanNode ChangeValue(IPlanNode n, object nodeValue) { var node = PlanNode.Copy(n); node.NodeValue = nodeValue; return(node); }