Fitting a 2D B-Spline curve to 2D point-clouds using squared-distance-minimization Based on paper: TODO. More...
#include <fitting_curve_2d_sdm.h>

Public Member Functions | |
| virtual void | assemble (const Parameter ¶meter) |
| Assemble the system of equations for fitting. | |
| FittingCurve2dSDM (int order, NurbsDataCurve2d *data) | |
| Constructor initializing B-Spline curve using initNurbsCurve2D(...). | |
| FittingCurve2dSDM (NurbsDataCurve2d *data, const ON_NurbsCurve &nc) | |
| Constructor initializing with the B-Spline curve given in argument 2. | |
| virtual double | solve (double damp=1.0) |
| Solve system of equations using Eigen or UmfPack (can be defined in on_nurbs.cmake), and updates B-Spline curve if a solution can be obtained. | |
| virtual double | updateCurve (double damp) |
| Update curve according to the current system of equations. | |
Protected Member Functions | |
| virtual void | addCageRegularisation (double weight, unsigned &row) |
| Add minimization constraint: smoothness by control point regularisation. | |
| virtual void | addPointConstraint (const double ¶m, const Eigen::Vector2d &point, const Eigen::Vector2d &normal, const Eigen::Vector2d &tangent, double rho, double d, double weight, unsigned &row) |
| Add minimization constraint: point-to-surface distance (squared-distance-minimization). | |
| virtual void | assembleInterior (double wInt, double rScale, unsigned &row) |
| Assemble point-to-surface constraints. | |
Fitting a 2D B-Spline curve to 2D point-clouds using squared-distance-minimization Based on paper: TODO.
Definition at line 56 of file fitting_curve_2d_sdm.h.
| FittingCurve2dSDM::FittingCurve2dSDM | ( | int | order, |
| NurbsDataCurve2d * | data | ||
| ) |
Constructor initializing B-Spline curve using initNurbsCurve2D(...).
| [in] | order | the polynomial order of the B-Spline curve. |
| [in] | data | pointer to the 2D point-cloud data to be fit. |
Definition at line 44 of file fitting_curve_2d_sdm.cpp.
| FittingCurve2dSDM::FittingCurve2dSDM | ( | NurbsDataCurve2d * | data, |
| const ON_NurbsCurve & | nc | ||
| ) |
Constructor initializing with the B-Spline curve given in argument 2.
| [in] | data | pointer to the 2D point-cloud data to be fit. |
| [in] | nc | B-Spline curve used for fitting. |
Definition at line 50 of file fitting_curve_2d_sdm.cpp.
| void FittingCurve2dSDM::addCageRegularisation | ( | double | weight, |
| unsigned & | row | ||
| ) | [protected, virtual] |
Add minimization constraint: smoothness by control point regularisation.
Reimplemented from pcl::on_nurbs::FittingCurve2dPDM.
Definition at line 192 of file fitting_curve_2d_sdm.cpp.
| void FittingCurve2dSDM::addPointConstraint | ( | const double & | param, |
| const Eigen::Vector2d & | point, | ||
| const Eigen::Vector2d & | normal, | ||
| const Eigen::Vector2d & | tangent, | ||
| double | rho, | ||
| double | d, | ||
| double | weight, | ||
| unsigned & | row | ||
| ) | [protected, virtual] |
Add minimization constraint: point-to-surface distance (squared-distance-minimization).
Definition at line 142 of file fitting_curve_2d_sdm.cpp.
| void FittingCurve2dSDM::assemble | ( | const Parameter & | parameter | ) | [virtual] |
Assemble the system of equations for fitting.
Reimplemented from pcl::on_nurbs::FittingCurve2dPDM.
Definition at line 57 of file fitting_curve_2d_sdm.cpp.
| void FittingCurve2dSDM::assembleInterior | ( | double | wInt, |
| double | rScale, | ||
| unsigned & | row | ||
| ) | [protected, virtual] |
Assemble point-to-surface constraints.
Reimplemented from pcl::on_nurbs::FittingCurve2dPDM.
Definition at line 212 of file fitting_curve_2d_sdm.cpp.
| double FittingCurve2dSDM::solve | ( | double | damp = 1.0 | ) | [virtual] |
Solve system of equations using Eigen or UmfPack (can be defined in on_nurbs.cmake), and updates B-Spline curve if a solution can be obtained.
Reimplemented from pcl::on_nurbs::FittingCurve2dPDM.
Definition at line 89 of file fitting_curve_2d_sdm.cpp.
| double FittingCurve2dSDM::updateCurve | ( | double | damp | ) | [virtual] |
Update curve according to the current system of equations.
| [in] | damp | damping factor from one iteration to the other. |
Reimplemented from pcl::on_nurbs::FittingCurve2dPDM.
Definition at line 100 of file fitting_curve_2d_sdm.cpp.