Add class FRBHMBasic, which derives FBCM and RADAR. ReferencePoint: Add functions friis_index_for_ap() and friis_indexes_for_ap() (that takes code away from Stock::update_all_friis_indexes()). CartographyAlgorithm and MultilaterationAlgorithm now extend PositioningAlgorithm with "public virtual" instead of "public". CartographyAlgorithm: select_point() must now return a ReferencePoint. MultilaterationMethod: Add pure virtual function multilaterate_2d(). MinMax: Add function multilaterate_2d(). MultilaterationAlgorithm: Add function multilaterate_2d() to map MultilaterationMethod::multilaterate_2d(). Makefile: Fix some dependencies.
19 lines
447 B
C++
19 lines
447 B
C++
#include "fbcm.hh"
|
|
|
|
|
|
|
|
float FBCM::estimate_distance(const Measurement &measurement)
|
|
{
|
|
double constant_term = make_constant_term(measurement) ;
|
|
const float &average_ss = measurement.get_average_ss() ;
|
|
const AccessPoint *ap = measurement.get_ap() ;
|
|
return pow(10, (constant_term - average_ss) /
|
|
(10 * friis_index(ap))) ;
|
|
}
|
|
|
|
|
|
inline float FBCM::friis_index(const AccessPoint *const ap) const
|
|
{
|
|
return ap->get_friis_index() ;
|
|
}
|