示例#1
0
        /// <summary>
        /// Compares edges using <see cref="StartNode"/>, <see cref="EndNode"/>, <see cref="Distance"/> properties.
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public override bool Equals(object obj)
        {
            var edge = obj as IEdge <T>;

            return(StartNode.Equals(edge.StartNode) &&
                   EndNode.Equals(edge.EndNode) &&
                   Distance.Equals(edge.Distance));
        }
示例#2
0
文件: Arc.cs 项目: Pogadi/viadf
        public override bool Equals(object O)
        {
            Arc A = (Arc)O;

            if (A == null)
            {
                throw new ArgumentException("Cannot compare " + GetType() + " with " + O.GetType());
            }
            return(StartNode.Equals(A.StartNode) && EndNode.Equals(A.EndNode));
        }
            public override bool Equals(object obj)
            {
                Edge otherEdge = obj as Edge;

                if (otherEdge == null)
                {
                    return(false);
                }
                return(ch.Equals(otherEdge.ch) &&
                       StartNode.Equals(otherEdge.StartNode) &&
                       EndNode.Equals(otherEdge.EndNode));
            }
示例#4
0
        public void TestStartNodeEqualsSelf()
        {
            Node node = new StartNode(new Point(1, 1), new Point(10, 10));

            Assert.IsTrue(node.Equals(node));
        }
 public bool HasTwoVertices(char node1, char node2)
 {
     return(StartNode.Equals(node1) && DestNode.Equals(node2) ||
            StartNode.Equals(node2) && DestNode.Equals(node1) && ArrowDirection == Direction.None);
 }