Helios++
Helios software for LiDAR simulations
|
Class representing a polygon mirror beam deflector. More...
#include <PolygonMirrorBeamDeflector.h>
Public Member Functions | |
PolygonMirrorBeamDeflector (double _scanFreqMax_Hz, double _scanFreqMin_Hz, double _scanAngleMax_rad, double _scanAngleEffectiveMax_rad) | |
Constructor for polygon mirror beam deflector. More... | |
std::shared_ptr< AbstractBeamDeflector > | clone () override |
void | _clone (std::shared_ptr< AbstractBeamDeflector > abd) override |
void | applySettings (std::shared_ptr< ScannerSettings >) override |
void | doSimStep () override |
bool | lastPulseLeftDevice () override |
double | getScanAngleEffectiveMax_rad () const |
Obtain the maximum effective scan angle in radians. More... | |
![]() | |
AbstractBeamDeflector (double scanAngleMax_rad, double scanFreqMax_Hz, double scanFreqMin_Hz) | |
Base constructor for beam deflectors. More... | |
virtual void | restartDeflector () |
Restart the deflector. This method is meant to be invoked whenever the deflector needs to be restarted. Which generally occurs when the previous leg was inactive. | |
Rotation | getEmitterRelativeAttitude () |
Get the relative emitter attitude. More... | |
Rotation & | getEmitterRelativeAttitudeByReference () |
Get the relative emitter attitude by referencce. More... | |
virtual void | setScanAngle_rad (double scanAngle_rad) |
Set the scan angle. More... | |
virtual void | setScanFreq_Hz (double scanFreq_hz) |
Set the scanning frequency. More... | |
Protected Attributes | |
double | cfg_device_scanAngleEffective_rad = 0 |
Effective scan angle (radians) | |
double | cfg_device_scanAngleEffectiveMax_rad = 0 |
Maximum effective scan angle (radians) | |
Additional Inherited Members | |
![]() | |
double | cfg_device_scanFreqMax_Hz = 0 |
Minimum scanning frequency (hertz) | |
double | cfg_device_scanFreqMin_Hz = 0 |
Maximum scanning frequency (hertz) | |
double | cfg_device_scanAngleMax_rad = 0 |
Maximum scanning angle (radians) | |
double | cfg_setting_scanFreq_Hz = 0 |
Scanning frequency (hertz) | |
double | cfg_setting_scanAngle_rad = 0 |
Scanning angle (radians) | |
double | cfg_setting_verticalAngleMin_rad = 0 |
Minimum vertical scanning angle (radians) | |
double | cfg_setting_verticalAngleMax_rad = 0 |
Maximum vertical scanning angle (radians) | |
double | state_currentBeamAngle_rad = 0 |
Current beam angle (radians) | |
double | state_angleDiff_rad = 0 |
Angle differential (radians) | |
double | cached_angleBetweenPulses_rad |
Angle between pulses (radians) | |
Rotation | cached_emitterRelativeAttitude = Rotation(glm::dvec3(1, 0, 0), 0) |
Relative emitter attitude. | |
Class representing a polygon mirror beam deflector.
|
inline |
Constructor for polygon mirror beam deflector.
|
overridevirtual |
Reimplemented from AbstractBeamDeflector.
|
overridevirtual |
Implements AbstractBeamDeflector.
|
inline |
Obtain the maximum effective scan angle in radians.
|
overridevirtual |
Reimplemented from AbstractBeamDeflector.