INOS
cinosmovepathinterpolatorclothoid.h
Go to the documentation of this file.
1//******************************************************************************
26//******************************************************************************
27#ifndef INC_CINOSMOVEPATHINTERPOLATORCLOTHOID_H
28#define INC_CINOSMOVEPATHINTERPOLATORCLOTHOID_H
29//------------------------------------------------------------------------------
30// defines
31//------------------------------------------------------------------------------
32//
33//------------------------------------------------------------------------------
34// includes
35//------------------------------------------------------------------------------
36//
37// system
38#include <inos.h>
40//
41// C++
42//
43// project
44//
45//------------------------------------------------------------------------------
46// class definition
47//------------------------------------------------------------------------------
48//
50{
51 //--- user interface ---------------------------------------------------
52
53 // public member functions
54 public :
55
58 TINOSMovePathVec& ovPos) override;
59
61 virtual uint32 Prepare() override;
62
64 virtual bool IsCurveContinuous(uint32 auLevel) override;
65 //--- internals --------------------------------------------------------
66
67 // constructor / destructor
68 public :
75
76
78 double CalcAngleAndDirection(TINOSMovePathVec& vDir1,
79 TINOSMovePathVec& vDir2, bool& abCw);
81 double CalcRotationAngle(TINOSMovePathVec& vVector1,
82 TINOSMovePathVec& vVector2);
86 TINOSMovePathVec& vIntersection);
87
88 // protected members
89 protected :
92 uint8 ind1 = 1;
93
94 // dynamic
96};
97
98//------------------------------------------------------------------------------
99// end of file
100//------------------------------------------------------------------------------
101
102#endif // INC_CINOSMOVEPATHINTERPOLATORCLOTHOID_H
The CINOSMovePathInterpolator class.
#define DECLARE_DYNAMIC(aClass)
Definition cinospartitionmemory.h:328
Definition cinosmcmodule.h:1900
Definition cinosmovepathcurve.h:56
Definition cinosmovepathinterpolatorclothoid.h:50
uint32 CalcIntersection(CINOSMovePathSegment *apSegment1, CINOSMovePathSegment *apSegment2, TINOSMovePathVec &vIntersection)
calc intersection vector between linear segment1 and linear segment2
virtual uint32 Prepare() override
do precalculation
virtual bool IsCurveContinuous(uint32 auLevel) override
check if curve continuous
virtual ~CINOSMovePathInterpolatorClothoid()
destructor
Definition cinosmovepathinterpolatorclothoid.h:74
uint8 ind0
axes indexes
Definition cinosmovepathinterpolatorclothoid.h:91
double CalcRotationAngle(TINOSMovePathVec &vVector1, TINOSMovePathVec &vVector2)
calc angle between vector1 and vector2
double CalcAngleAndDirection(TINOSMovePathVec &vDir1, TINOSMovePathVec &vDir2, bool &abCw)
calc angle between segment1 and segment2 and direction
virtual void GetPosition(double adP, CINOSMovePathSegment *&opSegment, TINOSMovePathVec &ovPos) override
get position vector at 'adP'
CINOSMovePathInterpolatorClothoid(CINOSMovePathCurve *apCurve, CINOSMovePath *apPath=NULL)
constructor
Definition cinosmovepathinterpolator.h:82
Definition cinosmovepathsegment.h:45
Definition cinosmovepath.h:566