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

Detailed Description

3D segment, consisting of two points.

See also
TSegment2D,TLine3D,TPlane,TPolygon3D,TPoint3D

Definition at line 655 of file lightweight_geom_data.h.

#include <mrpt/math/lightweight_geom_data.h>

Public Member Functions

double length () const
 Segment length. More...
 
double distance (const TPoint3D &point) const
 Distance to point. More...
 
double distance (const TSegment3D &segment) const
 Distance to another segment. More...
 
bool contains (const TPoint3D &point) const
 Check whether a point is inside the segment. More...
 
TPoint3Doperator[] (size_t i)
 Access to points using operator[0-1]. More...
 
const TPoint3Doperator[] (size_t i) const
 Access to points using operator[0-1]. More...
 
void generate2DObject (TSegment2D &s) const
 Projection into 2D space, discarding the z. More...
 
void getCenter (TPoint3D &p) const
 Segment's central point. More...
 
 TSegment3D (const TPoint3D &p1, const TPoint3D &p2)
 Constructor from both points. More...
 
 TSegment3D ()
 Fast default constructor. More...
 
 TSegment3D (const TSegment2D &s)
 Constructor from 2D object. More...
 
bool operator< (const TSegment3D &s) const
 

Public Attributes

TPoint3D point1
 Origin point. More...
 
TPoint3D point2
 Destiny point. More...
 

Constructor & Destructor Documentation

◆ TSegment3D() [1/3]

mrpt::math::TSegment3D::TSegment3D ( const TPoint3D p1,
const TPoint3D p2 
)
inline

Constructor from both points.

Definition at line 702 of file lightweight_geom_data.h.

◆ TSegment3D() [2/3]

mrpt::math::TSegment3D::TSegment3D ( )
inline

Fast default constructor.

Initializes to garbage.

Definition at line 706 of file lightweight_geom_data.h.

◆ TSegment3D() [3/3]

mrpt::math::TSegment3D::TSegment3D ( const TSegment2D s)
inlineexplicit

Constructor from 2D object.

Sets the z to zero.

Definition at line 710 of file lightweight_geom_data.h.

Member Function Documentation

◆ contains()

bool mrpt::math::TSegment3D::contains ( const TPoint3D point) const

Check whether a point is inside the segment.

Definition at line 393 of file lightweight_geom_data.cpp.

References mrpt::math::distance(), mrpt::math::geometryEpsilon, point1, and point2.

Referenced by mrpt::math::intersect().

◆ distance() [1/2]

double mrpt::math::TSegment3D::distance ( const TPoint3D point) const

Distance to point.

Definition at line 318 of file lightweight_geom_data.cpp.

References mrpt::math::distance(), min, point1, point2, and mrpt::math::TLine3D.

◆ distance() [2/2]

double mrpt::math::TSegment3D::distance ( const TSegment3D segment) const

Distance to another segment.

Definition at line 321 of file lightweight_geom_data.cpp.

References mrpt::math::TPoint3D::getAsVector(), point1, and point2.

◆ generate2DObject()

void mrpt::math::TSegment3D::generate2DObject ( TSegment2D s) const
inline

Projection into 2D space, discarding the z.

Definition at line 688 of file lightweight_geom_data.h.

◆ getCenter()

void mrpt::math::TSegment3D::getCenter ( TPoint3D p) const
inline

Segment's central point.

Definition at line 694 of file lightweight_geom_data.h.

References mrpt::math::TPoint3D::x, mrpt::math::TPoint3D::y, and mrpt::math::TPoint3D::z.

Referenced by mrpt::math::getSegmentBisector().

◆ length()

double mrpt::math::TSegment3D::length ( ) const

Segment length.

Definition at line 315 of file lightweight_geom_data.cpp.

References mrpt::math::distance(), point1, and point2.

◆ operator<()

bool mrpt::math::TSegment3D::operator< ( const TSegment3D s) const

Definition at line 398 of file lightweight_geom_data.cpp.

References point1, and point2.

◆ operator[]() [1/2]

TPoint3D& mrpt::math::TSegment3D::operator[] ( size_t  i)
inline

Access to points using operator[0-1].

Definition at line 682 of file lightweight_geom_data.h.

◆ operator[]() [2/2]

const TPoint3D& mrpt::math::TSegment3D::operator[] ( size_t  i) const
inline

Access to points using operator[0-1].

Definition at line 684 of file lightweight_geom_data.h.

Member Data Documentation

◆ point1

TPoint3D mrpt::math::TSegment3D::point1

◆ point2

TPoint3D mrpt::math::TSegment3D::point2



Page generated by Doxygen 1.8.14 for MRPT 1.5.6 Git: 4c65e8431 Tue Apr 24 08:18:17 2018 +0200 at lun oct 28 01:35:26 CET 2019