20 if (
this == &other)
return *
this;
30 return std::make_shared<DifferenceBasedReadyPoseUpdater>(*
this);
34 Eigen::Vector3d pose_difference =
36 double pose_difference_norm =
37 ::sqrt(pow(pose_difference(0), 2) + pow(pose_difference(1), 2) + pow(pose_difference(2), 2));
Class to update the pose of the vehicle, including a method to check if the pose is ready for graph u...
DifferenceBasedReadyPoseUpdater & operator=(const DifferenceBasedReadyPoseUpdater &other)
double minimum_pose_difference_
virtual ~DifferenceBasedReadyPoseUpdater()
DifferenceBasedReadyPoseUpdater(const SLAMParameters ¶ms)
virtual bool pose_ready_for_graph_update() const override
Check if the accumulated pose difference is greater than the minimum threshold.
virtual std::shared_ptr< PoseUpdater > clone() const override
Clone the pose updater.
Class to update the pose of the vehicle.
Eigen::Vector3d _last_graphed_pose_
PoseUpdater & operator=(const PoseUpdater &other)
Eigen::Vector3d _last_pose_
Eigen::Vector3d pose_difference_eigen(const Eigen::Vector3d &pose1, const Eigen::Vector3d &pose2)
Parameters for the SLAM node.
double slam_min_pose_difference_