65 A.block<3,3>(0,0)=x.linear();
66 A.block<3,3>(0,3)=
_skew(x.translation())*x.linear();
67 A.block<3,3>(3,3)=x.linear();
72 D.block<3,3>(0,0) = -
_skew(l.d());
73 D.block<3,3>(0,3) = -2*
_skew(l.w());
74 D.block<3,3>(3,3) = -2*
_skew(l.d());
75 Jp.block<6,6>(0,0) = A*D;
81 double iln3 = std::pow(iln,3);
84 iln,0,0,-(w.x()*d.x())*iln3,-(w.x()*d.y())*iln3,-(w.x()*d.z())*iln3,
85 0,iln,0,-(w.y()*d.x())*iln3,-(w.y()*d.y())*iln3,-(w.y()*d.z())*iln3,
86 0,0,iln,-(w.z()*d.x())*iln3,-(w.z()*d.y())*iln3,-(w.z()*d.z())*iln3,
87 0,0,0,-(d.x()*d.x()-ln*ln)*iln3,-(d.x()*d.y())*iln3,-(d.x()*d.z())*iln3,
88 0,0,0,-(d.x()*d.y())*iln3,-(d.y()*d.y()-ln*ln)*iln3,-(d.y()*d.z())*iln3,
89 0,0,0,-(d.x()*d.z())*iln3,-(d.y()*d.z())*iln3,-(d.z()*d.z()-ln*ln)*iln3;
90 Jl.block<6,6>(0,0) = A*Jll;
91 Jl.block<1,6>(6,0) << 2*d.x(),2*d.y(),2*d.z();
G2O_TYPES_SLAM3D_ADDONS_API Vector3D w() const
Eigen::Matrix< double, 3, 1, Eigen::ColMajor > Vector3D
G2O_TYPES_SLAM3D_ADDONS_API Vector3D d() const
Eigen::Matrix< double, 6, 6 > Matrix6d
static void _skew(Matrix3D &S, const Vector3D &t)
Eigen::Matrix< double, 6, 1 > Vector6d
Matrix< double, 6, 1, Eigen::ColMajor > Vector6d