21 static_assert(std::is_trivially_copyable_v<TTwist2D>);
33 m.
rows() == 1 && m.
cols() == 3,
"Wrong size of vector in ::fromString");
42 const double nvx =
vx * cos(ang) -
vy * sin(ang);
43 const double nvy =
vx * sin(ang) +
vy * cos(ang);
60 for (
size_t i = 0; i < o.
size(); i++) in >> o[i];
66 for (
size_t i = 0; i < o.
size(); i++)
out << o[i];
bool operator==(const TTwist2D &o) const
#define THROW_EXCEPTION(msg)
void rotate(const double ang)
Transform the (vx,vy) components for a counterclockwise rotation of ang radians.
std::string std::string format(std::string_view fmt, ARGS &&... args)
mrpt::serialization::CArchive & operator>>(mrpt::serialization::CArchive &in, CMatrixD::Ptr &pObj)
2D twist: 2D velocity vector (vx,vy) + planar angular velocity (omega)
std::string asString() const
This base provides a set of functions for maths stuff.
mrpt::math::TPose2D operator*(const double dt) const
Returns the pose increment of multiplying each twist component times "dt" seconds.
constexpr double DEG2RAD(const double x)
Degrees to radians.
double vx
Velocity components: X,Y (m/s)
void fromString(const std::string &s)
Set the current object value from a string generated by 'asString' (eg: "[0.02 1.04 -45...
#define ASSERTMSG_(f, __ERROR_MSG)
Defines an assertion mechanism.
bool fromMatlabStringFormat(const std::string &s, mrpt::optional_ref< std::ostream > dump_errors_here=std::nullopt)
Reads a matrix from a string in Matlab-like format, for example: "[1 0 2; 0 4 -1]" The string must st...
size_type rows() const
Number of rows in the matrix.
size_type cols() const
Number of columns in the matrix.
constexpr std::size_t size() const
Virtual base class for "archives": classes abstracting I/O streams.
mrpt::vision::TStereoCalibResults out
mrpt::serialization::CArchive & operator<<(mrpt::serialization::CArchive &s, const CVectorFloat &a)
bool operator!=(const TTwist2D &o) const
constexpr double RAD2DEG(const double x)
Radians to degrees.
double omega
Angular velocity (rad/s)