34 out << m_coords[0] << m_coords[1];
50 in >> f; m_coords[0]=f;
51 in >> f; m_coords[1]=f;
56 in >> m_coords[0] >> m_coords[1];
69 const double ccos = cos(
b.phi());
70 const double ssin = sin(
b.phi());
71 const double Ax =
x()-
b.x();
72 const double Ay =
y()-
b.y();
74 return CPoint2D( Ax * ccos + Ay * ssin, -Ax * ssin + Ay * ccos );
80 m_coords[i] = std::numeric_limits<double>::quiet_NaN();
#define IMPLEMENTS_SERIALIZABLE(class_name, base, NameSpace)
This must be inserted in all CSerializable classes implementation files.
A class used to store a 2D point.
CPoint2D operator-(const CPose2D &b) const
The operator D="this"-b is the pose inverse compounding operator, the resulting points "D" fulfils: "...
void setToNaN() MRPT_OVERRIDE
Set all data fields to quiet NaN.
void readFromStream(mrpt::utils::CStream &in, int version)
Introduces a pure virtual method responsible for loading from a CStream This can not be used directly...
A class used to store a 2D pose, including the 2D coordinate point and a heading (phi) angle.
The virtual base class which provides a unified interface for all persistent objects in MRPT.
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
typedef void(APIENTRYP PFNGLBLENDCOLORPROC)(GLclampf red
#define MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION(__V)
For use in CSerializable implementations.
This base provides a set of functions for maths stuff.
Classes for 2D/3D geometry representation, both of single values and probability density distribution...
Classes for serialization, sockets, ini-file manipulation, streams, list of properties-values,...
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.