BaseCurve Class Reference

Clothoids: G2lib::BaseCurve Class Reference
Clothoids
G2lib::BaseCurve Class Referenceabstract

#include <BaseCurve.hxx>

Inheritance diagram for G2lib::BaseCurve:
G2lib::Biarc G2lib::BiarcList G2lib::CircleArc G2lib::ClothoidCurve G2lib::ClothoidList G2lib::Dubins G2lib::Dubins3p G2lib::LineSegment G2lib::PolyLine

Public Member Functions

 BaseCurve (BaseCurve const &)=delete
 
BaseCurve const & operator= (BaseCurve const &)=delete
 
 BaseCurve (string const &name)
 
virtual void setup (GenericContainer const &gc)=0
 
void build (GenericContainer const &gc)
 
virtual CurveType type () const =0
 
string name () const
 
string type_name () const
 
virtual real_type length () const =0
 
virtual real_type length_ISO (real_type offs) const =0
 
real_type length_SAE (real_type offs) const
 
virtual void bbox (real_type &xmin, real_type &ymin, real_type &xmax, real_type &ymax) const =0
 
virtual void bbox_ISO (real_type offs, real_type &xmin, real_type &ymin, real_type &xmax, real_type &ymax) const =0
 
void bbox_SAE (real_type offs, real_type &xmin, real_type &ymin, real_type &xmax, real_type &ymax) const
 
virtual void bb_triangles (vector< Triangle2D > &tvec, real_type max_angle=Utils::m_pi/18, real_type max_size=1e100, integer icurve=0) const =0
 
virtual void bb_triangles_ISO (real_type offs, vector< Triangle2D > &tvec, real_type max_angle=Utils::m_pi/18, real_type max_size=1e100, integer icurve=0) const =0
 
virtual void bb_triangles_SAE (real_type offs, vector< Triangle2D > &tvec, real_type max_angle=Utils::m_pi/18, real_type max_size=1e100, integer icurve=0) const =0
 
virtual real_type theta_begin () const
 
virtual real_type theta_end () const
 
virtual real_type kappa_begin () const
 
virtual real_type kappa_end () const
 
virtual real_type x_begin () const
 
virtual real_type y_begin () const
 
virtual real_type x_end () const
 
virtual real_type y_end () const
 
virtual real_type x_begin_ISO (real_type offs) const
 
virtual real_type y_begin_ISO (real_type offs) const
 
virtual real_type x_end_ISO (real_type offs) const
 
virtual real_type y_end_ISO (real_type offs) const
 
real_type x_begin_SAE (real_type offs) const
 
real_type y_begin_SAE (real_type offs) const
 
real_type x_end_SAE (real_type offs) const
 
real_type y_end_SAE (real_type offs) const
 
virtual real_type tx_begin () const
 
virtual real_type ty_begin () const
 
virtual real_type tx_end () const
 
virtual real_type ty_end () const
 
virtual real_type nx_begin_ISO () const
 
virtual real_type ny_begin_ISO () const
 
virtual real_type nx_end_ISO () const
 
virtual real_type ny_end_ISO () const
 
real_type nx_begin_SAE () const
 
real_type ny_begin_SAE () const
 
real_type nx_end_SAE () const
 
real_type ny_end_SAE () const
 
virtual real_type theta (real_type s) const =0
 
virtual real_type theta_D (real_type s) const =0
 
virtual real_type theta_DD (real_type s) const =0
 
virtual real_type theta_DDD (real_type s) const =0
 
real_type kappa (real_type s) const
 
real_type kappa_D (real_type s) const
 
real_type kappa_DD (real_type s) const
 
virtual real_type tx (real_type s) const
 
virtual real_type ty (real_type s) const
 
virtual real_type tx_D (real_type s) const
 
virtual real_type ty_D (real_type s) const
 
virtual real_type tx_DD (real_type s) const
 
virtual real_type ty_DD (real_type s) const
 
virtual real_type tx_DDD (real_type s) const
 
virtual real_type ty_DDD (real_type s) const
 
real_type nx_ISO (real_type s) const
 
real_type nx_ISO_D (real_type s) const
 
real_type nx_ISO_DD (real_type s) const
 
real_type nx_ISO_DDD (real_type s) const
 
real_type ny_ISO (real_type s) const
 
real_type ny_ISO_D (real_type s) const
 
real_type ny_ISO_DD (real_type s) const
 
real_type ny_ISO_DDD (real_type s) const
 
real_type nx_SAE (real_type s) const
 
real_type nx_SAE_D (real_type s) const
 
real_type nx_SAE_DD (real_type s) const
 
real_type nx_SAE_DDD (real_type s) const
 
real_type ny_SAE (real_type s) const
 
real_type ny_SAE_D (real_type s) const
 
real_type ny_SAE_DD (real_type s) const
 
real_type ny_SAE_DDD (real_type s) const
 
virtual void tg (real_type s, real_type &tg_x, real_type &tg_y) const
 
virtual void tg_D (real_type s, real_type &tg_x_D, real_type &tg_y_D) const
 
virtual void tg_DD (real_type s, real_type &tg_x_DD, real_type &tg_y_DD) const
 
virtual void tg_DDD (real_type s, real_type &tg_x_DDD, real_type &tg_y_DDD) const
 
void nor_ISO (real_type s, real_type &nx, real_type &ny) const
 
void nor_ISO_D (real_type s, real_type &nx_D, real_type &ny_D) const
 
void nor_ISO_DD (real_type s, real_type &nx_DD, real_type &ny_DD) const
 
void nor_ISO_DDD (real_type s, real_type &nx_DDD, real_type &ny_DDD) const
 
void nor_SAE (real_type s, real_type &nx, real_type &ny) const
 
void nor_SAE_D (real_type s, real_type &nx_D, real_type &ny_D) const
 
void nor_SAE_DD (real_type s, real_type &nx_DD, real_type &ny_DD) const
 
void nor_SAE_DDD (real_type s, real_type &nx_DDD, real_type &ny_DDD) const
 
virtual void evaluate (real_type s, real_type &th, real_type &k, real_type &x, real_type &y) const
 
virtual void evaluate_ISO (real_type s, real_type offs, real_type &th, real_type &k, real_type &x, real_type &y) const
 
virtual void evaluate_SAE (real_type s, real_type offs, real_type &th, real_type &k, real_type &x, real_type &y) const
 
virtual real_type X (real_type s) const =0
 
virtual real_type Y (real_type s) const =0
 
virtual real_type X_D (real_type s) const =0
 
virtual real_type Y_D (real_type s) const =0
 
virtual real_type X_DD (real_type s) const =0
 
virtual real_type Y_DD (real_type s) const =0
 
virtual real_type X_DDD (real_type s) const =0
 
virtual real_type Y_DDD (real_type s) const =0
 
virtual void eval (real_type s, real_type &x, real_type &y) const =0
 
virtual void eval_D (real_type s, real_type &x_D, real_type &y_D) const =0
 
virtual void eval_DD (real_type s, real_type &x_DD, real_type &y_DD) const =0
 
virtual void eval_DDD (real_type s, real_type &x_DDD, real_type &y_DDD) const =0
 
virtual real_type X_ISO (real_type s, real_type offs) const
 
virtual real_type Y_ISO (real_type s, real_type offs) const
 
virtual real_type X_ISO_D (real_type s, real_type offs) const
 
virtual real_type Y_ISO_D (real_type s, real_type offs) const
 
virtual real_type X_ISO_DD (real_type s, real_type offs) const
 
virtual real_type Y_ISO_DD (real_type s, real_type offs) const
 
virtual real_type X_ISO_DDD (real_type s, real_type offs) const
 
virtual real_type Y_ISO_DDD (real_type s, real_type offs) const
 
real_type X_SAE (real_type s, real_type offs) const
 
real_type Y_SAE (real_type s, real_type offs) const
 
real_type X_SAE_D (real_type s, real_type offs) const
 
real_type Y_SAE_D (real_type s, real_type offs) const
 
real_type X_SAE_DD (real_type s, real_type offs) const
 
real_type Y_SAE_DD (real_type s, real_type offs) const
 
real_type X_SAE_DDD (real_type s, real_type offs) const
 
real_type Y_SAE_DDD (real_type s, real_type offs) const
 
virtual void eval_ISO (real_type s, real_type offs, real_type &x, real_type &y) const
 
void eval_SAE (real_type s, real_type offs, real_type &x, real_type &y) const
 
virtual void eval_ISO_D (real_type s, real_type offs, real_type &x_D, real_type &y_D) const
 
void eval_SAE_D (real_type s, real_type offs, real_type &x_D, real_type &y_D) const
 
virtual void eval_ISO_DD (real_type s, real_type offs, real_type &x_DD, real_type &y_DD) const
 
void eval_SAE_DD (real_type s, real_type offs, real_type &x_DD, real_type &y_DD) const
 
virtual void eval_ISO_DDD (real_type s, real_type offs, real_type &x_DDD, real_type &y_DDD) const
 
void eval_SAE_DDD (real_type s, real_type offs, real_type &x_DDD, real_type &y_DDD) const
 
virtual void translate (real_type tx, real_type ty)=0
 translate curve by \((t_x,t_y)\)
 
virtual void rotate (real_type angle, real_type cx, real_type cy)=0
 
virtual void scale (real_type sc)=0
 
virtual void reverse ()=0
 
virtual void change_origin (real_type newx0, real_type newy0)=0
 
virtual void trim (real_type s_begin, real_type s_end)=0
 
virtual bool collision (BaseCurve const *pC) const =0
 
virtual bool collision_ISO (real_type offs, BaseCurve const *pC, real_type offs_C) const =0
 
bool collision_SAE (real_type offs, BaseCurve const *pC, real_type offs_C) const
 
virtual void intersect (BaseCurve const *pC, IntersectList &ilist) const =0
 
virtual void intersect_ISO (real_type offs, BaseCurve const *pC, real_type offs_C, IntersectList &ilist) const =0
 
void intersect_SAE (real_type offs, BaseCurve const *pC, real_type offs_C, IntersectList &ilist) const
 
virtual integer closest_point_ISO (real_type qx, real_type qy, real_type &x, real_type &y, real_type &s, real_type &t, real_type &dst) const =0
 
integer closest_point_SAE (real_type qx, real_type qy, real_type &x, real_type &y, real_type &s, real_type &t, real_type &dst) const
 
virtual integer closest_point_ISO (real_type qx, real_type qy, real_type offs, real_type &x, real_type &y, real_type &s, real_type &t, real_type &dst) const =0
 
integer closest_point_SAE (real_type qx, real_type qy, real_type offs, real_type &x, real_type &y, real_type &s, real_type &t, real_type &dst) const
 
virtual real_type distance (real_type qx, real_type qy) const
 
real_type distance_ISO (real_type qx, real_type qy, real_type offs) const
 
real_type distance_SAE (real_type qx, real_type qy, real_type offs) const
 
bool findST_ISO (real_type x, real_type y, real_type &s, real_type &t) const
 
bool findST_SAE (real_type x, real_type y, real_type &s, real_type &t) const
 
virtual void info (ostream_type &stream) const =0
 

Detailed Description

Base classe for all the curve ìn in the library.

Constructor & Destructor Documentation

◆ BaseCurve()

G2lib::BaseCurve::BaseCurve ( string const & name)
inline

Initialize the class storing the curve type.

Member Function Documentation

◆ bb_triangles()

virtual void G2lib::BaseCurve::bb_triangles ( vector< Triangle2D > & tvec,
real_type max_angle = Utils::m_pi/18,
real_type max_size = 1e100,
integer icurve = 0 ) const
pure virtual

Build a cover with triangles of the curve.

Parameters
[out]tveclist of covering triangles
[out]max_anglemaximum angle variation of the curve covered by a triangle
[out]max_sizemaximum admissible size of the covering tirnagles
[out]icurveindex of the covering triangles
'

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ bb_triangles_ISO()

virtual void G2lib::BaseCurve::bb_triangles_ISO ( real_type offs,
vector< Triangle2D > & tvec,
real_type max_angle = Utils::m_pi/18,
real_type max_size = 1e100,
integer icurve = 0 ) const
pure virtual

Build a cover with triangles of the curve with offset (ISO).

Parameters
[out]offscurve offset
[out]tveclist of covering triangles
[out]max_anglemaximum angle variation of the curve covered by a triangle
[out]max_sizemaximum admissible size of the covering tirnagles
[out]icurveindex of the covering triangles

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ bb_triangles_SAE()

virtual void G2lib::BaseCurve::bb_triangles_SAE ( real_type offs,
vector< Triangle2D > & tvec,
real_type max_angle = Utils::m_pi/18,
real_type max_size = 1e100,
integer icurve = 0 ) const
pure virtual

Build a cover with triangles of the curve with offset (SAE).

Parameters
[out]offscurve offset
[out]tveclist of covering triangles
[out]max_anglemaximum angle variation of the arc covered by a triangle
[out]max_sizemaximum admissible size of the covering tirnagles
[out]icurveindex of the covering triangles

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ bbox()

virtual void G2lib::BaseCurve::bbox ( real_type & xmin,
real_type & ymin,
real_type & xmax,
real_type & ymax ) const
pure virtual

Compute the bounding box of the curve.

Parameters
[out]xminleft bottom
[out]yminleft bottom
[out]xmaxright top
[out]ymaxright top

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ bbox_ISO()

virtual void G2lib::BaseCurve::bbox_ISO ( real_type offs,
real_type & xmin,
real_type & ymin,
real_type & xmax,
real_type & ymax ) const
pure virtual

Compute the bounding box of the curve with offset (ISO).

Parameters
[in]offscurve offset
[out]xminleft bottom
[out]yminleft bottom
[out]xmaxright top
[out]ymaxright top

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ bbox_SAE()

void G2lib::BaseCurve::bbox_SAE ( real_type offs,
real_type & xmin,
real_type & ymin,
real_type & xmax,
real_type & ymax ) const
inline

Compute the bounding box of the curve (SAE).

Parameters
[in]offscurve offset
[out]xminleft bottom
[out]yminleft bottom
[out]xmaxright top
[out]ymaxright top

◆ change_origin()

virtual void G2lib::BaseCurve::change_origin ( real_type newx0,
real_type newy0 )
pure virtual

◆ closest_point_ISO() [1/2]

virtual integer G2lib::BaseCurve::closest_point_ISO ( real_type qx,
real_type qy,
real_type & x,
real_type & y,
real_type & s,
real_type & t,
real_type & dst ) const
pure virtual

Given a point find closest point on the curve.

Parameters
qx\(x\)-coordinate of the point
qy\(y\)-coordinate of the point
x\(x\)-coordinate of the projected point on the curve
y\(y\)-coordinate of the projected point on the curve
sparameter on the curve of the projection
tcurvilinear coordinate of the point x,y (if orthogonal projection)
dstdistance point projected point
Returns
1 = point is projected orthogonal 0 = more than one projection (first returned) -1 = minimum point is not othogonal projection to curve

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ closest_point_ISO() [2/2]

virtual integer G2lib::BaseCurve::closest_point_ISO ( real_type qx,
real_type qy,
real_type offs,
real_type & x,
real_type & y,
real_type & s,
real_type & t,
real_type & dst ) const
pure virtual

Given a point find closest point on the curve.

Parameters
qx\(x\)-coordinate of the point
qy\(y\)-coordinate of the point
offsoffset of the curve
x\(x\)-coordinate of the projected point on the curve
y\(y\)-coordinate of the projected point on the curve
sparameter on the curve of the projection
tcurvilinear coordinate of the point x,y (if orthogonal projection)
dstdistance point projected point
Returns
1 = point is projected orthogonal 0 = more than one projection (first returned) -1 = minimum point is not othogonal projection to curve

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ closest_point_SAE() [1/2]

integer G2lib::BaseCurve::closest_point_SAE ( real_type qx,
real_type qy,
real_type & x,
real_type & y,
real_type & s,
real_type & t,
real_type & dst ) const
inline

Given a point find closest point on the curve.

Parameters
qx\(x\)-coordinate of the point
qy\(y\)-coordinate of the point
x\(x\)-coordinate of the projected point on the curve
y\(y\)-coordinate of the projected point on the curve
sparameter on the curve of the projection
tcurvilinear coordinate of the point x,y (if orthogonal projection)
dstdistance point projected point
Returns
1 = point is projected orthogonal 0 = more than one projection (first returned) -1 = minimum point is not othogonal projection to curve

◆ closest_point_SAE() [2/2]

integer G2lib::BaseCurve::closest_point_SAE ( real_type qx,
real_type qy,
real_type offs,
real_type & x,
real_type & y,
real_type & s,
real_type & t,
real_type & dst ) const
inline

Given a point find closest point on the curve.

Parameters
qx\(x\)-coordinate of the point
qy\(y\)-coordinate of the point
offsoffset of the curve
x\(x\)-coordinate of the projected point on the curve
y\(y\)-coordinate of the projected point on the curve
sparameter on the curve of the projection
tcurvilinear coordinate of the point x,y (if orthogonal projection)
dstdistance point projected point
Returns
1 = point is projected orthogonal 0 = more than one projection (first returned) -1 = minimum point is not othogonal projection to curve

◆ collision()

virtual bool G2lib::BaseCurve::collision ( BaseCurve const * pC) const
pure virtual

◆ collision_ISO()

virtual bool G2lib::BaseCurve::collision_ISO ( real_type offs,
BaseCurve const * pC,
real_type offs_C ) const
pure virtual

Check collision with another curve with offset (ISO).

Parameters
[in]offscurve offset
[in]pCsecond curve to check collision
[in]offs_Ccurve offset of the second curve
Returns
true if collision is detected

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ collision_SAE()

bool G2lib::BaseCurve::collision_SAE ( real_type offs,
BaseCurve const * pC,
real_type offs_C ) const
inline

Check collision with another curve with offset (SAE).

Parameters
[in]offscurve offset
[in]pCsecond curve to check collision
[in]offs_Ccurve offset of the second curve
Returns
true if collision is detected

◆ distance()

virtual real_type G2lib::BaseCurve::distance ( real_type qx,
real_type qy ) const
inlinevirtual

Compute the distance between a point \(q=(q_x,q_y)\) and the curve.

Parameters
[in]qxcomponent \(q_x\)
[in]qycomponent \(q_y\)
Returns
the computed distance

◆ distance_ISO()

real_type G2lib::BaseCurve::distance_ISO ( real_type qx,
real_type qy,
real_type offs ) const
inline

Compute the distance between a point \(q=(q_x,q_y)\) and the curve with offset (ISO).

Parameters
[in]qxcomponent \(q_x\)
[in]qycomponent \(q_y\)
[in]offsoffset of the curve
Returns
the computed distance

◆ distance_SAE()

real_type G2lib::BaseCurve::distance_SAE ( real_type qx,
real_type qy,
real_type offs ) const
inline

Compute the distance between a point \(q=(q_x,q_y)\) and the curve with offset (SAE).

Parameters
[in]qxcomponent \(q_x\)
[in]qycomponent \(q_y\)
[in]offsoffset of the curve
Returns
the computed distance

◆ eval()

virtual void G2lib::BaseCurve::eval ( real_type s,
real_type & x,
real_type & y ) const
pure virtual

◆ eval_D()

virtual void G2lib::BaseCurve::eval_D ( real_type s,
real_type & x_D,
real_type & y_D ) const
pure virtual

x and \(y\)-coordinate derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ eval_DD()

virtual void G2lib::BaseCurve::eval_DD ( real_type s,
real_type & x_DD,
real_type & y_DD ) const
pure virtual

x and \(y\)-coordinate second derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ eval_DDD()

virtual void G2lib::BaseCurve::eval_DDD ( real_type s,
real_type & x_DDD,
real_type & y_DDD ) const
pure virtual

x and \(y\)-coordinate third derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ eval_ISO()

virtual void G2lib::BaseCurve::eval_ISO ( real_type s,
real_type offs,
real_type & x,
real_type & y ) const
virtual

Compute curve at position s with offset offs (ISO).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]xcoordinate
[out]ycoordinate

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ eval_ISO_D()

virtual void G2lib::BaseCurve::eval_ISO_D ( real_type s,
real_type offs,
real_type & x_D,
real_type & y_D ) const
virtual

Compute derivative curve at position s with offset offs (ISO).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]x_D\(x\)-coordinate
[out]y_D\(y\)-coordinate

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ eval_ISO_DD()

virtual void G2lib::BaseCurve::eval_ISO_DD ( real_type s,
real_type offs,
real_type & x_DD,
real_type & y_DD ) const
virtual

Compute second derivative curve at position s with offset offs (ISO).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]x_DD\(x\)-coordinate second derivative
[out]y_DD\(y\)-coordinate second derivative

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ eval_ISO_DDD()

virtual void G2lib::BaseCurve::eval_ISO_DDD ( real_type s,
real_type offs,
real_type & x_DDD,
real_type & y_DDD ) const
virtual

Compute third derivative curve at position s with offset offs (ISO).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]x_DDD\(x\)-coordinate third derivative
[out]y_DDD\(y\)-coordinate third derivative

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ eval_SAE()

void G2lib::BaseCurve::eval_SAE ( real_type s,
real_type offs,
real_type & x,
real_type & y ) const
inline

Compute curve at position s with offset offs (SAE).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]xcoordinate
[out]ycoordinate

◆ eval_SAE_D()

void G2lib::BaseCurve::eval_SAE_D ( real_type s,
real_type offs,
real_type & x_D,
real_type & y_D ) const
inline

Compute derivative curve at position s with offset offs (SAE).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]x_D\(x\)-coordinate first derivative
[out]y_D\(y\)-coordinate first derivative

◆ eval_SAE_DD()

void G2lib::BaseCurve::eval_SAE_DD ( real_type s,
real_type offs,
real_type & x_DD,
real_type & y_DD ) const
inline

Compute second derivative curve at position s with offset offs (SAE).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]x_DD\(x\)-coordinate second derivative
[out]y_DD\(y\)-coordinate second derivative

◆ eval_SAE_DDD()

void G2lib::BaseCurve::eval_SAE_DDD ( real_type s,
real_type offs,
real_type & x_DDD,
real_type & y_DDD ) const
inline

Compute third derivative curve at position s with offset offs (SAE).

Parameters
[in]sparameter on the curve
[in]offsoffset of the curve
[out]x_DDD\(x\)-coordinate third derivative
[out]y_DDD\(y\)-coordinate third derivative

◆ evaluate()

virtual void G2lib::BaseCurve::evaluate ( real_type s,
real_type & th,
real_type & k,
real_type & x,
real_type & y ) const
inlinevirtual

Evaluate curve at curvilinear coordinate \(s\).

Parameters
[in]scurvilinear coordinate
[out]thangle
[out]kcurvature
[out]x\(x\)-coordinate
[out]y\(y\)-coordinate

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, and G2lib::ClothoidList.

◆ evaluate_ISO()

virtual void G2lib::BaseCurve::evaluate_ISO ( real_type s,
real_type offs,
real_type & th,
real_type & k,
real_type & x,
real_type & y ) const
inlinevirtual

Evaluate curve with offset at curvilinear coordinate \(s\) (ISO).

Parameters
[in]scurvilinear coordinate
[in]offsoffset
[out]thangle
[out]kcurvature
[out]x\(x\)-coordinate
[out]y\(y\)-coordinate

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ evaluate_SAE()

virtual void G2lib::BaseCurve::evaluate_SAE ( real_type s,
real_type offs,
real_type & th,
real_type & k,
real_type & x,
real_type & y ) const
inlinevirtual

Evaluate curve with offset at curvilinear coordinate \(s\) (SAE).

Parameters
[in]scurvilinear coordinate
[in]offsoffset
[out]thangle
[out]kcurvature
[out]x\(x\)-coordinate
[out]y\(y\)-coordinate

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ findST_ISO()

bool G2lib::BaseCurve::findST_ISO ( real_type x,
real_type y,
real_type & s,
real_type & t ) const
inline

Find the curvilinear coordinate of point \(P=(x,y)\) respect to the curve (ISO), i.e.

\[ P = C(s)+N(s)t \]

where \(C(s)\) is the curve position respect to the curvilinear coordinates and \(C(s)\) is the normal at the point \(C(s)\).

Parameters
[in]xcomponent \(x\)
[in]ycomponent \(y\)
[out]scurvilinear coordinate
[out]toffset respect to the curve of \((x,y)\)
Returns
true if the coordinate are found

◆ findST_SAE()

bool G2lib::BaseCurve::findST_SAE ( real_type x,
real_type y,
real_type & s,
real_type & t ) const
inline

Find the curvilinear coordinate of point \((x,y)\) respect to the curve (SAE), i.e.

\[ P = C(s)+N(s)t \]

where \(C(s)\) is the curve position respect to the curvilinear coordinates and \(C(s)\) is the normal at the point \(C(s)\).

Parameters
[in]xcomponent \(x\)
[in]ycomponent \(y\)
[out]scurvilinear coordinate
[out]toffset respect to the curve of \((x,y)\)
Returns
true if the coordinate are found

◆ info()

virtual void G2lib::BaseCurve::info ( ostream_type & stream) const
pure virtual

◆ intersect()

virtual void G2lib::BaseCurve::intersect ( BaseCurve const * pC,
IntersectList & ilist ) const
pure virtual

Intersect the curve with another curve.

Parameters
[in]pCsecond curve intersect
[out]ilistlist of the intersection (as parameter on the curves)

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ intersect_ISO()

virtual void G2lib::BaseCurve::intersect_ISO ( real_type offs,
BaseCurve const * pC,
real_type offs_C,
IntersectList & ilist ) const
pure virtual

Intersect the curve with another curve with offset (ISO)

Parameters
[in]offsoffset first curve
[in]pCsecond curve intersect
[in]offs_Coffset second curve
[out]ilistlist of the intersection (as parameter on the curves)

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ intersect_SAE()

void G2lib::BaseCurve::intersect_SAE ( real_type offs,
BaseCurve const * pC,
real_type offs_C,
IntersectList & ilist ) const
inline

Intersect the curve with another curve with offset (SAE).

Parameters
[in]offsoffset first curve
[in]pCsecond curve intersect
[in]offs_Coffset second curve
[out]ilistlist of the intersection (as parameter on the curves)

◆ kappa()

real_type G2lib::BaseCurve::kappa ( real_type s) const
inline

Ccurvature at curvilinear coordinate \(s\).

◆ kappa_begin()

virtual real_type G2lib::BaseCurve::kappa_begin ( ) const
inlinevirtual

Initial curvature.

Reimplemented in G2lib::Biarc, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::Dubins3p, and G2lib::Dubins.

◆ kappa_D()

real_type G2lib::BaseCurve::kappa_D ( real_type s) const
inline

Curvature derivative at curvilinear coordinate \(s\).

◆ kappa_DD()

real_type G2lib::BaseCurve::kappa_DD ( real_type s) const
inline

Curvature second derivative at curvilinear coordinate \(s\).

◆ kappa_end()

virtual real_type G2lib::BaseCurve::kappa_end ( ) const
inlinevirtual

Final curvature.

Reimplemented in G2lib::Biarc, G2lib::CircleArc, G2lib::Dubins3p, and G2lib::Dubins.

◆ length()

virtual real_type G2lib::BaseCurve::length ( ) const
pure virtual

◆ length_ISO()

virtual real_type G2lib::BaseCurve::length_ISO ( real_type offs) const
pure virtual

◆ length_SAE()

real_type G2lib::BaseCurve::length_SAE ( real_type offs) const
inline

The length of the curve with offset (SAE)

◆ nor_ISO()

void G2lib::BaseCurve::nor_ISO ( real_type s,
real_type & nx,
real_type & ny ) const
inline

Normal at curvilinear coordinate \(s\) (ISO).

◆ nor_ISO_D()

void G2lib::BaseCurve::nor_ISO_D ( real_type s,
real_type & nx_D,
real_type & ny_D ) const
inline

Normal derivative at curvilinear coordinate \(s\) (ISO).

◆ nor_ISO_DD()

void G2lib::BaseCurve::nor_ISO_DD ( real_type s,
real_type & nx_DD,
real_type & ny_DD ) const
inline

Normal second derivative at curvilinear coordinate \(s\) (ISO).

◆ nor_ISO_DDD()

void G2lib::BaseCurve::nor_ISO_DDD ( real_type s,
real_type & nx_DDD,
real_type & ny_DDD ) const
inline

Normal third derivative at curvilinear coordinate \(s\) (ISO).

◆ nor_SAE()

void G2lib::BaseCurve::nor_SAE ( real_type s,
real_type & nx,
real_type & ny ) const
inline

Normal at curvilinear coordinate \(s\) (SAE).

◆ nor_SAE_D()

void G2lib::BaseCurve::nor_SAE_D ( real_type s,
real_type & nx_D,
real_type & ny_D ) const
inline

Normal derivative at curvilinear coordinate \(s\) (SAE).

◆ nor_SAE_DD()

void G2lib::BaseCurve::nor_SAE_DD ( real_type s,
real_type & nx_DD,
real_type & ny_DD ) const
inline

Normal second derivative at curvilinear coordinate \(s\) (SAE).

◆ nor_SAE_DDD()

void G2lib::BaseCurve::nor_SAE_DDD ( real_type s,
real_type & nx_DDD,
real_type & ny_DDD ) const
inline

Normal third at curvilinear coordinate \(s\) (SAE).

◆ nx_begin_ISO()

virtual real_type G2lib::BaseCurve::nx_begin_ISO ( ) const
inlinevirtual

◆ nx_begin_SAE()

real_type G2lib::BaseCurve::nx_begin_SAE ( ) const
inline

Intial normal \(x\)-coordinate (SAE).

◆ nx_end_ISO()

virtual real_type G2lib::BaseCurve::nx_end_ISO ( ) const
inlinevirtual

◆ nx_end_SAE()

real_type G2lib::BaseCurve::nx_end_SAE ( ) const
inline

Final normal \(x\)-coordinate (SAE).

◆ nx_ISO()

real_type G2lib::BaseCurve::nx_ISO ( real_type s) const
inline

Normal \(x\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ nx_ISO_D()

real_type G2lib::BaseCurve::nx_ISO_D ( real_type s) const
inline

Normal derivative \(x\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ nx_ISO_DD()

real_type G2lib::BaseCurve::nx_ISO_DD ( real_type s) const
inline

Normal second derivative \(x\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ nx_ISO_DDD()

real_type G2lib::BaseCurve::nx_ISO_DDD ( real_type s) const
inline

Normal third derivative \(x\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ nx_SAE()

real_type G2lib::BaseCurve::nx_SAE ( real_type s) const
inline

Normal \(x\)-coordinate at curvilinear coordinate \(s\) (SAE).

◆ nx_SAE_D()

real_type G2lib::BaseCurve::nx_SAE_D ( real_type s) const
inline

Normal derivative \(x\)-coordinate at curvilinear coordinate \(s\) (SAE).

◆ nx_SAE_DD()

real_type G2lib::BaseCurve::nx_SAE_DD ( real_type s) const
inline

Normal second derivative \(x\)-coordinate at curvilinear coordinate \(s\) (SAE).

◆ nx_SAE_DDD()

real_type G2lib::BaseCurve::nx_SAE_DDD ( real_type s) const
inline

Normal third derivative \(x\)-coordinate at curvilinear coordinate \(s\) (SAE).

◆ ny_begin_ISO()

virtual real_type G2lib::BaseCurve::ny_begin_ISO ( ) const
inlinevirtual

◆ ny_begin_SAE()

real_type G2lib::BaseCurve::ny_begin_SAE ( ) const
inline

Intial normal \(y\)-coordinate (SAE).

◆ ny_end_ISO()

virtual real_type G2lib::BaseCurve::ny_end_ISO ( ) const
inlinevirtual

◆ ny_end_SAE()

real_type G2lib::BaseCurve::ny_end_SAE ( ) const
inline

Intial normal \(y\)-coordinate (SAE).

◆ ny_ISO()

real_type G2lib::BaseCurve::ny_ISO ( real_type s) const
inline

Normal \(y\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ ny_ISO_D()

real_type G2lib::BaseCurve::ny_ISO_D ( real_type s) const
inline

Normal derivative \(y\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ ny_ISO_DD()

real_type G2lib::BaseCurve::ny_ISO_DD ( real_type s) const
inline

Normal second derivative \(y\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ ny_ISO_DDD()

real_type G2lib::BaseCurve::ny_ISO_DDD ( real_type s) const
inline

Normal third derivative \(y\)-coordinate at curvilinear coordinate \(s\) (ISO).

◆ ny_SAE()

real_type G2lib::BaseCurve::ny_SAE ( real_type s) const
inline

Normal \(y\)-coordinate at curvilinear coordinate \(s\) (ISO)

◆ ny_SAE_D()

real_type G2lib::BaseCurve::ny_SAE_D ( real_type s) const
inline

Normal derivative \(y\)-coordinate at curvilinear coordinate \(s\) (SAE).

◆ ny_SAE_DD()

real_type G2lib::BaseCurve::ny_SAE_DD ( real_type s) const
inline

Normal second derivative \(x\)-coordinate at curvilinear coordinate \(s\) (SAE).

◆ ny_SAE_DDD()

real_type G2lib::BaseCurve::ny_SAE_DDD ( real_type s) const
inline

Normal third derivative \(y\)-coordinate at curvilinear coordinate \(s\) (SAE).

◆ reverse()

virtual void G2lib::BaseCurve::reverse ( )
pure virtual

◆ rotate()

virtual void G2lib::BaseCurve::rotate ( real_type angle,
real_type cx,
real_type cy )
pure virtual

Rotate curve by angle \(\theta\) centered at point \((c_x,c_y)\).

Parameters
[in]angleangle \(\theta\)
[in]cx\(c_x\)
[in]cy\(c_y\)

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ scale()

virtual void G2lib::BaseCurve::scale ( real_type sc)
pure virtual

◆ tg()

virtual void G2lib::BaseCurve::tg ( real_type s,
real_type & tg_x,
real_type & tg_y ) const
inlinevirtual

Tangent at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ tg_D()

virtual void G2lib::BaseCurve::tg_D ( real_type s,
real_type & tg_x_D,
real_type & tg_y_D ) const
inlinevirtual

Tangent derivative at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ tg_DD()

virtual void G2lib::BaseCurve::tg_DD ( real_type s,
real_type & tg_x_DD,
real_type & tg_y_DD ) const
inlinevirtual

Tangent second derivative at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ tg_DDD()

virtual void G2lib::BaseCurve::tg_DDD ( real_type s,
real_type & tg_x_DDD,
real_type & tg_y_DDD ) const
inlinevirtual

Tangent third derivative at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ theta()

virtual real_type G2lib::BaseCurve::theta ( real_type s) const
pure virtual

◆ theta_begin()

virtual real_type G2lib::BaseCurve::theta_begin ( ) const
inlinevirtual

◆ theta_D()

virtual real_type G2lib::BaseCurve::theta_D ( real_type s) const
pure virtual

Angle derivative (curvature) at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ theta_DD()

virtual real_type G2lib::BaseCurve::theta_DD ( real_type s) const
pure virtual

Angle second derivative (devitive of curvature) at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ theta_DDD()

virtual real_type G2lib::BaseCurve::theta_DDD ( real_type s) const
pure virtual

◆ theta_end()

virtual real_type G2lib::BaseCurve::theta_end ( ) const
inlinevirtual

◆ translate()

virtual void G2lib::BaseCurve::translate ( real_type tx,
real_type ty )
pure virtual

◆ trim()

virtual void G2lib::BaseCurve::trim ( real_type s_begin,
real_type s_end )
pure virtual

◆ tx()

virtual real_type G2lib::BaseCurve::tx ( real_type s) const
virtual

Tangent \(x\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ tx_begin()

virtual real_type G2lib::BaseCurve::tx_begin ( ) const
inlinevirtual

◆ tx_D()

virtual real_type G2lib::BaseCurve::tx_D ( real_type s) const
virtual

Tangent derivative \(x\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ tx_DD()

virtual real_type G2lib::BaseCurve::tx_DD ( real_type s) const
virtual

Tangent second derivative \(x\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ tx_DDD()

virtual real_type G2lib::BaseCurve::tx_DDD ( real_type s) const
virtual

Tangent third derivative \(x\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ tx_end()

virtual real_type G2lib::BaseCurve::tx_end ( ) const
inlinevirtual

◆ ty()

virtual real_type G2lib::BaseCurve::ty ( real_type s) const
virtual

Tangent \(y\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ ty_begin()

virtual real_type G2lib::BaseCurve::ty_begin ( ) const
inlinevirtual

◆ ty_D()

virtual real_type G2lib::BaseCurve::ty_D ( real_type s) const
virtual

Tangent derivative \(y\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ ty_DD()

virtual real_type G2lib::BaseCurve::ty_DD ( real_type s) const
virtual

Tangent second derivative \(y\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ ty_DDD()

virtual real_type G2lib::BaseCurve::ty_DDD ( real_type s) const
virtual

Tangent third derivative \(y\)-coordinate at curvilinear coordinate \(s\).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ ty_end()

virtual real_type G2lib::BaseCurve::ty_end ( ) const
inlinevirtual

◆ type()

virtual CurveType G2lib::BaseCurve::type ( ) const
pure virtual

◆ X()

virtual real_type G2lib::BaseCurve::X ( real_type s) const
pure virtual

◆ x_begin()

virtual real_type G2lib::BaseCurve::x_begin ( ) const
inlinevirtual

◆ x_begin_ISO()

virtual real_type G2lib::BaseCurve::x_begin_ISO ( real_type offs) const
inlinevirtual

Initial \(x\)-coordinate with offset (ISO standard).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ x_begin_SAE()

real_type G2lib::BaseCurve::x_begin_SAE ( real_type offs) const
inline

Initial \(x\)-coordinate with offset (SAE standard).

◆ X_D()

virtual real_type G2lib::BaseCurve::X_D ( real_type s) const
pure virtual

\(x\)-coordinate derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ X_DD()

virtual real_type G2lib::BaseCurve::X_DD ( real_type s) const
pure virtual

\(x\)-coordinate second derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ X_DDD()

virtual real_type G2lib::BaseCurve::X_DDD ( real_type s) const
pure virtual

\(x\)-coordinate third derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ x_end()

virtual real_type G2lib::BaseCurve::x_end ( ) const
inlinevirtual

◆ x_end_ISO()

virtual real_type G2lib::BaseCurve::x_end_ISO ( real_type offs) const
inlinevirtual

Final \(x\)-coordinate with offset (ISO standard).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ x_end_SAE()

real_type G2lib::BaseCurve::x_end_SAE ( real_type offs) const
inline

Final \(y\)-coordinate with offset (SAE standard).

◆ X_ISO()

virtual real_type G2lib::BaseCurve::X_ISO ( real_type s,
real_type offs ) const
virtual

\(x\)-coordinate at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ X_ISO_D()

virtual real_type G2lib::BaseCurve::X_ISO_D ( real_type s,
real_type offs ) const
virtual

\(x\)-coordinate derivative at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ X_ISO_DD()

virtual real_type G2lib::BaseCurve::X_ISO_DD ( real_type s,
real_type offs ) const
virtual

\(x\)-coordinate second derivative at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ X_ISO_DDD()

virtual real_type G2lib::BaseCurve::X_ISO_DDD ( real_type s,
real_type offs ) const
virtual

\(x\)-coordinate third derivative at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ X_SAE()

real_type G2lib::BaseCurve::X_SAE ( real_type s,
real_type offs ) const
inline

\(x\)-coordinate at curvilinear coordinate \(s\) with offset offs (SAE).

◆ X_SAE_D()

real_type G2lib::BaseCurve::X_SAE_D ( real_type s,
real_type offs ) const
inline

\(x\)-coordinate derivative at curvilinear coordinate \(s\) with offset offs (SAE).

◆ X_SAE_DD()

real_type G2lib::BaseCurve::X_SAE_DD ( real_type s,
real_type offs ) const
inline

\(x\)-coordinate second derivative at curvilinear coordinate \(s\) with offset offs (SAE).

◆ X_SAE_DDD()

real_type G2lib::BaseCurve::X_SAE_DDD ( real_type s,
real_type offs ) const
inline

\(x\)-coordinate third derivative at curvilinear coordinate \(s\) with offset offs (SAE).

◆ Y()

virtual real_type G2lib::BaseCurve::Y ( real_type s) const
pure virtual

◆ y_begin()

virtual real_type G2lib::BaseCurve::y_begin ( ) const
inlinevirtual

◆ y_begin_ISO()

virtual real_type G2lib::BaseCurve::y_begin_ISO ( real_type offs) const
inlinevirtual

Initial \(y\)-coordinate with offset (ISO standard).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ y_begin_SAE()

real_type G2lib::BaseCurve::y_begin_SAE ( real_type offs) const
inline

Initial \(y\)-coordinate with offset (SAE standard).

◆ Y_D()

virtual real_type G2lib::BaseCurve::Y_D ( real_type s) const
pure virtual

\(y\)-coordinate derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ Y_DD()

virtual real_type G2lib::BaseCurve::Y_DD ( real_type s) const
pure virtual

\(y\)-coordinate second derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ Y_DDD()

virtual real_type G2lib::BaseCurve::Y_DDD ( real_type s) const
pure virtual

\(y\)-coordinate third derivative at curvilinear coordinate \(s\).

Implemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, G2lib::Dubins3p, G2lib::Dubins, G2lib::LineSegment, and G2lib::PolyLine.

◆ y_end()

virtual real_type G2lib::BaseCurve::y_end ( ) const
inlinevirtual

◆ y_end_ISO()

virtual real_type G2lib::BaseCurve::y_end_ISO ( real_type offs) const
inlinevirtual

Final \(y\)-coordinate with offset (ISO standard).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ y_end_SAE()

real_type G2lib::BaseCurve::y_end_SAE ( real_type offs) const
inline

Final \(y\)-coordinate with offset (ISO standard).

◆ Y_ISO()

virtual real_type G2lib::BaseCurve::Y_ISO ( real_type s,
real_type offs ) const
virtual

\(y\)-coordinate at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ Y_ISO_D()

virtual real_type G2lib::BaseCurve::Y_ISO_D ( real_type s,
real_type offs ) const
virtual

\(y\)-coordinate derivative at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ Y_ISO_DD()

virtual real_type G2lib::BaseCurve::Y_ISO_DD ( real_type s,
real_type offs ) const
virtual

\(y\)-coordinate second derivative at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ Y_ISO_DDD()

virtual real_type G2lib::BaseCurve::Y_ISO_DDD ( real_type s,
real_type offs ) const
virtual

\(y\)-coordinate third derivative at curvilinear coordinate \(s\) with offset offs (ISO).

Reimplemented in G2lib::Biarc, G2lib::BiarcList, G2lib::CircleArc, G2lib::ClothoidCurve, G2lib::ClothoidList, and G2lib::LineSegment.

◆ Y_SAE()

real_type G2lib::BaseCurve::Y_SAE ( real_type s,
real_type offs ) const
inline

\(y\)-coordinate at curvilinear coordinate \(s\) with offset offs (SAE).

◆ Y_SAE_D()

real_type G2lib::BaseCurve::Y_SAE_D ( real_type s,
real_type offs ) const
inline

\(y\)-coordinate derivative at curvilinear coordinate \(s\) with offset offs (SAE).

◆ Y_SAE_DD()

real_type G2lib::BaseCurve::Y_SAE_DD ( real_type s,
real_type offs ) const
inline

\(y\)-coordinate second derivative at curvilinear coordinate \(s\) with offset offs (SAE).

◆ Y_SAE_DDD()

real_type G2lib::BaseCurve::Y_SAE_DDD ( real_type s,
real_type offs ) const
inline

\(y\)-coordinate third derivative at curvilinear coordinate \(s\) with offset offs (SAE).


The documentation for this class was generated from the following file:
  • /Users/enrico/Ricerca/develop/PINS/pins-mechatronix/LibSources/submodules/Clothoids/src/Clothoids/BaseCurve.hxx