Helios++
Helios software for LiDAR simulations
|
Class representing platform settings. More...
#include <PlatformSettings.h>
Public Member Functions | |
PlatformSettings ()=default | |
Platform settings default constructor. | |
PlatformSettings (PlatformSettings *other) | |
Copy from pointer constructor. More... | |
std::shared_ptr< PlatformSettings > | cherryPick (std::shared_ptr< PlatformSettings > cherries, std::unordered_set< std::string > const &fields, std::unordered_set< std::string > const *templateFields=nullptr) |
Build a new platform settings which by default has the same values than caller platform settings (this). Any field specified through fields set will be overloaded from cherries platform settings. More... | |
glm::dvec3 | getPosition () |
Obtain position as 3D vector. More... | |
void | setPosition (glm::dvec3 dest) |
Set position from 3D vector. More... | |
void | setPosition (double const x, double const y, double const z) |
bool | hasTemplate () |
Check if this PlatformSettings has an associated template (true) or not (false) More... | |
PlatformSettings & | getTemplate () |
Obtain template by reference. More... | |
virtual std::string | toString () const |
Obtain the string representation of the scanner settings. More... | |
![]() | |
std::string | getLocationString () |
Obtain asset location string. More... | |
virtual bool | isEgg () const |
Check whether the asset is an EggAsset or not. More... | |
Public Attributes | |
std::string | id = "#nullid#" |
The ID for this platform settings. It does not make sense for all platform settings, but it is specially useful when it comes to handling XML templates. | |
std::shared_ptr< PlatformSettings > | baseTemplate = nullptr |
Template defining default values which were used to build the PlatformSettings object. | |
double | x = 0 |
Position x coordinate. | |
double | y = 0 |
Position y coordinate. | |
double | z = 0 |
Position z coordinate. | |
bool | yawAtDepartureSpecified = false |
Flag. | |
double | yawAtDeparture = 0.0 |
Yaw angle (in radians) at platform departure. | |
bool | onGround = false |
On ground flag. More... | |
bool | stopAndTurn = true |
Stop and turn flag. More... | |
bool | smoothTurn = false |
Smooth turn. More... | |
bool | slowdownEnabled = true |
Slowdown enabled flag. More... | |
double | movePerSec_m = 70 |
Movement per seconds (in meters) | |
![]() | |
std::string | id = "" |
Asset identifier. | |
std::string | name = "Unnamed Asset" |
Asset name. | |
std::string | sourceFilePath = "" |
Path to asset file. | |
Friends | |
std::ostream & | operator<< (std::ostream &out, PlatformSettings const &settings) |
Overload of << operator for output streams. | |
Class representing platform settings.
|
inline |
Copy from pointer constructor.
other | Platform settings to be copied |
|
inline |
Build a new platform settings which by default has the same values than caller platform settings (this). Any field specified through fields set will be overloaded from cherries platform settings.
cherries | From where overloaded values are taken | |
[in] | fields | Which fields must be overloaded |
[in] | templateFields | Which fields must be overloaded for the template. Notice it can be nullptr in case there is no cherry template |
|
inline |
Obtain position as 3D vector.
|
inline |
Obtain template by reference.
|
inline |
Check if this PlatformSettings has an associated template (true) or not (false)
|
inline |
Set position from 3D vector.
dest | Position as 3D vector |
|
inlinevirtual |
Obtain the string representation of the scanner settings.
bool PlatformSettings::onGround = false |
On ground flag.
bool PlatformSettings::slowdownEnabled = true |
Slowdown enabled flag.
bool PlatformSettings::smoothTurn = false |
Smooth turn.
bool PlatformSettings::stopAndTurn = true |
Stop and turn flag.