AURobotServers
4
|
#include <ulaserpoint.h>
Public Member Functions | |
UPassQual | getQ () |
bool | isValid () |
void | setPosRA (double range, double angle, double laserTilt, double sensorHeight, bool rngValid) |
void | setPosXYZ (double x, double y, double z, double rng, bool rngValid) |
void | setQ (UPassQual value) |
ULaserPoint () | |
~ULaserPoint () | |
Public Attributes | |
double | distLeft |
double | distLeftPkt |
double | distRight |
double | distRightPkt |
UPassQual | passQ |
UPosition | pos |
double | range |
bool | rangeValid |
double | tilt |
double | varL |
U2Dline | varLine |
int | varToL |
Class that holds one laser scanner measurement point and the classification category
ULaserPoint::~ULaserPoint | ( | ) |
Constructor
|
inline |
Get passable quality - one of PQ_EASY, PQ_ROUGH, PQ_NOT, ...
References passQ.
Referenced by ULaserScan::findNearObstacles(), and ULaserScan::getQ().
|
inline |
Is the laser range valid - i.e. not dazzeled and not morrored too far away
Referenced by ULaserScan::countValidPoints(), ULaserObst::findEdgeObstacle(), ULaserScan::findNearObstacles(), UResPassable::makePassableIntervals2(), and ULaserScan::setVariance().
void ULaserPoint::setPosRA | ( | double | range, |
double | angle, | ||
double | laserTilt, | ||
double | sensorHeight, | ||
bool | rngValid | ||
) |
Set laser point from basic information. angle is in radians and 0.0 is forward, and positive is CCV. LaserTilt is in radians and negative value relative to horizontal. range is in meter, sensor height in meter. Sets set position relative to sensor position but adjusted using sensor tilt (Phi - around Y-axis) and height only.
References pos, range, rangeValid, and UPosition::set().
Referenced by setPosXYZ().
|
inline |
Set measurement in known koordinates.
References pos, range, rangeValid, UPosition::set(), and setPosRA().
|
inline |
Set passable quality - one of PQ_EASY, PQ_ROUGH, PQ_NOT ...
References passQ.
Referenced by UResPassable::findTopOfRoad(), and ULaserScan::setQ().
double ULaserPoint::distLeft |
Signed distance from fittet line of (last valid) left-most position (varToL)
Referenced by UResPassable::makePassableIntervals2(), and ULaserScan::setVariance().
double ULaserPoint::distLeftPkt |
distance between last two points in interval on the left side
Referenced by ULaserScan::setVariance().
double ULaserPoint::distRight |
Signed distance from fittet line of (last valid) right-most position (this)
Referenced by UResPassable::makePassableIntervals2(), and ULaserScan::setVariance().
double ULaserPoint::distRightPkt |
Distance between this point and the previous (to the right)
Referenced by ULaserScan::setVariance().
UPassQual ULaserPoint::passQ |
Passage quality
Referenced by ULaserObst::findEdgeObstacle(), getQ(), UFunctionPassable::sendFullScan(), setQ(), and ULaserPoint().
UPosition ULaserPoint::pos |
3D laser measurement point
Referenced by ULaserObst::findEdgeObstacle(), ULaserScan::getLineSegmentFit(), ULaserScan::getPos(), UResPassable::makePassableIntervals2(), UFunctionPassable::sendFullScan(), setPosRA(), setPosXYZ(), and ULaserScan::setVariance().
double ULaserPoint::range |
Original laser range
Referenced by ULaserScan::findNearObstacles(), ULaserScan::getLineSegmentFit(), ULaserScan::getRange(), UFunctionPassable::sendFullScan(), setPosRA(), setPosXYZ(), and ULaserScan::setVariance().
bool ULaserPoint::rangeValid |
Is range measurement valid
Referenced by setPosRA(), and setPosXYZ().
double ULaserPoint::tilt |
Curve tilt in degrees, set from edge points. NB! set from peacewise line fit, and line-fit is not valid close top 90 deg.
Referenced by UResPassable::makePassableIntervals2(), UFunctionPassable::sendFullScan(), and ULaserScan::setVariance().
double ULaserPoint::varL |
Variance in left neighborhood
Referenced by UResPassable::findTopOfRoad(), ULaserScan::getVarLeft(), ULaserScan::getVarRight(), UResPassable::makePassableIntervals2(), UFunctionPassable::sendFullScan(), and ULaserScan::setVariance().
U2Dline ULaserPoint::varLine |
Variance around here (fixed mask) Line fit for points to and including 'varToL'
Referenced by ULaserScan::setVariance().
int ULaserPoint::varToL |
variance is calculated to this right point (max-min range measurements are not used)
Referenced by ULaserScan::getRight(), ULaserScan::getVarRight(), UResPassable::makePassableIntervals2(), and ULaserScan::setVariance().