Модуль сплайнов и аппроксимации сплайнами
Этот модуль предоставляет простой многомерный класс сплайнов, обеспечивая основные возможности для аппроксимации сплайном набора точек.
#include <unsupported/Eigen/Splines>
| класс | Eigen::Spline< _Scalar, _Dim, _Degree > |
| Класс, представляющий многомерные кривые сплайнов. Подробнее... |
|
| структура | Eigen::SplineFitting< SplineType > |
| Методы аппроксимации сплайном. Подробнее... |
|
| структура | Eigen::SplineTraits< Spline< _Scalar, _Dim, _Degree >, _DerivativeOrder > |
| Атрибуты времени компиляции класса Spline для фиксированной степени. Подробнее... |
|
| структура | Eigen::SplineTraits< Spline< _Scalar, _Dim, _Degree >, Dynamic > |
| Атрибуты времени компиляции класса Spline для динамической степени. Подробнее... |
|
| шаблон<typename PointArrayType , typename KnotVectorType > | |
| void | Eigen::ChordLengths (const PointArrayType &pts, KnotVectorType &chord_lengths) |
| Вычисляет параметры длины хорды, необходимые для интерполяции сплайном. Подробнее... |
|
| шаблон<typename KnotVectorType > | |
| void | Eigen::KnotAveraging (const KnotVectorType ¶meters, DenseIndex degree, KnotVectorType &knots) |
| Вычисляет средние значения узлов. Подробнее... |
|
| шаблон<typename KnotVectorType , typename ParameterVectorType , typename IndexArray > | |
| void | Eigen::KnotAveragingWithDerivatives (const ParameterVectorType ¶meters, const unsigned int degree, const IndexArray &derivativeIndices, KnotVectorType &knots) |
| Вычисляет средние значения узлов при наличии ограничений производной. Обратите внимание, что это техническая интерпретация упомянутой статьи, так как алгоритм, описанный в ней, неверен. Подробнее... |
|
ChordLengths()
| void Eigen::ChordLengths | ( | const PointArrayType & | pts, |
| KnotVectorType & | chord_lengths | ||
| ) |
Вычисляет параметры длины хорды, необходимые для интерполяции сплайном.
- Параметры
-
[in] pts Данные точки, для которых должен быть рассчитан сплайн. [out] chord_lengths Полученный вектор длины хорды.
- См. также
- Les Piegl and Wayne Tiller, The NURBS book (2nd ed.), 1997, 9.2.1 Global Curve Interpolation to Point Data
KnotAveraging()
| void Eigen::KnotAveraging | ( | const KnotVectorType & | parameters, |
| DenseIndex | degree, | ||
| KnotVectorType & | knots | ||
| ) |
Вычисляет средние значения узлов.
Узлы вычисляются как
\begin{align*} u_0 & = \hdots = u_p = 0 \\ u_{m-p} & = \hdots = u_{m} = 1 \\ u_{j+p} & = \frac{1}{p}\sum_{i=j}^{j+p-1}\bar{u}_i \quad\quad j=1,\hdots,n-p \end{align*}
где \(p\) - степень, а \(m+1\) - количество узлов требуемого интерполирующего сплайна.
- Параметры
-
[in] parameters Вводные параметры. Для каждой точки интерполяции. [in] degree Степень сплайна, используемая при интерполяции. [out] knots Выводной вектор узлов.
- См. также
- Les Piegl and Wayne Tiller, The NURBS book (2nd ed.), 1997, 9.2.1 Global Curve Interpolation to Point Data
KnotAveragingWithDerivatives()
| void Eigen::KnotAveragingWithDerivatives | ( | const ParameterVectorType & | parameters, |
| const unsigned int | degree, | ||
| const IndexArray & | derivativeIndices, | ||
| KnotVectorType & | knots | ||
| ) |
Вычисляет средние значения узлов при наличии ограничений производной. Обратите внимание, что это техническая интерпретация упомянутой статьи, так как алгоритм, описанный в ней, неверен.
- Параметры
-
[in] parameters Параметры, в которых интерполирующий B-сплайн пересекает заданные точки интерполяции. Параметры предполагаются неубывающей последовательностью. [in] degree Степень интерполирующего B-сплайна. Должно быть больше нуля. [in] derivativeIndices Индексы, соответствующие параметрам, в которых существуют ограничения производной. Индексы предполагаются неубывающей последовательностью. [out] knots Вычисленный вектор узлов. Они будут возвращены как неубывающая последовательность
- См. также
- Les A. Piegl, Khairan Rajab, Volha Smarodzinana. 2008. Curve interpolation with directional constraints for engineering design. Engineering with Computers
© Eigen.
Licensed under the MPL2 License.
https://eigen.tuxfamily.org/dox/unsupported/group__Splines__Module.html