Exemplo n.º 1
0
        /// <summary>
        /// Compare points value of to Data object,ordering not mean.
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public override bool Equals(object obj)
        {
            if (!(obj is Data))
            {
                return(false);
            }

            var other = obj as Data;

            if (other.Length != this.Length)
            {
                return(false);
            }

            foreach (var pOther in other.PointsList)
            {
                bool found = false;
                foreach (var pThis in this.PointsList)
                {
                    if (DecimalTools.Compare(pOther, pThis))
                    {
                        found = true;
                        break;
                    }
                }
                if (!found)
                {
                    return(false);
                }
            }
            return(true);
        }
Exemplo n.º 2
0
        public void Test_CompareArrays()
        {
            var expectedCompare_a2_a3 = false;
            var expectedCompare_a2_a4 = true;

            var actualCompare_a2_a3 = DecimalTools.Compare(a2, a3);
            var actualCompare_a2_a4 = DecimalTools.Compare(a2, a4);

            Assert.AreEqual(expectedCompare_a2_a3, actualCompare_a2_a3);
            Assert.AreEqual(expectedCompare_a2_a4, actualCompare_a2_a4);
        }
Exemplo n.º 3
0
        public void Test_CompareArrays_difLength()
        {
            var expectedCompare_a1_a2 = false;
            var expectedCompare_a2_a1 = false;

            var actualCompare_a1_a2 = DecimalTools.Compare(a1, a2);
            var actualCompare_a2_a1 = DecimalTools.Compare(a2, a1);

            Assert.AreEqual(expectedCompare_a1_a2, actualCompare_a1_a2);
            Assert.AreEqual(expectedCompare_a2_a1, actualCompare_a2_a1);
        }
Exemplo n.º 4
0
 /// <summary>
 /// Remove point from current points list.
 /// Update bounding box.
 /// </summary>
 /// <param name="old">Points that might be delete</param>
 public void RemovePoints(Data old)
 {
     foreach (var point in old.PointsList)
     {
         int i = 0;
         while (i < PointsList.Count)
         {
             if (DecimalTools.Compare(point, PointsList[i]))
             {
                 PointsList.RemoveAt(i);
                 break;
             }
             i++;
         }
     }
     Update();
 }