Clase para el manejo de datos que tienen tiempo asignado.
- Versión
- 1.0
- Fecha
- 2019 march
- Autor
- Carlos Alberto Ospina Caicedo (SGC-OVSPo)
Con esta clase es posible:
- interpolate(): Es posible calcular la interpolación entre dos puntos p1(time,y1) y p2(time,y2) a secs_interpolate [s]
- findClosestDateTime_onList(): Por último, es posible obtener el índice de la lista "list2search" más próximo a el tiempo "dt", para lo cual, la diferencia de tiempo debe ser menor al valor "lessthan"
- set_DateTimeList(), match_DateTimeList(): En base a un par de listas/vectores de tiempo, obtener los índices de la segunda lista que se acercan en tiempo a los datos de la primer lista.
Ejemplo para obtener lista de imágenes que hay cada minuto, tomando en cuenta que la lista de imágenes en imgwc_, puede estar incompleta.
La estructura final contiene una lista de imágenes que se tomaron cada interval_sec_ [s] a lo largo de duration_sec_ [s]
{
QDateTime dt = start;
int count = duration_sec_ / interval_sec_;
for(int i=0;i<count;i++)
{
imgwc_sorted.
ids.append(i);
imgwc_sorted.
datetime.append(dt.addSecs(i*interval_sec_));
imgwc_sorted.
datetime.last().setOffsetFromUtc(imgwc_.
datetime.last().offsetFromUtc());
imgwc_sorted.
path.append(
"./NULL_image.png");
}
if(testFunc) qDebug()<<
"Matching finalizado: " << imgwc_sorted.
ids.size() << imgwc_.
ids.size();
{
if(index!=-1 && index<imgwc_.
ids.size() && i<imgwc_sorted.
ids.size())
{
if(i>1430 && testFunc)
}
else
if(i>1430 && testFunc)
qDebug()<<
"Probando" << i << index << imgwc_sorted.
datetime[i] << imgwc_sorted.
path[i] ;
}
return imgwc_sorted;
}