public static string GetKadr(KadrInTime kadrInTime, int tobiiZone) { if (kadrInTime == null) { return(""); } if (tobiiZone >= 1 && tobiiZone <= 13) { return(kadrInTime.OnMainMFI); } if (tobiiZone >= 14 && tobiiZone <= 26) { return(kadrInTime.OnCenterMFI); } if (tobiiZone == 27) { return(kadrInTime.OnFarMFI); } if ((tobiiZone >= 28 && tobiiZone <= 37) || (tobiiZone >= -1 && tobiiZone <= 0)) { return(kadrInTime.OnMainMFI); } throw new Exception("Зона тобии номер " + tobiiZone.ToString() + " находится вне диапазона адресов - от -1 до 37"); }
public static string GetKadr(List <KadrInTime> kadrInTimes, long time_ms, int tobiiZone) { KadrInTime kit = FindTimeInList(kadrInTimes, time_ms); string kadr = GetKadr(kit, tobiiZone); return(kadr); }
public void Calculate(List <TobiiRecord> tobiiRecords, List <KadrInTime> kadrInTimes, TabOfKeys tabOfKeys) { FZoneList = new List <TobiiRecord>(); foreach (var TR in tobiiRecords) { string kadr = KadrInTime.GetKadr(kadrInTimes, TR.time_ms, TR.zone); if (kadr == "") { continue; } int FZone = tabOfKeys.GetFuncZone(TR.zone, kadr); FZoneList.Add(new TobiiRecord() { time_ms = TR.time_ms, zone = FZone }); } }
public static List <KadrInTime> ReadKadrSets(string FileName) { //считываем данные из Excel файла в двумерный массив Excel.Application xlApp = new Excel.Application(); //Excel Excel.Workbook xlWB; //рабочая книга Excel.Worksheet xlSht; //лист Excel xlWB = xlApp.Workbooks.Open(FileName); //название файла Excel xlSht = xlWB.Worksheets[1]; //название листа или 1-й лист в книге xlSht = xlWB.Worksheets[1]; int iLastRow = xlSht.Cells[xlSht.Rows.Count, "B"].End[Excel.XlDirection.xlUp].Row; //последняя заполненная строка в столбце А var arrData = (object[, ])xlSht.Range["B4:M" + iLastRow].Value; //берём данные с листа Excel //xlApp.Visible = true; //отображаем Excel xlWB.Close(false); //закрываем книгу, изменения не сохраняем xlApp.Quit(); //закрываем Excel List <KadrInTime> kadrInTimes = new List <KadrInTime>(); //заполняем DataGridView данными из массива int i; for (i = 1; i <= arrData.GetUpperBound(0); i++) { double t = (double)arrData[i, 1] * 3_600_000 * 24; long tbeg = (long)t; double te = (double)arrData[i, 2] * 3_600_000 * 24; long tend = (long)te; KadrInTime K = new KadrInTime( (string)arrData[i, 9], (string)arrData[i, 10], (string)arrData[i, 11], (string)arrData[i, 12], tbeg, tend); kadrInTimes.Add(K); } return(kadrInTimes); }