MRPT  1.9.9
CHolonomicVFF.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 #ifndef CHolonomicVFF_H
10 #define CHolonomicVFF_H
11 
15 
16 namespace mrpt::nav
17 {
18 /** \addtogroup nav_holo Holonomic navigation methods
19  * \ingroup mrpt_nav_grp
20  * @{ */
21 
22 /** A class for storing extra information about the execution of
23  * CHolonomicVFF navigation.
24  * \sa CHolonomicVFF, CHolonomicLogFileRecord
25  */
27 {
29  public:
30 };
31 
32 /** A holonomic reactive navigation method, based on Virtual Force Fields (VFF).
33  *
34  * These are the optional parameters of the method which can be set by means of
35  * a configuration file passed to the constructor or to CHolonomicND::initialize
36  * (see also the field CHolonomicVFF::options).
37  *
38  * \code
39  * # Section name can be changed via setConfigFileSectionName()
40  * [VFF_CONFIG]
41  * TARGET_SLOW_APPROACHING_DISTANCE = 0.10 // For stopping gradually
42  * TARGET_ATTRACTIVE_FORCE = 20 // Dimension-less (may have to be
43  * tuned depending on the density of obstacle sampling)
44  * \endcode
45  *
46  * \sa CAbstractHolonomicReactiveMethod,CReactiveNavigationSystem
47  */
49 {
51  public:
52  /** Initialize the parameters of the navigator, from some configuration
53  * file, or default values if set to NULL. */
54  CHolonomicVFF(const mrpt::config::CConfigFileBase* INI_FILE = nullptr);
55 
56  // See base class docs
57  void navigate(const NavInput& ni, NavOutput& no) override;
58 
59  void initialize(const mrpt::config::CConfigFileBase& INI_FILE)
60  override; // See base class docs
62  const override; // See base class docs
63 
64  /** Algorithm options */
66  {
67  /** For stopping gradually (Default: 0.10) */
69  /** Dimension-less (may have to be tuned depending on the density of
70  * obstacle sampling) (Default: 20) */
72 
73  TOptions();
74  void loadFromConfigFile(
76  const std::string& section) override; // See base docs
77  void saveToConfigFile(
79  const std::string& section) const override; // See base docs
80  };
81 
82  /** Parameters of the algorithm (can be set manually or loaded from
83  * CHolonomicVFF::initialize or options.loadFromConfigFile(), etc.) */
85 
86  double getTargetApproachSlowDownDistance() const override
87  {
89  }
90  void setTargetApproachSlowDownDistance(const double dist) override
91  {
93  }
94 };
95 /** @} */
96 }
97 #endif
98 
99 
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:48
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:26
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:71
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:84
virtual 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:90
This class allows loading and storing values and vectors of different types from a configuration text...
const GLubyte * c
Definition: glext.h:6313
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:86
GLsizei const GLchar ** string
Definition: glext.h:4101
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)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
GLsizei GLsizei GLchar * source
Definition: glext.h:4082
Input parameters for CAbstractHolonomicReactiveMethod::navigate()
Output for CAbstractHolonomicReactiveMethod::navigate()
double TARGET_SLOW_APPROACHING_DISTANCE
For stopping gradually (Default: 0.10)
Definition: CHolonomicVFF.h:68
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 1.9.9 Git: 7d5e6d718 Fri Aug 24 01:51:28 2018 +0200 at lun nov 2 08:35:50 CET 2020