Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
AreaOccupancyEstimator Class Reference

#include <area_occupancy_estimator.h>

Inheritance diagram for AreaOccupancyEstimator:
Inheritance graph
[legend]

Public Member Functions

 AreaOccupancyEstimator (const Occupancy &base_occupied, const Occupancy &base_empty, double low_qual=0.01, double unknown_qual=0.5)
 
Occupancy estimate_occupancy (const Segment2D &beam, const Rectangle &cell, bool is_occ) override
 
- Public Member Functions inherited from CellOccupancyEstimator
 CellOccupancyEstimator (const Occupancy &base_occ, const Occupancy &base_empty)
 
virtual ~CellOccupancyEstimator ()=default
 

Private Types

enum  SegmentPositionType : char {
  SegmentPositionType::Unrelated = 0, SegmentPositionType::LiesInside, SegmentPositionType::StopsInside, SegmentPositionType::StartsInside,
  SegmentPositionType::Pierces, SegmentPositionType::Touches
}
 

Private Member Functions

bool are_on_the_same_side (const Point2D &line_p1, const Point2D &line_p2, const Point2D &p1, const Point2D &p2)
 
SegmentPositionType classify_segment (const Segment2D &s, const Rectangle &cell) const
 
double compute_chunk_area (const Segment2D &beam, const Rectangle &bnds, bool is_occ, const std::vector< Intersection > &inters)
 
Segment2D ensure_segment_not_on_edge (const Segment2D &s, const Rectangle &cell) const
 
Occupancy estimate_occupancy (double chunk_area, double total_area, bool is_occ)
 
Intersections find_intersections (const Segment2D &beam, const Rectangle &bnds, bool is_occ)
 
std::tuple< bool, bool > modified_is_inside (const Segment2D &s, const Rectangle &cell) const
 

Private Attributes

double _low_qual
 
double _unknown_qual
 

Additional Inherited Members

- Protected Member Functions inherited from CellOccupancyEstimator
const Occupancybase_empty () const
 
const Occupancybase_occupied () const
 

Detailed Description

Definition at line 12 of file area_occupancy_estimator.h.

Member Enumeration Documentation

Enumerator
Unrelated 
LiesInside 
StopsInside 
StartsInside 
Pierces 
Touches 

Definition at line 14 of file area_occupancy_estimator.h.

Constructor & Destructor Documentation

AreaOccupancyEstimator::AreaOccupancyEstimator ( const Occupancy base_occupied,
const Occupancy base_empty,
double  low_qual = 0.01,
double  unknown_qual = 0.5 
)
inline

Definition at line 19 of file area_occupancy_estimator.h.

Member Function Documentation

bool AreaOccupancyEstimator::are_on_the_same_side ( const Point2D line_p1,
const Point2D line_p2,
const Point2D p1,
const Point2D p2 
)
inlineprivate

Definition at line 218 of file area_occupancy_estimator.h.

SegmentPositionType AreaOccupancyEstimator::classify_segment ( const Segment2D s,
const Rectangle cell 
) const
inlineprivate

Definition at line 88 of file area_occupancy_estimator.h.

double AreaOccupancyEstimator::compute_chunk_area ( const Segment2D beam,
const Rectangle bnds,
bool  is_occ,
const std::vector< Intersection > &  inters 
)
inlineprivate

Definition at line 162 of file area_occupancy_estimator.h.

Segment2D AreaOccupancyEstimator::ensure_segment_not_on_edge ( const Segment2D s,
const Rectangle cell 
) const
inlineprivate

Definition at line 68 of file area_occupancy_estimator.h.

Occupancy AreaOccupancyEstimator::estimate_occupancy ( const Segment2D beam,
const Rectangle cell,
bool  is_occ 
)
inlineoverridevirtual

Implements CellOccupancyEstimator.

Definition at line 27 of file area_occupancy_estimator.h.

Occupancy AreaOccupancyEstimator::estimate_occupancy ( double  chunk_area,
double  total_area,
bool  is_occ 
)
inlineprivate

Definition at line 225 of file area_occupancy_estimator.h.

Intersections AreaOccupancyEstimator::find_intersections ( const Segment2D beam,
const Rectangle bnds,
bool  is_occ 
)
inlineprivate

Definition at line 139 of file area_occupancy_estimator.h.

std::tuple<bool, bool> AreaOccupancyEstimator::modified_is_inside ( const Segment2D s,
const Rectangle cell 
) const
inlineprivate

Definition at line 114 of file area_occupancy_estimator.h.

Member Data Documentation

double AreaOccupancyEstimator::_low_qual
private

Definition at line 242 of file area_occupancy_estimator.h.

double AreaOccupancyEstimator::_unknown_qual
private

Definition at line 243 of file area_occupancy_estimator.h.


The documentation for this class was generated from the following file:


slam_constructor
Author(s): JetBrains Research, OSLL team
autogenerated on Mon Jun 10 2019 15:08:26