public virtual void Restart()
 {
     records          = new TransformationRecords();
     testRecords      = new TransformationRecords();
     Error_Horizontal = 0;
     RestartModel();
 }
 private void addRecord(TransformationRecord record, ref TransformationRecords records, int maxRecordSize)
 {
     if (records.Count <= 0)
     {
         records.Add(record);
     }
     else
     {
         double distToPrevPoint = DVector2.EuclDistance(records[records.Count - 1].ArPositionAsDVector2, record.ArPositionAsDVector2);
         if (!records[records.Count - 1].ArPositionAsDVector2.Equals(record.ArPositionAsDVector2) && distToPrevPoint > minDistDataCollectionThreshold)
         {
             records.Add(record);
         }
     }
     if (records.Count > maxRecordSize)
     {
         records.RemoveAt(0);
     }
 }