- FILE * fp = NULL;
for (auto frames = 0; frames <fileParse->frame_count; frames++)
{
Eigen::Quaternionf Qsensor2NED = {
fileParse->quat_array_list[frames][3 * 4 + 0],
fileParse->quat_array_list[frames][3 * 4 + 1],
fileParse->quat_array_list[frames][3 * 4 + 2],
fileParse->quat_array_list[frames][3 * 4 + 3],
};
Eigen::Vector3f accInSensor = {
fileParse->acc_array_list[frames][3 * 3 + 0],
fileParse->acc_array_list[frames][3 * 3 + 1],
fileParse->acc_array_list[frames][3 * 3 + 2]
};
Eigen::Vector3f accInNED = Qsensor2NED.matrix() * accInSensor;/*
cout << "frames:\t" << frames << endl;
cout << accInNED.x() << "\t" << accInNED.y() << "\t" << accInNED.z() - 1 << endl;*/
float mod = sqrt(accInNED.x() * accInNED.x() + accInNED.y() * accInNED.y() + (accInNED.z() - 1)*(accInNED.z() - 1));
cout << "mod:\t" << mod << endl;
fprintf(fp, "%d\t%f\t%f\t%f\t%f\n", frames, mod, accInNED.x(), accInNED.y(), accInNED.z() - 1);
}
fclose(fp);