#include <Karto.h>
Public Member Functions | |
kt_double | GetAngularResolution () const |
kt_double | GetMaximumAngle () const |
kt_double | GetMaximumRange () const |
kt_double | GetMinimumAngle () const |
kt_double | GetMinimumRange () const |
kt_int32u | GetNumberOfRangeReadings () const |
const PointVectorDouble | GetPointReadings (LocalizedRangeScan *pLocalizedRangeScan, CoordinateConverter *pCoordinateConverter, kt_bool ignoreThresholdPoints=true, kt_bool flipY=false) const |
kt_double | GetRangeThreshold () const |
kt_int32s | GetType () |
void | SetAngularResolution (kt_double angularResolution) |
void | SetMaximumAngle (kt_double maximumAngle) |
void | SetMaximumRange (kt_double maximumRange) |
void | SetMinimumAngle (kt_double minimumAngle) |
void | SetMinimumRange (kt_double minimumRange) |
void | SetRangeThreshold (kt_double rangeThreshold) |
virtual kt_bool | Validate () |
virtual kt_bool | Validate (SensorData *pSensorData) |
virtual | ~LaserRangeFinder () |
Public Member Functions inherited from karto::Sensor | |
const Pose2 & | GetOffsetPose () const |
void | SetOffsetPose (const Pose2 &rPose) |
virtual | ~Sensor () |
Public Member Functions inherited from karto::Object | |
virtual const char * | GetClassName () const =0 |
const Name & | GetName () const |
virtual kt_objecttype | GetObjectType () const =0 |
AbstractParameter * | GetParameter (const std::string &rName) const |
virtual ParameterManager * | GetParameterManager () |
const ParameterVector & | GetParameters () const |
Object () | |
Object (const Name &rName) | |
template<typename T > | |
void | SetParameter (const std::string &rName, T value) |
virtual | ~Object () |
Static Public Member Functions | |
static LaserRangeFinder * | CreateLaserRangeFinder (LaserRangeFinderType type, const Name &rName) |
Private Member Functions | |
LaserRangeFinder (const Name &rName) | |
LaserRangeFinder (const LaserRangeFinder &) | |
const LaserRangeFinder & | operator= (const LaserRangeFinder &) |
void | Update () |
Private Attributes | |
kt_int32u | m_NumberOfRangeReadings |
Parameter< kt_double > * | m_pAngularResolution |
Parameter< kt_double > * | m_pMaximumAngle |
Parameter< kt_double > * | m_pMaximumRange |
Parameter< kt_double > * | m_pMinimumAngle |
Parameter< kt_double > * | m_pMinimumRange |
Parameter< kt_double > * | m_pRangeThreshold |
ParameterEnum * | m_pType |
Additional Inherited Members | |
Protected Member Functions inherited from karto::Sensor | |
Sensor (const Name &rName) | |
Protected Member Functions inherited from karto::NonCopyable | |
NonCopyable () | |
virtual | ~NonCopyable () |
The LaserRangeFinder defines a laser sensor that provides the pose offset position of a localized range scan relative to the robot. The user can set an offset pose for the sensor relative to the robot coordinate system. If no value is provided by the user, the sensor is set to be at the origin of the robot coordinate system. The LaserRangeFinder contains parameters for physical laser sensor used by the mapper for scan matching Also contains information about the maximum range of the sensor and provides a threshold for limiting the range of readings. The optimal value for the range threshold depends on the angular resolution of the scan and the desired map resolution. RangeThreshold should be set as large as possible while still providing "solid" coverage between consecutive range readings. The diagram below illustrates the relationship between map resolution and the range threshold.
|
inlinevirtual |
|
inlineprivate |
Constructs a LaserRangeFinder object with given ID
|
private |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
const PointVectorDouble karto::LaserRangeFinder::GetPointReadings | ( | LocalizedRangeScan * | pLocalizedRangeScan, |
CoordinateConverter * | pCoordinateConverter, | ||
kt_bool | ignoreThresholdPoints = true , |
||
kt_bool | flipY = false |
||
) | const |
|
inline |
|
inline |
|
private |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inlinevirtual |
|
virtual |
Validates sensor data
pSensorData | sensor data |
Implements karto::Sensor.
|
private |
|
private |