Main MRPT website > C++ reference for MRPT 1.9.9
Classes | Namespaces | Typedefs | Functions | Variables
lightweight_geom_data.h File Reference
#include <mrpt/core/bits_math.h>
#include <mrpt/typemeta/TTypeName.h>
#include <mrpt/math/math_frwds.h>
#include <mrpt/math/lightweight_geom_data_frwds.h>
#include <mrpt/math/eigen_frwds.h>
#include <mrpt/math/wrap2pi.h>
#include <mrpt/core/format.h>
#include <mrpt/core/exceptions.h>
#include <vector>
#include <stdexcept>
#include <type_traits>
#include <mrpt/serialization/serialization_frwds.h>
Include dependency graph for lightweight_geom_data.h:

Go to the source code of this file.

Classes

struct  mrpt::math::TPoseOrPoint
 Base type of all TPoseXX and TPointXX classes in mrpt::math. More...
 
struct  mrpt::math::TPoint2D
 Lightweight 2D point. More...
 
struct  mrpt::math::TPose2D
 Lightweight 2D pose. More...
 
struct  mrpt::math::TPoint3Df
 Lightweight 3D point (float version). More...
 
struct  mrpt::math::TPoint3D
 Lightweight 3D point. More...
 
struct  mrpt::math::TPointXYZIu8
 XYZ point (double) + Intensity(u8) More...
 
struct  mrpt::math::TPointXYZRGBu8
 XYZ point (double) + RGB(u8) More...
 
struct  mrpt::math::TPointXYZfIu8
 XYZ point (float) + Intensity(u8) More...
 
struct  mrpt::math::TPointXYZfRGBu8
 XYZ point (float) + RGB(u8) More...
 
struct  mrpt::math::TPose3D
 Lightweight 3D pose (three spatial coordinates, plus three angular coordinates). More...
 
struct  mrpt::math::TPose3DQuat
 Lightweight 3D pose (three spatial coordinates, plus a quaternion ). More...
 
struct  mrpt::math::TSegment2D
 2D segment, consisting of two points. More...
 
struct  mrpt::math::TSegment3D
 3D segment, consisting of two points. More...
 
struct  mrpt::math::TLine2D
 2D line without bounds, represented by its equation $Ax+By+C=0$. More...
 
struct  mrpt::math::TLine3D
 3D line, represented by a base point and a director vector. More...
 
struct  mrpt::math::TPlane
 3D Plane, represented by its equation $Ax+By+Cz+D=0$ More...
 
class  mrpt::math::TPolygon2D
 2D polygon, inheriting from std::vector<TPoint2D>. More...
 
class  mrpt::math::TPolygon3D
 3D polygon, inheriting from std::vector<TPoint3D> More...
 
struct  mrpt::math::TObject2D
 Standard type for storing any lightweight 2D type. More...
 
struct  mrpt::math::TObject2D::tobject2d_data_t
 Union type storing pointers to every allowed type. More...
 
struct  mrpt::math::TObject3D
 Standard object for storing any 3D lightweight object. More...
 
struct  mrpt::math::TObject3D::tobject3d_data_t
 Union containing pointer to actual data. More...
 
struct  mrpt::math::TTwist2D
 2D twist: 2D velocity vector (vx,vy) + planar angular velocity (omega) More...
 
struct  mrpt::math::TTwist3D
 3D twist: 3D velocity vector (vx,vy,vz) + angular velocity (wx,wy,wz) More...
 

Namespaces

 mrpt
 This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
 
 mrpt::math
 This base provides a set of functions for maths stuff.
 
 mrpt::typemeta
 

Typedefs

using mrpt::math::TPlane3D = TPlane
 

Functions

TPose3D mrpt::math::operator- (const TPose3D &p)
 Unary $\ominus$ operator: computes inverse SE(3) element. More...
 
TPose3D mrpt::math::operator- (const TPose3D &b, const TPose3D &a)
 Binary $\ominus$ operator: $b \ominus a$ computes the relative SE(3) pose of b "as seen from" a More...
 
std::ostream & mrpt::math::operator<< (std::ostream &o, const TPoint2D &p)
 
std::ostream & mrpt::math::operator<< (std::ostream &o, const TPoint3D &p)
 
std::ostream & mrpt::math::operator<< (std::ostream &o, const TPose2D &p)
 
std::ostream & mrpt::math::operator<< (std::ostream &o, const TPose3D &p)
 
std::ostream & mrpt::math::operator<< (std::ostream &o, const TPose3DQuat &p)
 
constexpr TPoint3D mrpt::math::operator- (const TPoint3D &p1)
 Unary minus operator for 3D points. More...
 
constexpr bool mrpt::math::operator== (const TPoint2D &p1, const TPoint2D &p2)
 Exact comparison between 2D points. More...
 
constexpr bool mrpt::math::operator!= (const TPoint2D &p1, const TPoint2D &p2)
 Exact comparison between 2D points. More...
 
constexpr bool mrpt::math::operator== (const TPoint3D &p1, const TPoint3D &p2)
 Exact comparison between 3D points. More...
 
constexpr bool mrpt::math::operator!= (const TPoint3D &p1, const TPoint3D &p2)
 Exact comparison between 3D points. More...
 
bool mrpt::math::operator== (const TPose2D &p1, const TPose2D &p2)
 Exact comparison between 2D poses, taking possible cycles into account. More...
 
bool mrpt::math::operator!= (const TPose2D &p1, const TPose2D &p2)
 Exact comparison between 2D poses, taking possible cycles into account. More...
 
bool mrpt::math::operator== (const TPose3D &p1, const TPose3D &p2)
 Exact comparison between 3D poses, taking possible cycles into account. More...
 
bool mrpt::math::operator!= (const TPose3D &p1, const TPose3D &p2)
 Exact comparison between 3D poses, taking possible cycles into account. More...
 
bool mrpt::math::operator== (const TSegment2D &s1, const TSegment2D &s2)
 
bool mrpt::math::operator!= (const TSegment2D &s1, const TSegment2D &s2)
 
bool mrpt::math::operator== (const TSegment3D &s1, const TSegment3D &s2)
 
bool mrpt::math::operator!= (const TSegment3D &s1, const TSegment3D &s2)
 
template<class PoseOrPoint , typename = std::enable_if_t<std::is_base_of< mrpt::math::TPoseOrPoint, PoseOrPoint>::value>>
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, PoseOrPoint &o)
 
template<class PoseOrPoint , typename = std::enable_if_t<std::is_base_of< mrpt::math::TPoseOrPoint, PoseOrPoint>::value>>
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const PoseOrPoint &o)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TSegment2D &s)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TSegment2D &s)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TLine2D &l)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TLine2D &l)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TObject2D &o)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TObject2D &o)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TSegment3D &s)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TSegment3D &s)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TLine3D &l)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TLine3D &l)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TPlane &p)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TPlane &p)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TObject3D &o)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TObject3D &o)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TTwist2D &o)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TTwist2D &o)
 
mrpt::serialization::CArchivemrpt::math::operator>> (mrpt::serialization::CArchive &in, mrpt::math::TTwist3D &o)
 
mrpt::serialization::CArchivemrpt::math::operator<< (mrpt::serialization::CArchive &out, const mrpt::math::TTwist3D &o)
 

Variables

static constexpr unsigned char mrpt::math::GEOMETRIC_TYPE_POINT = 0
 Object type identifier for TPoint2D or TPoint3D. More...
 
static constexpr unsigned char mrpt::math::GEOMETRIC_TYPE_SEGMENT = 1
 Object type identifier for TSegment2D or TSegment3D. More...
 
static constexpr unsigned char mrpt::math::GEOMETRIC_TYPE_LINE = 2
 Object type identifier for TLine2D or TLine3D. More...
 
static constexpr unsigned char mrpt::math::GEOMETRIC_TYPE_POLYGON = 3
 Object type identifier for TPolygon2D or TPolygon3D. More...
 
static constexpr unsigned char mrpt::math::GEOMETRIC_TYPE_PLANE = 4
 Object type identifier for TPlane. More...
 
static constexpr unsigned char mrpt::math::GEOMETRIC_TYPE_UNDEFINED = 255
 Object type identifier for empty TObject2D or TObject3D. More...
 



Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST