#include <mrpt/opengl/CAngularObservationMesh.h>
Classes | |
class | FTrace1D |
class | FTrace2D |
struct | TFloatRange |
Public Member Functions | |
bool | isWireframe () const |
void | setWireframe (bool enabled) |
bool | isTransparencyEnabled () const |
void | enableTransparency (bool enabled=true) |
virtual void | render () const |
This virtual method in the base class performs common tasks like coordinates transformation,color,. | |
virtual bool | traceRay (const mrpt::poses::CPose3D &o, float &dist) const |
Simulation of ray-trace, given a pose. | |
void | setPitchBounds (const float initial, const float final) |
void | setPitchBounds (const std::vector< float > bounds) |
void | getPitchBounds (float &initial, float &final) const |
void | getPitchBounds (std::vector< float > &bounds) const |
void | getScanSet (std::vector< CObservation2DRangeScan > &scans) const |
bool | setScanSet (const std::vector< CObservation2DRangeScan > scans) |
void | generateSetOfTriangles (CSetOfTrianglesPtr &res) const |
void | generatePointCloud (CPointsMap *out_map) const |
Returns the scanned points as a 3D point cloud. The target pointmap must be passed as a pointer to allow the use of any derived class. | |
void | getTracedRays (CSetOfLinesPtr &res) const |
void | getUntracedRays (CSetOfLinesPtr &res, float dist) const |
Static Public Member Functions | |
static CAngularObservationMeshPtr | Create () |
template<class T > | |
static void | trace2DSetOfRays (const T &e, const CPose3D &initial, CAngularObservationMeshPtr &caom, const TFloatRange &pitchs, const TFloatRange &yaws) |
template<class T > | |
static void | trace1DSetOfRays (const T &e, const CPose3D &initial, CObservation2DRangeScan &obs, const TFloatRange &yaws) |
Protected Member Functions | |
void | updateMesh () const |
virtual | ~CAngularObservationMesh () |
void | addTriangle (const CPoint3D &p1, const CPoint3D &p2, const CPoint3D &p3) const |
CAngularObservationMesh () | |
Protected Attributes | |
std::vector < CSetOfTriangles::TTriangle > | triangles |
bool | mWireframe |
bool | meshUpToDate |
bool | mEnableTransparency |
mrpt::math::CMatrixTemplate < CPoint3D > | actualMesh |
mrpt::math::CMatrixB | validityMatrix |
vector_serializable< float > | pitchBounds |
vector_serializable < CObservation2DRangeScan > | scanSet |
Each element of this set is a single scan through the yaw, given a specific pitch. Each scan has a CPose3D identifying the origin of the scan, which ideally is the same for every one of them.
Definition at line 50 of file CAngularObservationMesh.h.
virtual mrpt::opengl::CAngularObservationMesh::~CAngularObservationMesh | ( | ) | [inline, protected, virtual] |
Definition at line 151 of file CAngularObservationMesh.h.
mrpt::opengl::CAngularObservationMesh::CAngularObservationMesh | ( | ) | [inline, protected] |
Definition at line 161 of file CAngularObservationMesh.h.
void mrpt::opengl::CAngularObservationMesh::addTriangle | ( | const CPoint3D & | p1, | |
const CPoint3D & | p2, | |||
const CPoint3D & | p3 | |||
) | const [protected] |
static CAngularObservationMeshPtr mrpt::opengl::CAngularObservationMesh::Create | ( | ) | [inline, static] |
Definition at line 183 of file CAngularObservationMesh.h.
References mrpt::opengl::CAngularObservationMesh.
void mrpt::opengl::CAngularObservationMesh::enableTransparency | ( | bool | enabled = true |
) | [inline] |
Definition at line 172 of file CAngularObservationMesh.h.
void mrpt::opengl::CAngularObservationMesh::generatePointCloud | ( | CPointsMap * | out_map | ) | const |
Returns the scanned points as a 3D point cloud. The target pointmap must be passed as a pointer to allow the use of any derived class.
void mrpt::opengl::CAngularObservationMesh::generateSetOfTriangles | ( | CSetOfTrianglesPtr & | res | ) | const |
void mrpt::opengl::CAngularObservationMesh::getPitchBounds | ( | std::vector< float > & | bounds | ) | const |
void mrpt::opengl::CAngularObservationMesh::getPitchBounds | ( | float & | initial, | |
float & | final | |||
) | const |
void mrpt::opengl::CAngularObservationMesh::getScanSet | ( | std::vector< CObservation2DRangeScan > & | scans | ) | const |
void mrpt::opengl::CAngularObservationMesh::getTracedRays | ( | CSetOfLinesPtr & | res | ) | const |
void mrpt::opengl::CAngularObservationMesh::getUntracedRays | ( | CSetOfLinesPtr & | res, | |
float | dist | |||
) | const |
bool mrpt::opengl::CAngularObservationMesh::isTransparencyEnabled | ( | ) | const [inline] |
Definition at line 169 of file CAngularObservationMesh.h.
bool mrpt::opengl::CAngularObservationMesh::isWireframe | ( | ) | const [inline] |
Definition at line 163 of file CAngularObservationMesh.h.
virtual void mrpt::opengl::CAngularObservationMesh::render | ( | ) | const [virtual] |
This virtual method in the base class performs common tasks like coordinates transformation,color,.
..
Implements mrpt::opengl::CRenderizable.
void mrpt::opengl::CAngularObservationMesh::setPitchBounds | ( | const std::vector< float > | bounds | ) |
void mrpt::opengl::CAngularObservationMesh::setPitchBounds | ( | const float | initial, | |
const float | final | |||
) |
bool mrpt::opengl::CAngularObservationMesh::setScanSet | ( | const std::vector< CObservation2DRangeScan > | scans | ) |
void mrpt::opengl::CAngularObservationMesh::setWireframe | ( | bool | enabled | ) | [inline] |
Definition at line 166 of file CAngularObservationMesh.h.
static void mrpt::opengl::CAngularObservationMesh::trace1DSetOfRays | ( | const T & | e, | |
const CPose3D & | initial, | |||
CObservation2DRangeScan & | obs, | |||
const TFloatRange & | yaws | |||
) | [inline, static] |
Definition at line 259 of file CAngularObservationMesh.h.
References mrpt::opengl::CAngularObservationMesh::CAngularObservationMesh::TFloatRange::amount(), mrpt::opengl::CAngularObservationMesh::CAngularObservationMesh::TFloatRange::aperture(), mrpt::slam::CObservation2DRangeScan::aperture, mrpt::slam::CObservation2DRangeScan::deltaPitch, mrpt::slam::CObservation2DRangeScan::maxRange, mrpt::opengl::CAngularObservationMesh::CAngularObservationMesh::TFloatRange::negToPos(), mrpt::slam::CObservation2DRangeScan::rightToLeft, mrpt::slam::CObservation2DRangeScan::scan, mrpt::slam::CObservation2DRangeScan::sensorPose, mrpt::slam::CObservation2DRangeScan::validRange, and mrpt::opengl::CAngularObservationMesh::CAngularObservationMesh::TFloatRange::values().
static void mrpt::opengl::CAngularObservationMesh::trace2DSetOfRays | ( | const T & | e, | |
const CPose3D & | initial, | |||
CAngularObservationMeshPtr & | caom, | |||
const TFloatRange & | pitchs, | |||
const TFloatRange & | yaws | |||
) | [inline, static] |
Definition at line 247 of file CAngularObservationMesh.h.
References mrpt::opengl::CAngularObservationMesh::CAngularObservationMesh::TFloatRange::values().
virtual bool mrpt::opengl::CAngularObservationMesh::traceRay | ( | const mrpt::poses::CPose3D & | o, | |
float & | dist | |||
) | const [virtual] |
Simulation of ray-trace, given a pose.
Returns true if the ray effectively collisions with the object (returning the distance to the origin of the ray in "dist"), or false in other case. "dist" variable yields undefined behaviour when false is returned
Reimplemented from mrpt::opengl::CRenderizable.
void mrpt::opengl::CAngularObservationMesh::updateMesh | ( | ) | const [protected] |
mrpt::math::CMatrixTemplate<CPoint3D> mrpt::opengl::CAngularObservationMesh::actualMesh [mutable, protected] |
Definition at line 157 of file CAngularObservationMesh.h.
bool mrpt::opengl::CAngularObservationMesh::mEnableTransparency [protected] |
Definition at line 156 of file CAngularObservationMesh.h.
bool mrpt::opengl::CAngularObservationMesh::meshUpToDate [mutable, protected] |
Definition at line 155 of file CAngularObservationMesh.h.
bool mrpt::opengl::CAngularObservationMesh::mWireframe [protected] |
Definition at line 154 of file CAngularObservationMesh.h.
vector_serializable<float> mrpt::opengl::CAngularObservationMesh::pitchBounds [protected] |
Definition at line 159 of file CAngularObservationMesh.h.
vector_serializable<CObservation2DRangeScan> mrpt::opengl::CAngularObservationMesh::scanSet [protected] |
Definition at line 160 of file CAngularObservationMesh.h.
std::vector<CSetOfTriangles::TTriangle> mrpt::opengl::CAngularObservationMesh::triangles [mutable, protected] |
Definition at line 152 of file CAngularObservationMesh.h.
mrpt::math::CMatrixB mrpt::opengl::CAngularObservationMesh::validityMatrix [mutable, protected] |
Definition at line 158 of file CAngularObservationMesh.h.
Page generated by Doxygen 1.5.8 for MRPT 0.6.5 SVN: at Thu Feb 26 02:07:47 EST 2009 |