|
FERS 0.1.0
The Flexible Extensible Radar Simulator
|
Represents a path with coordinates and allows for various interpolation methods. More...
#include "path.h"
Public Types | |
| enum class | InterpType : std::uint8_t { INTERP_STATIC , INTERP_LINEAR , INTERP_CUBIC } |
| Types of interpolation supported by the Path class. More... | |
Public Member Functions | |
| Path (const InterpType type=InterpType::INTERP_STATIC) noexcept | |
| Constructs a Path object with a specified interpolation type. | |
| ~Path ()=default | |
| Path (const Path &)=delete | |
| Path (Path &&)=delete | |
| Path & | operator= (const Path &)=delete |
| Path & | operator= (Path &&)=delete |
| void | addCoord (const Coord &coord) noexcept |
| Adds a coordinate to the path. | |
| void | finalize () |
| Finalizes the path, preparing it for interpolation. | |
| InterpType | getType () const noexcept |
| Retrieves the current interpolation type of the path. | |
| const std::vector< Coord > & | getCoords () const noexcept |
| Gets the list of coordinates in the path. | |
| Vec3 | getPosition (RealType t) const |
| Retrieves the position at a given time along the path. | |
| Vec3 | getVelocity (RealType t) const |
| Retrieves the velocity at a given time along the path. | |
| void | setInterp (InterpType settype) noexcept |
| Changes the interpolation type. | |
Represents a path with coordinates and allows for various interpolation methods.
|
strong |
Types of interpolation supported by the Path class.
Definition at line 36 of file path.h.
|
explicitnoexcept |
|
default |
|
delete |
Adds a coordinate to the path.
| coord | The coordinate to be added. |
Definition at line 27 of file path.cpp.
Referenced by fers_get_interpolated_motion_path(), and serial::xml_parser_utils::parseMotionPath().
Here is the caller graph for this function:| void math::Path::finalize | ( | ) |
Finalizes the path, preparing it for interpolation.
Definition at line 147 of file path.cpp.
References INTERP_CUBIC, INTERP_LINEAR, INTERP_STATIC, and max.
Referenced by fers_get_interpolated_motion_path(), and serial::xml_parser_utils::parseMotionPath().
Here is the caller graph for this function:Gets the list of coordinates in the path.
Definition at line 84 of file path.h.
Referenced by serial::kml_generator_utils::generateDynamicPathKml(), serial::kml_generator_utils::generateTrackEndpointsKml(), and serial::xml_serializer_utils::serializeMotionPath().
Here is the caller graph for this function:Retrieves the position at a given time along the path.
| t | The time parameter at which to get the position. |
| PathException | If finalize() has not been called before this method. |
Definition at line 36 of file path.cpp.
References getPositionCubic(), getPositionLinear(), getPositionStatic(), INTERP_CUBIC, INTERP_LINEAR, INTERP_STATIC, LOG, and max.
Referenced by fers_get_interpolated_motion_path(), and serial::kml_generator_utils::generateDynamicPathKml().
Here is the call graph for this function:
Here is the caller graph for this function:
|
noexcept |
Retrieves the current interpolation type of the path.
Definition at line 77 of file path.h.
Referenced by serial::xml_serializer_utils::serializeMotionPath().
Here is the caller graph for this function:Retrieves the velocity at a given time along the path.
| t | The time parameter at which to get the velocity. |
| PathException | If finalize() has not been called before this method. |
Definition at line 60 of file path.cpp.
References a, b, EPSILON, INTERP_CUBIC, INTERP_LINEAR, INTERP_STATIC, LOG, max, and math::Coord::t.
Referenced by fers_get_interpolated_motion_path().
Here is the caller graph for this function:
|
noexcept |
Changes the interpolation type.
| settype | The new interpolation type to be used. |
Definition at line 164 of file path.cpp.
References max.
Referenced by fers_get_interpolated_motion_path(), and serial::xml_parser_utils::parseMotionPath().
Here is the caller graph for this function: