3D segment, consisting of two points.
Definition at line 1044 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... | |
TPoint3D & | operator[] (size_t i) |
Access to points using operator[0-1]. More... | |
const TPoint3D & | operator[] (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 from both points.
Definition at line 1113 of file lightweight_geom_data.h.
|
inline |
Fast default constructor.
Initializes to garbage.
Definition at line 1119 of file lightweight_geom_data.h.
|
inlineexplicit |
Constructor from 2D object.
Sets the z to zero.
Definition at line 1123 of file lightweight_geom_data.h.
bool mrpt::math::TSegment3D::contains | ( | const TPoint3D & | point | ) | const |
Check whether a point is inside the segment.
Definition at line 644 of file lightweight_geom_data.cpp.
References mrpt::math::distance(), mrpt::math::getEpsilon(), point1, and point2.
Referenced by mrpt::math::intersect().
double mrpt::math::TSegment3D::distance | ( | const TPoint3D & | point | ) | const |
Distance to point.
Definition at line 557 of file lightweight_geom_data.cpp.
References mrpt::math::distance(), mrpt::math::TLine3D::distance(), min, point1, and point2.
double mrpt::math::TSegment3D::distance | ( | const TSegment3D & | segment | ) | const |
Distance to another segment.
Definition at line 563 of file lightweight_geom_data.cpp.
References mrpt::math::TPoint3D::getAsVector(), point1, and point2.
|
inline |
Projection into 2D space, discarding the z.
Definition at line 1100 of file lightweight_geom_data.h.
Segment's central point.
Definition at line 1104 of file lightweight_geom_data.h.
References point1, point2, mrpt::math::TPoint3D::x, mrpt::math::TPoint3D::y, and mrpt::math::TPoint3D::z.
Referenced by mrpt::math::getSegmentBisector().
double mrpt::math::TSegment3D::length | ( | ) | const |
Segment length.
Definition at line 556 of file lightweight_geom_data.cpp.
References mrpt::math::distance(), point1, and point2.
bool mrpt::math::TSegment3D::operator< | ( | const TSegment3D & | s | ) | const |
Definition at line 651 of file lightweight_geom_data.cpp.
|
inline |
Access to points using operator[0-1].
Definition at line 1072 of file lightweight_geom_data.h.
|
inline |
Access to points using operator[0-1].
Definition at line 1085 of file lightweight_geom_data.h.
TPoint3D mrpt::math::TSegment3D::point1 |
Origin point.
Definition at line 1050 of file lightweight_geom_data.h.
Referenced by contains(), mrpt::math::TPlane::contains(), distance(), getCenter(), mrpt::math::getSegmentBisector(), length(), mrpt::math::operator!=(), operator<(), mrpt::math::operator==(), operator[](), and mrpt::math::project3D().
TPoint3D mrpt::math::TSegment3D::point2 |
Destiny point.
Definition at line 1054 of file lightweight_geom_data.h.
Referenced by contains(), mrpt::math::TPlane::contains(), distance(), getCenter(), mrpt::math::getSegmentBisector(), length(), mrpt::math::operator!=(), operator<(), mrpt::math::operator==(), operator[](), and mrpt::math::project3D().
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 |