#include <ArLineFinder.h>
Public Member Functions | |
void | addToConfig (ArConfig *config, const char *section) |
ArLineFinder (ArRangeDevice *dev) | |
Constructor. | |
std::map< int, ArLineFinderSegment * > * | getLines (void) |
Finds the lines and returns a pointer to ArLineFinder's map of them. | |
void | getLinesAndSaveThem (void) |
Gets the lines, then prints them. | |
std::set< ArLineFinderSegment * > | getLinesAsSet () |
Finds the lines, then copies pointers to them them into a new set. | |
ArPose | getLinesTakenPose (void) |
Gets the position the last lines were gotten at. | |
std::map< int, ArPose > * | getNonLinePoints (void) |
Finds the lines, but then returns a pointer to ArLineFinder's map of the points that AREN'T in lines. | |
std::set< ArPose > | getNonLinePointsAsSet () |
Finds the lines, and then copies the points that AREN'T in the lines into a new set. | |
bool | getVerbose (void) |
Whether to print verbose information about line decisions. | |
void | saveLast (void) |
Logs all the points and lines from the last getLines. | |
void | setLineCombiningParams (int angleTol=30, int linesCloseEnough=75) |
Sets some parameters for line combining. | |
void | setLineCreationParams (int minLineLen=40, int minLinePoints=2) |
Sets some parameters for line creation. | |
void | setLineFilteringParams (int minPointsInLine=3, int minLineLength=75) |
Filter out lines smaller than this. | |
void | setLineValidParams (int maxDistFromLine=30, int maxAveDistFromLine=20) |
Don't let lines happen that have points not close to it. | |
void | setMaxDistBetweenPoints (int maxDistBetweenPoints=0) |
Sets the maximum distance between points that'll still be included in the same line. | |
void | setVerbose (bool verbose) |
Whether to print verbose information about line decisions. | |
virtual | ~ArLineFinder () |
Destructor. | |
Protected Member Functions | |
ArLineFinderSegment * | averageSegments (ArLineFinderSegment *line1, ArLineFinderSegment *line2) |
bool | combineLines () |
void | fillPointsFromLaser (void) |
void | filterLines () |
void | findLines (void) |
Protected Attributes | |
int | myCombiningAngleTol |
int | myCombiningLinesCloseEnough |
int | myFilteringMinLineLength |
int | myFilteringMinPointsInLine |
bool | myFlipped |
bool | myFlippedFound |
std::map< int, ArLineFinderSegment * > * | myLines |
int | myMakingMinLen |
int | myMakingMinPoints |
int | myMaxDistBetweenPoints |
std::map< int, ArPose > * | myNonLinePoints |
std::map< int, ArPose > * | myPoints |
ArPose | myPoseTaken |
bool | myPrinting |
ArRangeDevice * | myRangeDevice |
double | mySinMultiplier |
int | myValidMaxAveFromLine |
int | myValidMaxDistFromLine |
std::map<int, ArLineFinderSegment *>* ArLineFinder::getLines | ( | void | ) |
Finds the lines and returns a pointer to ArLineFinder's map of them.
Java and Python Wrappers: Not available in Java or Python wrapper libraries.
std::map<int, ArPose>* ArLineFinder::getNonLinePoints | ( | void | ) |
Finds the lines, but then returns a pointer to ArLineFinder's map of the points that AREN'T in lines.
Java and Python Wrappers: Not available in Java or Python wrapper libraries.