Open ghost opened 6 years ago
hi, i donot think why to calculate deltaQ() dq = [1 theta/2];
i think dq should be calculate in this way, do you think so? Eigen::Quaternion dq; const double norm_theta = theta.norm(); const double sin_delta_by_delta = (sin(norm_theta/2) / norm_theta); dq.w() = cos(norm_theta/2); dq.x() = sin_delta_by_delta theta(0); dq.y() = sin_delta_by_delta theta(1); dq.z() = sin_delta_by_delta * theta(2);
just approximation, the error can be neglected.
@jian-li how to understand "neglected" ? i dont understand which components can be neglected, hope for your reply
hi, i donot think why to calculate deltaQ() dq = [1 theta/2];
i think dq should be calculate in this way, do you think so? Eigen::Quaternion dq;
const double norm_theta = theta.norm();
const double sin_delta_by_delta = (sin(norm_theta/2) / norm_theta);
dq.w() = cos(norm_theta/2);
dq.x() = sin_delta_by_delta theta(0);
dq.y() = sin_delta_by_delta theta(1);
dq.z() = sin_delta_by_delta * theta(2);