A base class for representing a point in 2D or 3D.
For more information refer to the 2D/3D Geometry tutorial online.
#include <mrpt/poses/CPoint.h>

Public Member Functions | |
Methods common to all 2D or 3D points | |
| template<class OTHERCLASS > | |
| void | AddComponents (const OTHERCLASS &b) |
| Scalar addition of all coordinates. | |
| void | operator*= (const double s) |
| Scalar multiplication. | |
| void | getAsVector (vector_double &v) const |
| Return the pose or point as a 1x2 or 1x3 vector [x y] or [x y z]. | |
| vector_double | getAsVector () const |
| void | getHomogeneousMatrix (CMatrixDouble44 &out_HM) const |
| Returns the corresponding 4x4 homogeneous transformation matrix for the point(translation) or pose (translation+orientation). | |
| void | asString (std::string &s) const |
| Returns a human-readable textual representation of the object (eg: "[0.02 1.04]" ) | |
| 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]" ) | |
| const double & | operator[] (unsigned int i) const |
| double & | operator[] (unsigned int i) |
| double | x () const |
| Common members of all points & poses classes. | |
| double & | x () |
| void | x (const double v) |
| double | y () const |
| double & | y () |
| void | y (const double v) |
| void | x_incr (const double v) |
| void | y_incr (const double v) |
| template<class OTHERCLASS > | |
| double | sqrDistanceTo (const CPoseOrPoint< OTHERCLASS > &b) const |
| Returns the squared euclidean distance to another pose/point: | |
| template<class OTHERCLASS > | |
| double | distanceTo (const CPoseOrPoint< OTHERCLASS > &b) const |
| Returns the Euclidean distance to another pose/point: | |
| double | distanceTo (const mrpt::math::TPoint3D &b) const |
| Returns the euclidean distance to a 3D point: | |
| double | distance2DToSquare (double ax, double ay) const |
| Returns the squared 2D distance from this pose/point to a 2D point (ignores Z, if it exists). | |
| double | distance3DToSquare (double ax, double ay, double az) const |
| Returns the squared 3D distance from this pose/point to a 3D point. | |
| double | distance2DTo (double ax, double ay) const |
| Returns the 2D distance from this pose/point to a 2D point (ignores Z, if it exists). | |
| double | distance3DTo (double ax, double ay, double az) const |
| Returns the 3D distance from this pose/point to a 3D point. | |
| double | norm () const |
Returns the euclidean norm of vector: . | |
| vector_double | getAsVectorVal () const |
| Return the pose or point as a 1xN vector with all the components (see derived classes for each implementation) | |
| CMatrixDouble44 | getHomogeneousMatrixVal () const |
| Returns the corresponding 4x4 homogeneous transformation matrix for the point(translation) or pose (translation+orientation). | |
| void | getInverseHomogeneousMatrix (math::CMatrixDouble44 &out_HM) const |
| Returns the corresponding 4x4 inverse homogeneous transformation matrix for this point or pose. | |
| mrpt::math::CMatrixDouble44 | getInverseHomogeneousMatrix () const |
| static bool | is3DPoseOrPoint () |
| Return true for poses or points with a Z component, false otherwise. | |
|
inline |
|
inline |
Returns a human-readable textual representation of the object (eg: "[0.02 1.04]" )
|
inline |
Definition at line 99 of file CPoint.h.
Referenced by mrpt::poses::CPoint< CPoint3D >::asString().
|
inlineinherited |
Returns the 2D distance from this pose/point to a 2D point (ignores Z, if it exists).
Definition at line 184 of file CPoseOrPoint.h.
|
inlineinherited |
Returns the squared 2D distance from this pose/point to a 2D point (ignores Z, if it exists).
Definition at line 176 of file CPoseOrPoint.h.
|
inlineinherited |
Returns the 3D distance from this pose/point to a 3D point.
Definition at line 187 of file CPoseOrPoint.h.
|
inlineinherited |
Returns the squared 3D distance from this pose/point to a 3D point.
Definition at line 179 of file CPoseOrPoint.h.
|
inlineinherited |
Returns the Euclidean distance to another pose/point:
Definition at line 170 of file CPoseOrPoint.h.
|
inlineinherited |
Returns the euclidean distance to a 3D point:
Definition at line 190 of file CPoseOrPoint.h.
|
inline |
|
inline |
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 76 of file CPoint.h.
Referenced by mrpt::poses::CPoint< CPoint3D >::getAsVector().
|
inlineinherited |
Return the pose or point as a 1xN vector with all the components (see derived classes for each implementation)
Definition at line 199 of file CPoseOrPoint.h.
|
inline |
Returns the corresponding 4x4 homogeneous transformation matrix for the point(translation) or pose (translation+orientation).
|
inlineinherited |
Returns the corresponding 4x4 homogeneous transformation matrix for the point(translation) or pose (translation+orientation).
Definition at line 209 of file CPoseOrPoint.h.
|
inlineinherited |
Returns the corresponding 4x4 inverse homogeneous transformation matrix for this point or pose.
Definition at line 219 of file CPoseOrPoint.h.
Referenced by mrpt::poses::CPose< DERIVEDCLASS >::operator-().
|
inlineinherited |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 226 of file CPoseOrPoint.h.
|
inlinestaticinherited |
Return true for poses or points with a Z component, false otherwise.
Definition at line 149 of file CPoseOrPoint.h.
Referenced by mrpt::poses::CPoseOrPoint< CPoint3D >::sqrDistanceTo().
|
inlineinherited |
Returns the euclidean norm of vector:
.
Definition at line 193 of file CPoseOrPoint.h.
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Returns the squared euclidean distance to another pose/point:
Definition at line 152 of file CPoseOrPoint.h.
|
inlineinherited |
Common members of all points & poses classes.
< Get X coord.
Definition at line 135 of file CPoseOrPoint.h.
Referenced by mrpt::graphs::detail::graph_ops< graph_t >::auxEuclid2Dist(), mrpt::poses::CPoint2D::CPoint2D(), mrpt::poses::CPoint3D::CPoint3D(), mrpt::poses::SE_traits< 2 >::exp(), mrpt::poses::CPoint< CPoint3D >::getHomogeneousMatrix(), mrpt::poses::CRobot2DPoseEstimator::getLatestRobotPose(), mrpt::slam::CPointsMap::getPoint(), mrpt::opengl::graph_tools::graph_visualize(), mrpt::slam::CPointsMap::insertPoint(), mrpt::poses::SE_traits< 2 >::ln(), mrpt::slam::CColouredPointsMap::setPoint(), mrpt::slam::CPointsMap::setPoint(), mrpt::poses::CPoseOrPoint< CPoint3D >::sqrDistanceTo(), mrpt::graphs::detail::graph_ops< graph_t >::write_EDGE_line(), and mrpt::graphs::detail::graph_ops< graph_t >::write_VERTEX_line().
|
inlineinherited |
Definition at line 138 of file CPoseOrPoint.h.
|
inlineinherited |
| v | Set X coord. |
Definition at line 141 of file CPoseOrPoint.h.
|
inlineinherited |
| v | X+=v |
Definition at line 144 of file CPoseOrPoint.h.
|
inlineinherited |
< Get Y coord.
Definition at line 136 of file CPoseOrPoint.h.
Referenced by mrpt::poses::CPoint< CPoint3D >::asString(), mrpt::graphs::detail::graph_ops< graph_t >::auxEuclid2Dist(), mrpt::poses::CPoint2D::CPoint2D(), mrpt::poses::CPoint3D::CPoint3D(), mrpt::poses::SE_traits< 2 >::exp(), mrpt::poses::CPoint< CPoint3D >::getHomogeneousMatrix(), mrpt::poses::CRobot2DPoseEstimator::getLatestRobotPose(), mrpt::slam::CPointsMap::getPoint(), mrpt::opengl::graph_tools::graph_visualize(), mrpt::slam::CPointsMap::insertPoint(), mrpt::poses::SE_traits< 2 >::ln(), mrpt::poses::operator<(), mrpt::slam::CColouredPointsMap::setPoint(), mrpt::slam::CPointsMap::setPoint(), mrpt::poses::CPoseOrPoint< CPoint3D >::sqrDistanceTo(), mrpt::graphs::detail::graph_ops< graph_t >::write_EDGE_line(), and mrpt::graphs::detail::graph_ops< graph_t >::write_VERTEX_line().
|
inlineinherited |
Definition at line 139 of file CPoseOrPoint.h.
|
inlineinherited |
| v | Set Y coord. |
Definition at line 142 of file CPoseOrPoint.h.
|
inlineinherited |
| v | Y+=v |
Definition at line 145 of file CPoseOrPoint.h.
| Page generated by Doxygen 1.8.3 for MRPT 0.9.6 SVN: at Fri Feb 15 22:05:02 EST 2013 |