template struct mrpt::math::TPoint2D_¶
Base template for TPoint2D and TPoint2Df.
Forward declarations of all mrpt::math classes related to poses and points.
#include <mrpt/math/TPoint2D.h> template <typename T> struct TPoint2D_: public mrpt::math::TPoseOrPoint, public mrpt::math::TPoint2D_data, public mrpt::math::internal::ProvideStaticResize { // enums enum { static_size = 2, }; // fields T x; // construction TPoint2D_(); TPoint2D_(T xx, T yy); template <typename U> TPoint2D_(const TPoint2D_data<U>& p); template <typename U> TPoint2D_(const mrpt::math::CMatrixFixed<U, 2, 1>& m); TPoint2D_(const TPose2D& p); TPoint2D_(const TPoint3D_<T>& p); TPoint2D_(const TPose3D& p); // methods template <typename U> TPoint2D_<U> cast() const; T& operator [] (size_t i); constexpr T operator [] (size_t i) const; template <typename U> void asVector(std::vector<U>& v) const; bool operator < (const TPoint2D_& p) const; TPoint2D_& operator += (const TPoint2D_& p); TPoint2D_& operator -= (const TPoint2D_& p); TPoint2D_& operator *= (T d); TPoint2D_& operator/= (T d); constexpr TPoint2D_ operator + (const TPoint2D_& p) const; constexpr TPoint2D_ operator - (const TPoint2D_& p) const; constexpr TPoint2D_ operator * (T d) const; constexpr TPoint2D_ operator/ (T d) const; void asString(std::string& s) const; std::string asString() const; void fromString(const std::string& s); T sqrNorm() const; T norm() const; static TPoint2D_ FromString(const std::string& s); };
Construction¶
TPoint2D_()
Default constructor.
Initializes to zeros
TPoint2D_(T xx, T yy)
Constructor from coordinates.
template <typename U> TPoint2D_(const TPoint2D_data<U>& p)
Explicit constructor from coordinates.
template <typename U> TPoint2D_(const mrpt::math::CMatrixFixed<U, 2, 1>& m)
Constructor from column vector.
TPoint2D_(const TPose2D& p)
Constructor from TPose2D, discarding phi.
See also:
TPoint2D_(const TPoint3D_<T>& p)
Constructor from TPoint3D, discarding z.
See also:
TPoint2D_(const TPose3D& p)
Constructor from TPose3D, discarding z and the angular coordinates.
See also:
Methods¶
template <typename U> TPoint2D_<U> cast() const
Return a copy of this object using type U for coordinates.
T& operator [] (size_t i)
Coordinate access using operator[].
Order: x,y
constexpr T operator [] (size_t i) const
Coordinate access using operator[].
Order: x,y
template <typename U> void asVector(std::vector<U>& v) const
Transformation into vector.
void asString(std::string& s) const
Returns a human-readable textual representation of the object (eg: “[0.02 1.04]” )
See also:
void fromString(const std::string& s)
Set the current object value from a string generated by ‘asString’ (eg: “[0.02 1.04]” )
Parameters:
std::exception |
On invalid format |
See also:
T sqrNorm() const
Squared norm: |v|^2 = x^2+y^2.
T norm() const
Point norm: |v| = sqrt(x^2+y^2)