MRPT  1.9.9
CObservationOdometry.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 
10 #ifndef CObservationOdometry_H
11 #define CObservationOdometry_H
12 
14 #include <mrpt/obs/CObservation.h>
15 #include <mrpt/poses/CPose2D.h>
16 #include <mrpt/poses/CPose3D.h>
18 
19 namespace mrpt::obs
20 {
21 /** An observation of the current (cumulative) odometry for a wheeled robot.
22  * This kind of observation will only occur in a "observation-only" rawlog
23  * file, otherwise
24  * odometry are modeled with actions. Refer to the <a
25  * href="http://www.mrpt.org/Rawlog_Format">page on rawlogs</a>.
26  *
27  * \sa CObservation, CActionRobotMovement2D
28  * \ingroup mrpt_obs_grp
29  */
31 {
33 
34  public:
35  /** Default ctor */
37 
38  /** The absolute odometry measurement (IT IS NOT INCREMENTAL) */
40 
41  /** "true" means that "encoderLeftTicks" and "encoderRightTicks" contain
42  * valid values. */
44  /** For differential-driven robots: The ticks count for each wheel in
45  * ABSOLUTE VALUE (IT IS NOT INCREMENTAL) (positive means FORWARD, for both
46  * wheels); \sa hasEncodersInfo */
48 
49  /** "true" means that `velocityLocal` contains valid values. */
51  /** Velocity, in the robot (local) frame of reference (+X=forward). */
53 
54  // See base class docs
55  void getSensorPose(mrpt::poses::CPose3D& out_sensorPose) const override
56  {
57  out_sensorPose = mrpt::poses::CPose3D(0, 0, 0);
58  }
59  void setSensorPose(const mrpt::poses::CPose3D&) override {}
60  void getDescriptionAsText(std::ostream& o) const override;
61 
62 }; // End of class def.
63 
64 }
65 #endif
66 
67 
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
Declares a class that represents any robot's observation.
Definition: CObservation.h:44
An observation of the current (cumulative) odometry for a wheeled robot.
int32_t encoderLeftTicks
For differential-driven robots: The ticks count for each wheel in ABSOLUTE VALUE (IT IS NOT INCREMENT...
void getSensorPose(mrpt::poses::CPose3D &out_sensorPose) const override
A general method to retrieve the sensor pose on the robot.
mrpt::poses::CPose2D odometry
The absolute odometry measurement (IT IS NOT INCREMENTAL)
bool hasEncodersInfo
"true" means that "encoderLeftTicks" and "encoderRightTicks" contain valid values.
bool hasVelocities
"true" means that velocityLocal contains valid values.
void setSensorPose(const mrpt::poses::CPose3D &) override
A general method to change the sensor pose on the robot.
mrpt::math::TTwist2D velocityLocal
Velocity, in the robot (local) frame of reference (+X=forward).
void getDescriptionAsText(std::ostream &o) const override
Build a detailed, multi-line textual description of the observation contents and dump it to the outpu...
A class used to store a 2D pose, including the 2D coordinate point and a heading (phi) angle.
Definition: CPose2D.h:39
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Definition: CPose3D.h:87
This namespace contains representation of robot actions and observations.
__int32 int32_t
Definition: rptypes.h:46
2D twist: 2D velocity vector (vx,vy) + planar angular velocity (omega)



Page generated by Doxygen 1.9.1 for MRPT 1.9.9 Git: 814d80880 Fri Aug 24 01:51:28 2018 +0200 at mar 26 may 2026 12:30:59 CEST