Пример #1
0
        internal void AddConnection(Node targetNode, double distance, bool twoWay)
        {
            if (targetNode == null)
            {
                throw new ArgumentNullException("targetNode");
            }
            if (targetNode == this)
            {
                throw new ArgumentException("Node may not connect to itself.");
            }
            if (distance <= 0)
            {
                throw new ArgumentException("Distance must be positive.");
            }

            connections.Add(new Edge(targetNode, distance));
            if (twoWay)
            {
                targetNode.AddConnection(this, distance, false);
            }
        }