MRPT logo

mrpt::opengl::CAngularObservationMesh Class Reference

A mesh built from a set of 2D laser scan observations. More...

#include <mrpt/opengl/CAngularObservationMesh.h>

Inheritance diagram for mrpt::opengl::CAngularObservationMesh:

mrpt::opengl::CRenderizable mrpt::utils::CSerializable

List of all members.

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


Detailed Description

A mesh built from a set of 2D laser scan observations.

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.


Constructor & Destructor Documentation

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.


Member Function Documentation

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.

template<class T >
static void mrpt::opengl::CAngularObservationMesh::trace1DSetOfRays ( const T &  e,
const CPose3D initial,
CObservation2DRangeScan obs,
const TFloatRange yaws 
) [inline, static]

template<class T >
static void mrpt::opengl::CAngularObservationMesh::trace2DSetOfRays ( const T &  e,
const CPose3D initial,
CAngularObservationMeshPtr &  caom,
const TFloatRange pitchs,
const TFloatRange yaws 
) [inline, static]

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]


Member Data Documentation

Definition at line 157 of file CAngularObservationMesh.h.

Definition at line 156 of file CAngularObservationMesh.h.

Definition at line 155 of file CAngularObservationMesh.h.

Definition at line 154 of file CAngularObservationMesh.h.

Definition at line 159 of file CAngularObservationMesh.h.

Definition at line 160 of file CAngularObservationMesh.h.

Definition at line 152 of file CAngularObservationMesh.h.

Definition at line 158 of file CAngularObservationMesh.h.




Page generated by Doxygen 1.5.7.1 for MRPT 0.6.5 SVN: at Mon Feb 23 13:24:51 EST 2009