| | |
| | | return new List<ZTPoint>(); |
| | | } |
| | | |
| | | var s = nodes.Where(x => x.Name == start).ToList(); |
| | | var u = nodes.Where(x => x.Name != start).ToList(); |
| | | var s = nodes.Where(x => x.Name.Equals(start)).ToList(); |
| | | var u = nodes.Where(x => !x.Name.Equals( start)).ToList(); |
| | | |
| | | s.ForEach(x => |
| | | { |
| | |
| | | |
| | | private Edge GetEdgeByTwoNode(Node start, Node end) |
| | | { |
| | | var edge = edges.FirstOrDefault(x => x.Start == start.Name && x.End == end.Name); |
| | | var edge = edges.FirstOrDefault(x => x.Start .Equals( start.Name) && x.End .Equals( end.Name)); |
| | | |
| | | if (edge == null) |
| | | { |
| | | edge = edges.FirstOrDefault(x => x.Start == end.Name && x.End == start.Name); |
| | | edge = edges.FirstOrDefault(x => x.Start .Equals( end.Name) && x.End.Equals( start.Name)); |
| | | } |
| | | |
| | | return edge; |
| | |
| | | /// <returns></returns> |
| | | private Node GetNodeByName(ZTPoint nodeName) |
| | | { |
| | | return nodes.FirstOrDefault(x => x.Name == nodeName); |
| | | return nodes.FirstOrDefault(x => x.Name.Equals(nodeName)); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | { |
| | | edges.ForEach(edge => |
| | | { |
| | | if (nodes.All(x => x.Name != edge.Start)) |
| | | if (nodes.All(x => !x.Name.Equals(edge.Start))) |
| | | { |
| | | nodes.Add(new Node() |
| | | { |
| | |
| | | }); |
| | | } |
| | | |
| | | if (nodes.All(x => x.Name != edge.End)) |
| | | if (nodes.All(x => !x.Name.Equals(edge.End))) |
| | | { |
| | | nodes.Add(new Node() |
| | | { |