Eigen::Map的解释:
参考资料:
https://www.cnblogs.com/gary-guo/p/9805309.html
Eigen是名称空间,Map是个类,Map<const Vector3D>这是一个模板类。比如有个API只接受普通的C++数组,但又要对普通数组进行线性代数操作,那么用它构造为Map类,直接操作Map就等于操作了原始普通数组,省时省力。
//update
virtual void oplusImpl(const double* update)
{
//Eigen是名称空间,Map是个类,Map<const Vector3D>这是一个模板类。
//比如有个API只接受普通的C++数组,但又要对普通数组进行线性代数操作,那么用它构造为Map类,直接操作Map就等于操作了原始普通数组,省时省力
Eigen::Map<const Vector3D> v(update);
_estimate += v;
}
Eigen::Vector3d::ConstMapType的解释,和上面效果一致
参考资料:
第十章g2o_bal_class中顶点增量函数中的Eigen::VectorXd::ConstMapType v ( update, VertexCameraBAL::Dimension )
Eigen::VectorXd::ConstMapType v ( update, VertexCameraBAL::Dimension );
//update是更新量,VertexCameraBAL::Dimension是更新量的维度