![]() |
Trax3 3.1.0
trax track library
|
Interface for streching the curvature of a curve, by trying to reach an end point Z, while keeping the starting point local, if possible. More...
#include <C:/Trend/Development/Trax3/Code/trax/Curve.h>

Public Member Functions | |
| virtual spat::Vector< One > | Direction (Length s) const =0 |
| virtual AnglePerLength | Start (Length s, const spat::Position< Length > &Z, common::Interval< AnglePerLength > curvatureLimits={epsilon__angle/maximum__length, 180_deg/epsilon__length})=0 |
| virtual AnglePerLength | Strech (Length s, const spat::Position< Length > &Z)=0 |
| CurvatureStrecher (CurvatureStrecher &&)=delete | |
| CurvatureStrecher & | operator= (const CurvatureStrecher &)=delete |
| CurvatureStrecher & | operator= (CurvatureStrecher &&)=delete |
Static Public Member Functions | |
Get CurvatureStrecher Interface | |
Retrieve interface for curvature streching. | |
| static dclspc const CurvatureStrecher * | InterfaceFrom (const Curve &curve) noexcept |
| static dclspc CurvatureStrecher * | InterfaceFrom (Curve &curve) noexcept |
Protected Member Functions | |
| CurvatureStrecher (const CurvatureStrecher &)=default | |
Interface for streching the curvature of a curve, by trying to reach an end point Z, while keeping the starting point local, if possible.
Some curves that can get parametrized by a curvature parameter support this interface. Supporting curves are: Arc, ArcP, Helix, HelixP, Clothoid. Streching is useful with graphical editors.
|
pure virtual |