Go to the documentation of this file.
27 #ifndef INC_CINOSMOVEPATHPARTCLOTHOID_H
28 #define INC_CINOSMOVEPATHPARTCLOTHOID_H
52 double m_dY[eCnsSeries];
80 virtual double Prepare(uint32 auIncremental,
double* apPosition)
override;
83 virtual void GetPosition(
double adP,
double* apPosition)
override;
85 virtual void GetDerivative(uint32 auLevel,
double adP,
double* apDerivative)
override;
87 virtual void GetD2max(
double* apD2max)
override;
89 virtual void GetD3max(
double* apD3max)
override;
103 eOptNone = 0x00000000,
104 eOptClockWise = 0x00000001,
105 eOptInverted = 0x00000002,
116 double adR,
double adL,
double adRotationAngle, uint32 auOptions);
121 static void GetXY(
double adL, uint32 auOptions,
double& adX,
double& adY,
129 double GetD2x(
double adP);
131 double GetD2y(
double adP);
133 double GetD3x(
double adP);
135 double GetD3y(
double adP);
168 #endif // INC_CINOSMOVEPATHPARTCLOTHOID_H
static void GetXY(double adL, uint32 auOptions, double &adX, double &adY, SINOSMovePathPartClothoidConstants &asConst)
get clothoid coordinates
virtual void GetD3max(double *apD3max) override
get max 3. derivative of part
double m_dRotationAngle
rotation angle
Definition: cinosmovepathpartclothoid.h:150
virtual double Prepare(uint32 auIncremental, double *apPosition) override
prepare part
Definition: cinosmovepathpartclothoid.h:44
uint32 m_uOptions
clothoid options
Definition: cinosmovepathpartclothoid.h:140
static double GetTangentLength(double adR, double adL, double adGamma)
double GetD2y(double adP)
get 2. derivative of y coord at given P
double GetD3x(double adP)
get 3. derivative of x coord at given P
static void InitConstants(double adA, SINOSMovePathPartClothoidConstants &asConst)
init calculation constants
virtual void GetDerivative(uint32 auLevel, double adP, double *apDerivative) override
get auLevel derivative at P
double m_dXe
calc end coordinates
Definition: cinosmovepathpartclothoid.h:155
CINOSMovePathPartClothoid(uint8 auIndex1, uint8 auIndex2, double adR, double adL, double adRotationAngle, uint32 auOptions)
virtual void GetPosition(double adP, double *apPosition) override
get position at P
virtual void GetD2max(double *apD2max) override
get max 2. derivative of part
double m_dA
clothoid param A
Definition: cinosmovepathpartclothoid.h:146
double GetD2x(double adP)
get 2. derivative of x coord at given P
double m_dCosA
rotation factors
Definition: cinosmovepathpartclothoid.h:152
double m_dX[eCnsSeries]
calculation constants
Definition: cinosmovepathpartclothoid.h:51
double m_dR
requested radius
Definition: cinosmovepathpartclothoid.h:142
virtual ~CINOSMovePathPartClothoid()
destructor
double GetD3y(double adP)
get 3. derivative of y coord at given P
Definition: cinosmovepath.h:549
Definition: cinosmovepathpart.h:44
uint8 m_uIndex[2]
axis indexes
Definition: cinosmovepathpartclothoid.h:138
virtual uint32 GetInvolved() override
get mask of involved axes
Definition: cinosmovepathpartclothoid.h:74
virtual uint8 GetMainAxisIndex() override
get main axis index (relevant for abs/inc/nlg)
Definition: cinosmovepathpartclothoid.h:67
double m_dL
requested length
Definition: cinosmovepathpartclothoid.h:144
Definition: cinosmovepathpartclothoid.h:59