Standard type for storing any lightweight 2D type.
Do not inherit from this class.
#include <mrpt/math/lightweight_geom_data.h>
Public Member Functions | |
| TObject2D (const TPoint2D &p) | |
| Implicit constructor from point. | |
| TObject2D (const TSegment2D &s) | |
| Implicit constructor from segment. | |
| TObject2D (const TLine2D &r) | |
| Implicit constructor from line. | |
| TObject2D (const TPolygon2D &p) | |
| Implicit constructor from polygon. | |
| TObject2D () | |
| Implicit constructor from polygon. | |
| ~TObject2D () | |
| Object destruction. | |
| bool | isPoint () const |
| Checks whether content is a point. | |
| bool | isSegment () const |
| Checks whether content is a segment. | |
| bool | isLine () const |
| Checks whether content is a line. | |
| bool | isPolygon () const |
| Checks whether content is a polygon. | |
| unsigned char | getType () const |
| Gets content type. | |
| bool | getPoint (TPoint2D &p) const |
| Gets the content as a point, returning false if the type is inadequate. | |
| bool | getSegment (TSegment2D &s) const |
| Gets the content as a segment, returning false if the type is inadequate. | |
| bool | getLine (TLine2D &r) const |
| Gets the content as a line, returning false if the type is inadequate. | |
| bool | getPolygon (TPolygon2D &p) const |
| Gets the content as a polygon, returning false if the type is inadequate. | |
| void | operator= (const TObject2D &obj) |
| Assign another TObject2D. | |
| void | operator= (const TPoint2D &p) |
| Assign a point to this object. | |
| void | operator= (const TSegment2D &s) |
| Assign a segment to this object. | |
| void | operator= (const TLine2D &l) |
| Assign a line to this object. | |
| void | operator= (const TPolygon2D &p) |
| Assign a polygon to this object. | |
| void | generate3DObject (TObject3D &obj) const |
| Project into 3D space. | |
| TObject2D (const TObject2D &obj) | |
| Constructor from another TObject2D. | |
Static Public Member Functions | |
| static void | getPoints (const std::vector< TObject2D > &objs, std::vector< TPoint2D > &pnts) |
| Static method to retrieve all the points in a vector of TObject2D. | |
| static void | getSegments (const std::vector< TObject2D > &objs, std::vector< TSegment2D > &sgms) |
| Static method to retrieve all the segments in a vector of TObject2D. | |
| static void | getLines (const std::vector< TObject2D > &objs, std::vector< TLine2D > &lins) |
| Static method to retrieve all the lines in a vector of TObject2D. | |
| static void | getPolygons (const std::vector< TObject2D > &objs, std::vector< TPolygon2D > &polys) |
| Static method to retrieve all the polygons in a vector of TObject2D. | |
| static void | getPoints (const std::vector< TObject2D > &objs, std::vector< TPoint2D > &pnts, std::vector< TObject2D > &remainder) |
| Static method to retrieve all the points in a vector of TObject2D, returning the remainder objects in another parameter. | |
| static void | getSegments (const std::vector< TObject2D > &objs, std::vector< TSegment2D > &sgms, std::vector< TObject2D > &remainder) |
| Static method to retrieve all the segments in a vector of TObject2D, returning the remainder objects in another parameter. | |
| static void | getLines (const std::vector< TObject2D > &objs, std::vector< TLine2D > &lins, std::vector< TObject2D > &remainder) |
| Static method to retrieve all the lines in a vector of TObject2D, returning the remainder objects in another parameter. | |
| static void | getPolygons (const std::vector< TObject2D > &objs, std::vector< TPolygon2D > &polys, std::vector< TObject2D > &remainder) |
| Static method to retrieve all the polygons in a vector of TObject2D, returning the remainder objects in another parameter. | |
Private Member Functions | |
| void | destroy () |
| Destroys the object, releasing the pointer to the content (if any). | |
Private Attributes | |
| unsigned char | type |
| Object type identifier. | |
| struct { | |
| TPoint2D point | |
| TSegment2D segment | |
| TLine2D line | |
| TPolygon2D * polygon | |
| } | data |
| Union type storing pointers to every allowed type. | |
| mrpt::math::TObject2D::TObject2D | ( | const TPoint2D & | p | ) | [inline] |
Implicit constructor from point.
Definition at line 1826 of file lightweight_geom_data.h.
| mrpt::math::TObject2D::TObject2D | ( | const TSegment2D & | s | ) | [inline] |
Implicit constructor from segment.
Definition at line 1832 of file lightweight_geom_data.h.
| mrpt::math::TObject2D::TObject2D | ( | const TLine2D & | r | ) | [inline] |
Implicit constructor from line.
Definition at line 1838 of file lightweight_geom_data.h.
| mrpt::math::TObject2D::TObject2D | ( | const TPolygon2D & | p | ) | [inline] |
Implicit constructor from polygon.
Definition at line 1844 of file lightweight_geom_data.h.
| mrpt::math::TObject2D::TObject2D | ( | ) | [inline] |
Implicit constructor from polygon.
Definition at line 1850 of file lightweight_geom_data.h.
| mrpt::math::TObject2D::~TObject2D | ( | ) | [inline] |
Object destruction.
Definition at line 1854 of file lightweight_geom_data.h.
| mrpt::math::TObject2D::TObject2D | ( | const TObject2D & | obj | ) | [inline] |
Constructor from another TObject2D.
Definition at line 1983 of file lightweight_geom_data.h.
| void mrpt::math::TObject2D::destroy | ( | ) | [inline, private] |
Destroys the object, releasing the pointer to the content (if any).
Definition at line 1818 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_POLYGON, and mrpt::math::GEOMETRIC_TYPE_UNDEFINED.
| void mrpt::math::TObject2D::generate3DObject | ( | TObject3D & | obj | ) | const |
Project into 3D space.
| bool mrpt::math::TObject2D::getLine | ( | TLine2D & | r | ) | const [inline] |
Gets the content as a line, returning false if the type is inadequate.
Definition at line 1908 of file lightweight_geom_data.h.
| static void mrpt::math::TObject2D::getLines | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TLine2D > & | lins | ||
| ) | [static] |
Static method to retrieve all the lines in a vector of TObject2D.
| static void mrpt::math::TObject2D::getLines | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TLine2D > & | lins, | ||
| std::vector< TObject2D > & | remainder | ||
| ) | [static] |
Static method to retrieve all the lines in a vector of TObject2D, returning the remainder objects in another parameter.
| bool mrpt::math::TObject2D::getPoint | ( | TPoint2D & | p | ) | const [inline] |
Gets the content as a point, returning false if the type is inadequate.
Definition at line 1890 of file lightweight_geom_data.h.
| static void mrpt::math::TObject2D::getPoints | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TPoint2D > & | pnts | ||
| ) | [static] |
Static method to retrieve all the points in a vector of TObject2D.
| static void mrpt::math::TObject2D::getPoints | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TPoint2D > & | pnts, | ||
| std::vector< TObject2D > & | remainder | ||
| ) | [static] |
Static method to retrieve all the points in a vector of TObject2D, returning the remainder objects in another parameter.
| bool mrpt::math::TObject2D::getPolygon | ( | TPolygon2D & | p | ) | const [inline] |
Gets the content as a polygon, returning false if the type is inadequate.
Definition at line 1917 of file lightweight_geom_data.h.
| static void mrpt::math::TObject2D::getPolygons | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TPolygon2D > & | polys | ||
| ) | [static] |
Static method to retrieve all the polygons in a vector of TObject2D.
| static void mrpt::math::TObject2D::getPolygons | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TPolygon2D > & | polys, | ||
| std::vector< TObject2D > & | remainder | ||
| ) | [static] |
Static method to retrieve all the polygons in a vector of TObject2D, returning the remainder objects in another parameter.
| bool mrpt::math::TObject2D::getSegment | ( | TSegment2D & | s | ) | const [inline] |
Gets the content as a segment, returning false if the type is inadequate.
Definition at line 1899 of file lightweight_geom_data.h.
| static void mrpt::math::TObject2D::getSegments | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TSegment2D > & | sgms | ||
| ) | [static] |
Static method to retrieve all the segments in a vector of TObject2D.
| static void mrpt::math::TObject2D::getSegments | ( | const std::vector< TObject2D > & | objs, |
| std::vector< TSegment2D > & | sgms, | ||
| std::vector< TObject2D > & | remainder | ||
| ) | [static] |
Static method to retrieve all the segments in a vector of TObject2D, returning the remainder objects in another parameter.
| unsigned char mrpt::math::TObject2D::getType | ( | ) | const [inline] |
Gets content type.
Definition at line 1884 of file lightweight_geom_data.h.
| bool mrpt::math::TObject2D::isLine | ( | ) | const [inline] |
Checks whether content is a line.
Definition at line 1872 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_LINE.
| bool mrpt::math::TObject2D::isPoint | ( | ) | const [inline] |
Checks whether content is a point.
Definition at line 1860 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_POINT.
| bool mrpt::math::TObject2D::isPolygon | ( | ) | const [inline] |
Checks whether content is a polygon.
Definition at line 1878 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_POLYGON.
| bool mrpt::math::TObject2D::isSegment | ( | ) | const [inline] |
Checks whether content is a segment.
Definition at line 1866 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_SEGMENT.
| void mrpt::math::TObject2D::operator= | ( | const TObject2D & | obj | ) | [inline] |
Assign another TObject2D.
Pointers are not shared.
Definition at line 1926 of file lightweight_geom_data.h.
References type, mrpt::math::GEOMETRIC_TYPE_POINT, data, point, mrpt::math::GEOMETRIC_TYPE_SEGMENT, segment, mrpt::math::GEOMETRIC_TYPE_LINE, line, mrpt::math::GEOMETRIC_TYPE_POLYGON, and polygon.
| void mrpt::math::TObject2D::operator= | ( | const TPoint2D & | p | ) | [inline] |
Assign a point to this object.
Definition at line 1947 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_POINT.
| void mrpt::math::TObject2D::operator= | ( | const TSegment2D & | s | ) | [inline] |
Assign a segment to this object.
Definition at line 1955 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_SEGMENT.
| void mrpt::math::TObject2D::operator= | ( | const TLine2D & | l | ) | [inline] |
Assign a line to this object.
Definition at line 1963 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_LINE.
| void mrpt::math::TObject2D::operator= | ( | const TPolygon2D & | p | ) | [inline] |
Assign a polygon to this object.
Definition at line 1971 of file lightweight_geom_data.h.
References mrpt::math::GEOMETRIC_TYPE_POLYGON.
struct { ... } mrpt::math::TObject2D::data [private] |
Union type storing pointers to every allowed type.
Referenced by operator=().
Definition at line 1812 of file lightweight_geom_data.h.
Referenced by operator=().
Definition at line 1810 of file lightweight_geom_data.h.
Referenced by operator=().
Definition at line 1813 of file lightweight_geom_data.h.
Referenced by operator=().
Definition at line 1811 of file lightweight_geom_data.h.
Referenced by operator=().
unsigned char mrpt::math::TObject2D::type [private] |
Object type identifier.
Definition at line 1805 of file lightweight_geom_data.h.
Referenced by operator=().
| Page generated by Doxygen 1.7.5 for MRPT 0.9.5 SVN: at Thu Oct 13 21:25:36 UTC 2011 |