![]() |
UNIVERS
15.3
UNIVERS base processing software API
|
#include <base_splines.hpp>
Public Member Functions | |
| Spl_U3dSimpleBspl3Curve (const Spl_U3dBspl3AbstractMatrix *bm, const double(&cp)[4]) | |
| virtual | ~Spl_U3dSimpleBspl3Curve () |
| double | get (double p) const |
| double | getSp (double p) const |
| double | getSpp (double p) const |
| void | getCoeffs (double(&c)[4]) const |
| double | getMaxLineDeviation (double k, double b, double p1, double p2) |
| double | getLineDeviation (double k, double b, double p) |
Protected Attributes | |
| const Spl_U3dBspl3AbstractMatrix * | m_bm |
| double | m_rv [4] |
Simple base spline curve object
| Spl_U3dSimpleBspl3Curve::Spl_U3dSimpleBspl3Curve | ( | const Spl_U3dBspl3AbstractMatrix * | bm, |
| const double(&) | cp[4] | ||
| ) |
Default constructor with base spline matrix pointer and control points provided. Base matrix is not being copied while construction, just pointer.
|
inlinevirtual |
Destruct object
| double Spl_U3dSimpleBspl3Curve::get | ( | double | p | ) | const |
Return spline value for provided parameter S=S(p), p=0..1
|
inline |
Return spline curve coefficients (c[0]+c[1]t+c[2]t^2+c[3]t^3)
| double Spl_U3dSimpleBspl3Curve::getLineDeviation | ( | double | k, |
| double | b, | ||
| double | p | ||
| ) |
Get line deviation between l(p)=kp+b and spline
| double Spl_U3dSimpleBspl3Curve::getMaxLineDeviation | ( | double | k, |
| double | b, | ||
| double | p1, | ||
| double | p2 | ||
| ) |
Get maximal spline deviation from line l(p)=kp+b in the range p1..p2
| double Spl_U3dSimpleBspl3Curve::getSp | ( | double | p | ) | const |
Return partial derivative of spline by p
| double Spl_U3dSimpleBspl3Curve::getSpp | ( | double | p | ) | const |
Return second order partial derivative by p and p
|
protected |
Base spline matrix pointer.
|
protected |
Result simple vector (m_rv = m_bm*(control_points))
1.8.5