#include <cl_Bezier.hpp>
Public Member Functions | |
| Bezier (const real aX0=0.0, const real aY0=0.0, const real adYdx0=0.0, const real aX1=1.0, const real aY1=1.0, const real adYdx1=0.0, const BezierType aType=BezierType::Horizontal) | |
| Bezier (const Vector< real > &aX, const Vector< real > &aY, const BezierType aType=BezierType::Horizontal) | |
| ~Bezier ()=default | |
| Vector< real > & | basis_x () |
| expose the x-coordinates of the basis | |
| const Vector< real > & | basis_x () const |
| Vector< real > & | basis_y () |
| expose the y-coordinates of the basis | |
| const Vector< real > & | basis_y () const |
| real | x_by_xi (const real aXi) const |
| The parameter coordinate goes from -1 <= xi <= 1. | |
| real | y_by_xi (const real aXi) const |
| The parameter coordinate goes from -1 <= xi <= 1. | |
| real | xi_by_x (const real aX) const |
| Inverts the function x_by_xi. | |
| real | xi_by_y (const real aY) const |
| Inverts the function y_by_xi. | |
| real | x (const real aY) const |
| x-coordinate as funciton of the y-coordinate | |
| real | y (const real aX) const |
| y-coordinate as funciton of the x-coordinate | |
| void | point (const real aXi, real &aX, real &aY) const |
| point as function of parameter coordinate | |
| void | dpoint (const real aXi, real &adXdXi, real &adYdXi) const |
| tangent vector as function of parameter coordinate | |
| void | ddpoint (const real aXi, real &ad2XdXi2, real &ad2YdXi2) const |
| curvature vector as function of parameter coordinate | |
| void | dddpoint (real &ad3XdXi3, real &ad3YdXi3) const |
| aberrancy vector as function of parameter coordinate | |
| real | dydx (const real aX) const |
| derivative of Y with respect to X | |
| real | dxdy (const real aY) const |
| derivative of X with respect to Y | |
| real | d2ydx2 (const real aX) const |
| second derivative of Y with respect to X | |
| real | d2xdy2 (const real aY) const |
| second derivative of X with respect to Y | |
| real | d3ydx3 (const real aX) const |
| third derivative of Y with respect to X | |
| real | d3xdy3 (const real aY) const |
| third derivative of X with respect to Y | |
| real | compute_length (const uint aNumIntegrationPoints=21) const |
| computes the length of the curve | |
| real | compute_length (const Vector< double > &aW, const Vector< double > &aXi) const |
| computes the length of the curve, but provide points and weights note that we need the doubles here, not the reals | |
| void | compute_basis_xwise (const real aX0, const real aY0, const real adYdx0, const real aX1, const real aY1, const real adYdx1) |
| void | compute_basis_ywise (const real aX0, const real aY0, const real adYdx0, const real aX1, const real aY1, const real adYdx1) |
| belfem::Bezier::Bezier | ( | const real | aX0 = 0.0, |
| const real | aY0 = 0.0, | ||
| const real | adYdx0 = 0.0, | ||
| const real | aX1 = 1.0, | ||
| const real | aY1 = 1.0, | ||
| const real | adYdx1 = 0.0, | ||
| const BezierType | aType = BezierType::Horizontal ) |
| belfem::Bezier::Bezier | ( | const Vector< real > & | aX, |
| const Vector< real > & | aY, | ||
| const BezierType | aType = BezierType::Horizontal ) |
|
default |
| void belfem::Bezier::compute_basis_xwise | ( | const real | aX0, |
| const real | aY0, | ||
| const real | adYdx0, | ||
| const real | aX1, | ||
| const real | aY1, | ||
| const real | adYdx1 ) |
| void belfem::Bezier::compute_basis_ywise | ( | const real | aX0, |
| const real | aY0, | ||
| const real | adYdx0, | ||
| const real | aX1, | ||
| const real | aY1, | ||
| const real | adYdx1 ) |
computes the length of the curve
| real belfem::Bezier::compute_length | ( | const Vector< double > & | aW, |
| const Vector< double > & | aXi ) const |
computes the length of the curve, but provide points and weights note that we need the doubles here, not the reals
computes the length of the curve, but provide points and weights
second derivative of X with respect to Y
| aY |
second derivative of Y with respect to X
| aX |
third derivative of X with respect to Y
| aY |
third derivative of Y with respect to X
| aX |
aberrancy vector as function of parameter coordinate
| ad3XdXi3 | |
| ad3YdXi3 |
curvature vector as function of parameter coordinate
| aXi | |
| ad2XdXi2 | |
| ad2YdXi2 |
tangent vector as function of parameter coordinate
| aXi | |
| adXdXi | |
| adYdXi |
derivative of X with respect to Y
| aY |
derivative of Y with respect to X
| aX |
point as function of parameter coordinate
| aXi | |
| aX | |
| aY |
x-coordinate as funciton of the y-coordinate
| aY |
The parameter coordinate goes from -1 <= xi <= 1.
This funciton computes the spatial x-coordinate
| aXi |
Inverts the function x_by_xi.
Queries outside [ mX(0), mX(3) ] saturate to xi = -1 / xi = +1.
| aX |
Inverts the function y_by_xi.
Queries outside [ mY(0), mY(3) ] saturate to xi = -1 / xi = +1.
| aY |
y-coordinate as funciton of the x-coordinate
| aX |
The parameter coordinate goes from -1 <= xi <= 1.
This funciton computes the spatial y-coordinate
| aXi |