3 #include <Eigen/Geometry>
15 using Transform3D = Eigen::Transform<double, 3, Eigen::Affine>;
31 return Transform3D(Eigen::Translation<double, 3>(v));
63 return Transform3D(Eigen::AngleAxis<double>(angle_rad, axis.normalized()));
Eigen::Transform< double, 3, Eigen::Affine > Transform3D
三维仿射变换类型
Transform3D scale(double sx, double sy, double sz)
创建非均匀缩放变换
Transform3D rotate_x(double rad)
绕 X 轴旋转
Transform3D rotate(const Vector3D &axis, double angle_rad)
创建旋转变换(轴-角表示)
Transform3D translate(const Vector3D &v)
创建平移变换
Transform3D rotate_y(double rad)
绕 Y 轴旋转
Transform3D rotate_z(double rad)
绕 Z 轴旋转
foundation::Vector3D Vector3D
双精度三维向量(重新导出)