Main MRPT website > C++ reference for MRPT 1.4.0
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes

Detailed Description

Lightweight 3D pose (three spatial coordinates, plus three angular coordinates).

Allows coordinate access using [] operator.

See also
mrpt::poses::CPose3D

Definition at line 389 of file lightweight_geom_data.h.

#include <mrpt/math/lightweight_geom_data.h>

Public Types

enum  { static_size = 6 }
 

Public Member Functions

 TPose3D (const TPoint2D &p)
 Implicit constructor from TPoint2D. More...
 
 TPose3D (const TPose2D &p)
 Implicit constructor from TPose2D. More...
 
 TPose3D (const TPoint3D &p)
 Implicit constructor from TPoint3D. More...
 
 TPose3D (const mrpt::poses::CPose3D &p)
 Implicit constructor from heavyweight type. More...
 
 TPose3D (double _x, double _y, double _z, double _yaw, double _pitch, double _roll)
 Constructor from coordinates. More...
 
 TPose3D ()
 Default fast constructor. More...
 
double & operator[] (size_t i)
 Coordinate access using operator[]. More...
 
const double & operator[] (size_t i) const
 Coordinate access using operator[]. More...
 
double norm () const
 Pose's spatial coordinates norm. More...
 
void getAsVector (std::vector< double > &v) const
 Gets the pose as a vector of doubles. More...
 
void asString (std::string &s) const
 Returns a human-readable textual representation of the object (eg: "[x y z yaw pitch roll]", angles in degrees.) More...
 
std::string asString () const
 
void fromString (const std::string &s)
 Set the current object value from a string generated by 'asString' (eg: "[0.02 1.04 -0.8]" ) More...
 

Static Public Member Functions

static size_t size ()
 

Public Attributes

double x
 
double y
 
double z
 X,Y,Z, coords. More...
 
double yaw
 Yaw coordinate (rotation angle over Z axis). More...
 
double pitch
 Pitch coordinate (rotation angle over Y axis). More...
 
double roll
 Roll coordinate (rotation angle over X coordinate). More...
 

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
static_size 

Definition at line 390 of file lightweight_geom_data.h.

Constructor & Destructor Documentation

◆ TPose3D() [1/6]

mrpt::math::TPose3D::TPose3D ( const TPoint2D p)

Implicit constructor from TPoint2D.

Zeroes all the unprovided information.

See also
TPoint2D

◆ TPose3D() [2/6]

mrpt::math::TPose3D::TPose3D ( const TPose2D p)

Implicit constructor from TPose2D.

Gets the yaw from the 2D pose's phi, zeroing all the unprovided information.

See also
TPose2D

◆ TPose3D() [3/6]

mrpt::math::TPose3D::TPose3D ( const TPoint3D p)

Implicit constructor from TPoint3D.

Zeroes angular information.

See also
TPoint3D

◆ TPose3D() [4/6]

mrpt::math::TPose3D::TPose3D ( const mrpt::poses::CPose3D p)

Implicit constructor from heavyweight type.

See also
mrpt::poses::CPose3D

◆ TPose3D() [5/6]

mrpt::math::TPose3D::TPose3D ( double  _x,
double  _y,
double  _z,
double  _yaw,
double  _pitch,
double  _roll 
)
inline

Constructor from coordinates.

Definition at line 417 of file lightweight_geom_data.h.

◆ TPose3D() [6/6]

mrpt::math::TPose3D::TPose3D ( )
inline

Default fast constructor.

Initializes to garbage.

Definition at line 421 of file lightweight_geom_data.h.

Member Function Documentation

◆ asString() [1/2]

std::string mrpt::math::TPose3D::asString ( ) const
inline

Definition at line 443 of file lightweight_geom_data.h.

References asString().

Referenced by asString().

◆ asString() [2/2]

void mrpt::math::TPose3D::asString ( std::string &  s) const

Returns a human-readable textual representation of the object (eg: "[x y z yaw pitch roll]", angles in degrees.)

See also
fromString

◆ fromString()

void mrpt::math::TPose3D::fromString ( const std::string &  s)

Set the current object value from a string generated by 'asString' (eg: "[0.02 1.04 -0.8]" )

See also
asString
Exceptions
std::exceptionOn invalid format

◆ getAsVector()

void mrpt::math::TPose3D::getAsVector ( std::vector< double > &  v) const
inline

Gets the pose as a vector of doubles.

Definition at line 435 of file lightweight_geom_data.h.

References mrpt::obs::gnss::pitch, and mrpt::obs::gnss::roll.

◆ norm()

double mrpt::math::TPose3D::norm ( ) const
inline

Pose's spatial coordinates norm.

Definition at line 429 of file lightweight_geom_data.h.

References mrpt::utils::square().

◆ operator[]() [1/2]

double& mrpt::math::TPose3D::operator[] ( size_t  i)
inline

Coordinate access using operator[].

Order: x,y,z,yaw,pitch,roll

Definition at line 423 of file lightweight_geom_data.h.

References mrpt::obs::gnss::pitch, and mrpt::obs::gnss::roll.

◆ operator[]() [2/2]

const double& mrpt::math::TPose3D::operator[] ( size_t  i) const
inline

Coordinate access using operator[].

Order: x,y,z,yaw,pitch,roll

Definition at line 425 of file lightweight_geom_data.h.

References mrpt::obs::gnss::pitch, and mrpt::obs::gnss::roll.

◆ size()

static size_t mrpt::math::TPose3D::size ( )
inlinestatic

Definition at line 450 of file lightweight_geom_data.h.

Member Data Documentation

◆ pitch

double mrpt::math::TPose3D::pitch

◆ roll

double mrpt::math::TPose3D::roll

Roll coordinate (rotation angle over X coordinate).

Definition at line 394 of file lightweight_geom_data.h.

Referenced by mrpt::graphs::detail::graph_ops< graph_t >::load_graph_of_poses_from_text_file(), mrpt::math::operator!=(), and mrpt::math::operator==().

◆ x

double mrpt::math::TPose3D::x

◆ y

double mrpt::math::TPose3D::y

◆ yaw

double mrpt::math::TPose3D::yaw

◆ z

double mrpt::math::TPose3D::z



Page generated by Doxygen 1.9.1 for MRPT 1.4.0 SVN: at Sun Mar 7 18:43:46 UTC 2021