Пример #1
0
 //Добавляет в Momnets мгновенное значение mv, сохраняя упорядоченность sv по времени
 public void AddMoment(Moment mv)
 {
     if (Moments == null)
     {
         Moments = new List <Moment>();
     }
     if (Moments.Count == 0 || mv.Time > Moments[Moments.Count - 1].Time)
     {
         Moments.Add(mv);
     }
     else if (mv.Time == Moments[Moments.Count - 1].Time)
     {
         Moments.Add(mv.Clone(mv.Time.AddMilliseconds(0.6)));
     }
     else
     {
         int i = Moments.Count - 1;
         while (i >= 0 && Moments[i].Time >= mv.Time)
         {
             i--;
         }
         if (mv.Time != Moments[i + 1].Time)
         {
             Moments.Insert(i + 1, mv);
         }
     }
 }