MRPT  2.0.1
CHolonomicVFF.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | https://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2020, Individual contributors, see AUTHORS file |
6  | See: https://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See: https://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 #pragma once
10 
14 
15 namespace mrpt::nav
16 {
17 /** \addtogroup nav_holo Holonomic navigation methods
18  * \ingroup mrpt_nav_grp
19  * @{ */
20 
21 /** A class for storing extra information about the execution of
22  * CHolonomicVFF navigation.
23  * \sa CHolonomicVFF, CHolonomicLogFileRecord
24  */
26 {
28  public:
29 };
30 
31 /** A holonomic reactive navigation method, based on Virtual Force Fields (VFF).
32  *
33  * These are the optional parameters of the method which can be set by means of
34  * a configuration file passed to the constructor or to CHolonomicND::initialize
35  * (see also the field CHolonomicVFF::options).
36  *
37  * \code
38  * # Section name can be changed via setConfigFileSectionName()
39  * [VFF_CONFIG]
40  * TARGET_SLOW_APPROACHING_DISTANCE = 0.10 // For stopping gradually
41  * TARGET_ATTRACTIVE_FORCE = 20 // Dimension-less (may have to be
42  * tuned depending on the density of obstacle sampling)
43  * \endcode
44  *
45  * \sa CAbstractHolonomicReactiveMethod,CReactiveNavigationSystem
46  */
48 {
50  public:
51  /** Initialize the parameters of the navigator, from some configuration
52  * file, or default values if set to NULL. */
53  CHolonomicVFF(const mrpt::config::CConfigFileBase* INI_FILE = nullptr);
54 
55  // See base class docs
56  void navigate(const NavInput& ni, NavOutput& no) override;
57 
58  void initialize(const mrpt::config::CConfigFileBase& INI_FILE)
59  override; // See base class docs
61  const override; // See base class docs
62 
63  /** Algorithm options */
65  {
66  /** For stopping gradually (Default: 0.10) */
68  /** Dimension-less (may have to be tuned depending on the density of
69  * obstacle sampling) (Default: 20) */
71 
72  TOptions();
73  void loadFromConfigFile(
74  const mrpt::config::CConfigFileBase& source,
75  const std::string& section) override; // See base docs
76  void saveToConfigFile(
78  const std::string& section) const override; // See base docs
79  };
80 
81  /** Parameters of the algorithm (can be set manually or loaded from
82  * CHolonomicVFF::initialize or options.loadFromConfigFile(), etc.) */
84 
85  double getTargetApproachSlowDownDistance() const override
86  {
88  }
89  void setTargetApproachSlowDownDistance(const double dist) override
90  {
92  }
93 };
94 /** @} */
95 } // namespace mrpt::nav
void saveToConfigFile(mrpt::config::CConfigFileBase &cfg, const std::string &section) const override
This method saves the options to a ".ini"-like file or memory-stored string list. ...
A holonomic reactive navigation method, based on Virtual Force Fields (VFF).
Definition: CHolonomicVFF.h:47
This is a virtual base class for sets of options than can be loaded from and/or saved to configuratio...
A class for storing extra information about the execution of CHolonomicVFF navigation.
Definition: CHolonomicVFF.h:25
A base class for holonomic reactive navigation methods.
void navigate(const NavInput &ni, NavOutput &no) override
Invokes the holonomic navigation algorithm itself.
double TARGET_ATTRACTIVE_FORCE
Dimension-less (may have to be tuned depending on the density of obstacle sampling) (Default: 20) ...
Definition: CHolonomicVFF.h:70
void loadFromConfigFile(const mrpt::config::CConfigFileBase &source, const std::string &section) override
This method load the options from a ".ini"-like file or memory-stored string list.
TOptions options
Parameters of the algorithm (can be set manually or loaded from CHolonomicVFF::initialize or options...
Definition: CHolonomicVFF.h:83
void saveConfigFile(mrpt::config::CConfigFileBase &c) const override
saves all available parameters, in a forma loadable by initialize()
void setTargetApproachSlowDownDistance(const double dist) override
Sets the actual value of this parameter [m].
Definition: CHolonomicVFF.h:89
This class allows loading and storing values and vectors of different types from a configuration text...
A base class for log records for different holonomic navigation methods.
double getTargetApproachSlowDownDistance() const override
Returns the actual value of this parameter [m], as set via the children class options structure...
Definition: CHolonomicVFF.h:85
CHolonomicVFF(const mrpt::config::CConfigFileBase *INI_FILE=nullptr)
Initialize the parameters of the navigator, from some configuration file, or default values if set to...
#define DEFINE_SERIALIZABLE(class_name, NS)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
Input parameters for CAbstractHolonomicReactiveMethod::navigate()
Output for CAbstractHolonomicReactiveMethod::navigate()
double TARGET_SLOW_APPROACHING_DISTANCE
For stopping gradually (Default: 0.10)
Definition: CHolonomicVFF.h:67
void initialize(const mrpt::config::CConfigFileBase &INI_FILE) override
Initialize the parameters of the navigator, reading from the default section name (see derived classe...



Page generated by Doxygen 1.8.14 for MRPT 2.0.1 Git: 0fef1a6d7 Fri Apr 3 23:00:21 2020 +0200 at vie abr 3 23:20:28 CEST 2020