#include <param_func.hpp>
Public Member Functions | |
TNumType | computeFuncDiff1 (const std::size_t &_funcIdx) const |
Computes 1st derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc. More... | |
TNumType | computeFuncDiff2 (const std::size_t &_funcIdx) const |
Computes 2nd derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc. More... | |
TNumType | computeFuncInt1 (const std::size_t &_funcIdx) const |
Computes integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_]. More... | |
TNumType | computeFuncInt2 (const std::size_t &_funcIdx) const |
Computes double integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_]. More... | |
TNumType | computeFuncVal (const std::size_t &_funcIdx) const |
Computes value of parametric function with index _funcIdx at parametric arc set by setEvalArc. More... | |
FuncCtrlPtType & | ctrlPt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) |
Access of a parametric function control point. More... | |
const FuncCtrlPtType & | ctrlPt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) const |
Const access of a parametric function control point. More... | |
TNumType & | ctrlPtVal (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim=CtrlPtDim::VAL) |
Access of a parametric function control point dimension. More... | |
const TNumType & | ctrlPtVal (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim=CtrlPtDim::VAL) const |
Const of a parametric function control point dimension. More... | |
std::size_t | funcCtrlPtSize (const std::size_t &_i) const |
Number of control points for a parametric function. More... | |
TNumType & | funcsArc (const std::size_t &_i, const std::size_t &_j) |
Access to the arc parameter vector at index _i, control point _j. More... | |
const TNumType & | funcsArc (const std::size_t &_i, const std::size_t &_j) const |
Const access the arc parameter vector at index _i, control point _j. More... | |
TNumType & | funcsArcBegin () |
Access to the initial value of the arc parametrization. More... | |
const TNumType & | funcsArcBegin () const |
Const access to the initial value of the arc parametrization. More... | |
TNumType & | funcsArcEnd () |
Access to the final value of the arc parametrization. More... | |
const TNumType & | funcsArcEnd () const |
Const access to the finall value of the arc parametrization. More... | |
const TNumType & | funcsArcEval () const |
Const access to the active evaluation point arc parametrization. More... | |
std::size_t | funcsArcSize () const |
Number of arc parametrizations. More... | |
std::size_t | funcsArcSize (const std::size_t &_i) const |
Number of control points of parametrization _i. More... | |
std::size_t | funcsSize () const |
Number of parametric functions. More... | |
void | init (const std::vector< ParamFuncsStructure > &_paramFuncsStructure) |
Initializes the control structure. More... | |
ParamFuncsBaseVirt & | operator= (const ParamFuncsBaseVirt &)=default |
ParamFuncsBaseVirt & | operator= (ParamFuncsBaseVirt &&)=default |
ParamFuncsBaseVirt ()=default | |
ParamFuncsBaseVirt (const ParamFuncsBaseVirt &)=default | |
ParamFuncsBaseVirt (ParamFuncsBaseVirt &&)=default | |
void | precompute () |
Precomputes cached data. More... | |
void | setEvalArc (const TNumType &_arcEval, const eAG &_eAG=eAG::NONE) |
Sets parametric function evaluation arc. More... | |
void | shiftStartCtrlPt (const TNumType &_dt) |
virtual | ~ParamFuncsBaseVirt ()=default |
Protected Types | |
using | eAG = EvalArcGuarantee |
using | FuncCtrlPtType = FuncCtrlPt< TNumType > |
Private Member Functions | |
virtual TNumType | computeFuncDiff1ImplVirt (const std::size_t &_funcIdx) const =0 |
virtual TNumType | computeFuncDiff2ImplVirt (const std::size_t &_funcIdx) const =0 |
virtual TNumType | computeFuncInt1ImplVirt (const std::size_t &_funcIdx) const =0 |
virtual TNumType | computeFuncInt2ImplVirt (const std::size_t &_funcIdx) const =0 |
virtual TNumType | computeFuncValImplVirt (const std::size_t &_funcIdx) const =0 |
virtual FuncCtrlPtType & | ctrlPtImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx)=0 |
virtual const FuncCtrlPtType & | ctrlPtImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) const =0 |
virtual TNumType & | ctrlPtValImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim)=0 |
virtual const TNumType & | ctrlPtValImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim) const =0 |
virtual std::size_t | funcCtrlPtSizeImplVirt (const std::size_t &_i) const =0 |
virtual TNumType & | funcsArcBeginImplVirt ()=0 |
virtual const TNumType & | funcsArcBeginImplVirt () const =0 |
virtual TNumType & | funcsArcEndImplVirt ()=0 |
virtual const TNumType & | funcsArcEndImplVirt () const =0 |
virtual const TNumType & | funcsArcEvalImplVirt () const =0 |
virtual TNumType & | funcsArcImplVirt (const std::size_t &_i, const std::size_t &_j)=0 |
virtual const TNumType & | funcsArcImplVirt (const std::size_t &_i, const std::size_t &_j) const =0 |
virtual std::size_t | funcsArcSizeImplVirt () const =0 |
virtual std::size_t | funcsArcSizeImplVirt (const std::size_t &_i) const =0 |
virtual std::size_t | funcsSizeImplVirt () const =0 |
virtual void | initImplVirt (const std::vector< ParamFuncsStructure > &_paramFuncsStructure)=0 |
virtual void | precomputeImplVirt ()=0 |
virtual void | setEvalArcImplVirt (const TNumType &_arcEval, const eAG &_eAG)=0 |
virtual void | shiftStartCtrlPtImplVirt (const TNumType &_dt)=0 |
Definition at line 320 of file param_func.hpp.
|
protected |
Definition at line 323 of file param_func.hpp.
|
protected |
Definition at line 326 of file param_func.hpp.
|
default |
|
virtualdefault |
|
default |
|
default |
|
inline |
Computes 1st derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc.
Definition at line 490 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Computes 2nd derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc.
Definition at line 497 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Computes integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_].
Definition at line 504 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Computes double integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_].
Definition at line 511 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Computes value of parametric function with index _funcIdx at parametric arc set by setEvalArc.
Definition at line 483 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Access of a parametric function control point.
Definition at line 438 of file param_func.hpp.
|
inline |
Const access of a parametric function control point.
Definition at line 444 of file param_func.hpp.
|
privatepure virtual |
|
privatepure virtual |
|
inline |
Access of a parametric function control point dimension.
Definition at line 450 of file param_func.hpp.
|
inline |
Const of a parametric function control point dimension.
Definition at line 457 of file param_func.hpp.
|
privatepure virtual |
|
privatepure virtual |
|
inline |
Number of control points for a parametric function.
Definition at line 390 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Access to the arc parameter vector at index _i, control point _j.
Definition at line 426 of file param_func.hpp.
|
inline |
Const access the arc parameter vector at index _i, control point _j.
Definition at line 432 of file param_func.hpp.
|
inline |
Access to the initial value of the arc parametrization.
Definition at line 396 of file param_func.hpp.
|
inline |
Const access to the initial value of the arc parametrization.
Definition at line 402 of file param_func.hpp.
|
privatepure virtual |
|
privatepure virtual |
|
inline |
Access to the final value of the arc parametrization.
Definition at line 408 of file param_func.hpp.
|
inline |
Const access to the finall value of the arc parametrization.
Definition at line 414 of file param_func.hpp.
|
privatepure virtual |
|
privatepure virtual |
|
inline |
Const access to the active evaluation point arc parametrization.
Definition at line 420 of file param_func.hpp.
|
privatepure virtual |
|
privatepure virtual |
|
privatepure virtual |
|
inline |
Number of arc parametrizations.
Definition at line 378 of file param_func.hpp.
|
inline |
Number of control points of parametrization _i.
Definition at line 384 of file param_func.hpp.
|
privatepure virtual |
|
privatepure virtual |
|
inline |
Number of parametric functions.
Definition at line 372 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Initializes the control structure.
_paramFuncsStructure | parametric functions structure |
Note: _paramFuncsStructure[].ctrlPtsArcRefIdx has to be consistent (first function has to have value 0. Next functions can only reference previous referenced indexes or increse maximum reference index by 1). Some examples:
_paramFuncsStructure[].ctrlPtsArcRefIdx = [0,0,0] ok! means one arc parameter set for all 3 functions;
_paramFuncsStructure[].ctrlPtsArcRefIdx = [0,1,0] ok! means one arc parameter set for function 0 and 2 and another arc parameter set for function 1;
_paramFuncsStructure[].ctrlPtsArcRefIdx = [0,1,2] ok! means separate arc parameter set for each function;
_paramFuncsStructure[].ctrlPtsArcRefIdx = [0,2,1] inconsistent! indexes not consistent step-increasing;
Definition at line 366 of file param_func.hpp.
|
privatepure virtual |
|
default |
|
default |
|
inline |
Precomputes cached data.
Definition at line 471 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Sets parametric function evaluation arc.
Definition at line 477 of file param_func.hpp.
|
privatepure virtual |
|
inline |
Definition at line 464 of file param_func.hpp.
|
privatepure virtual |