public void LinkTo(params Node[] nodes) { foreach (var node in nodes) { if (node != null && node != this) { Open = true; if (!LinkedNodes.Any(x => x == node)) { LinkedNodes.Add(node); } } } }
/// <summary> /// Add a link to the node /// </summary> public void AddLink(GraphLink link) { // Add the link if (!ConnectedLinks.Contains(link)) { ConnectedLinks.Add(link); } // Add the linked node if (link.ConnectedNodes.Item1 != this) { if (!LinkedNodes.Contains(link.ConnectedNodes.Item1)) { LinkedNodes.Add(link.ConnectedNodes.Item1); } } else { if (!LinkedNodes.Contains(link.ConnectedNodes.Item2)) { LinkedNodes.Add(link.ConnectedNodes.Item2); } } }
/// <summary> /// Add a link to another node. /// </summary> /// <param name="node"></param> internal void LinkToNode(Node node) { LinkedNodes.Add(node); }
public void AddLinkedNode(Node node, int linkWeight) { Link link = new Link(node, linkWeight); LinkedNodes.Add(link); }