class mrpt::obs::CSinCosLookUpTableFor2DScans
A smart look-up-table (LUT) of sin/cos values for 2D laser scans.
Refer to the main method CSinCosLookUpTableFor2DScans::getSinCosForScan()
This class is used in mrpt::maps::CPointsMap
#include <mrpt/obs/CSinCosLookUpTableFor2DScans.h> class CSinCosLookUpTableFor2DScans { public: // structs struct TSinCosValues; // construction CSinCosLookUpTableFor2DScans(); CSinCosLookUpTableFor2DScans(const CSinCosLookUpTableFor2DScans&); // methods CSinCosLookUpTableFor2DScans& operator = (const CSinCosLookUpTableFor2DScans&); const TSinCosValues& getSinCosForScan(const CObservation2DRangeScan& scan) const; const TSinCosValues& getSinCosForScan(const T2DScanProperties& scan_prop) const; };
Construction
CSinCosLookUpTableFor2DScans(const CSinCosLookUpTableFor2DScans&)
Do NOT copy neither the cache nor the mutex.
Methods
const TSinCosValues& getSinCosForScan(const CObservation2DRangeScan& scan) const
Return two vectors with the cos and the sin of the angles for each of the rays in a scan, computing them only the first time and returning a cached copy the rest.
Usage:
CSinCosLookUpTableFor2DScans cache; ... const CSinCosLookUpTableFor2DScans::TSinCosValues & sincos_vals = cache.getSinCosForScan( scan );
const TSinCosValues& getSinCosForScan(const T2DScanProperties& scan_prop) const
Return two vectors with the cos and the sin of the angles for each of the rays in a scan, computing them only the first time and returning a cached copy the rest.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.