Construct with the dimensions of the scan polygon, and then repeatedly call unseenProportion. More...
#include <scan_intersection.h>
Public Member Functions | |
bool | contains (const btTransform &scan, const btVector3 &pt) const |
Does scan polygon given scan pose scan contain point pt? | |
ScanIntersection (const ScanIntersection &i) | |
ScanIntersection (std::vector< btVector3 > poly, unsigned grid_size=100) | |
Constructor precomputes some things given the polygon. | |
double | unseenProportion (const btTransform &scan, const std::vector< btTransform > &ref_scans) const |
Private Attributes | |
btVector3 | center_ |
float | circumradius2_ |
std::vector< btVector3 > | grid_ |
float | inradius2_ |
std::vector< btVector3 > | poly_ |
Construct with the dimensions of the scan polygon, and then repeatedly call unseenProportion.
Definition at line 51 of file scan_intersection.h.
laser_slam::ScanIntersection::ScanIntersection | ( | std::vector< btVector3 > | poly, | |
unsigned | grid_size = 100 | |||
) |
Constructor precomputes some things given the polygon.
grid_size | The approximate number of points in the grid used for computing the Monte Carlo estimate of the intersection area |
laser_slam::ScanIntersection::ScanIntersection | ( | const ScanIntersection & | i | ) |
Definition at line 88 of file scan_intersection.cpp.
bool laser_slam::ScanIntersection::contains | ( | const btTransform & | scan, | |
const btVector3 & | pt | |||
) | const [inline] |
Does scan polygon given scan pose scan contain point pt?
Definition at line 71 of file scan_intersection.h.
double laser_slam::ScanIntersection::unseenProportion | ( | const btTransform & | scan, | |
const std::vector< btTransform > & | ref_scans | |||
) | const |
Number | between 0 and 1. 1 means new scan is totally nonintersecting with existing ones and 0 means it's totally covered. |
btVector3 laser_slam::ScanIntersection::center_ [private] |
Definition at line 101 of file scan_intersection.h.
float laser_slam::ScanIntersection::circumradius2_ [private] |
Definition at line 102 of file scan_intersection.h.
std::vector<btVector3> laser_slam::ScanIntersection::grid_ [private] |
Definition at line 100 of file scan_intersection.h.
float laser_slam::ScanIntersection::inradius2_ [private] |
Definition at line 102 of file scan_intersection.h.
std::vector<btVector3> laser_slam::ScanIntersection::poly_ [private] |
Definition at line 99 of file scan_intersection.h.