#include <fitting_surface_im.h>
Classes | |
struct | Parameter |
Parameters for fitting. More... | |
Public Member Functions | |
void | addCageBoundaryRegularisation (double weight, int side, unsigned &row) |
void | addCageCornerRegularisation (double weight, unsigned &row) |
void | addCageInteriorRegularisation (double weight, unsigned &row) |
void | addPointConstraint (const Eigen::Vector2i ¶ms, double z, double weight, unsigned &row) |
void | assemble (bool inverse_mapping=false) |
Eigen::Vector2d | findClosestElementMidPoint (const ON_NurbsSurface &nurbs, const Eigen::Vector3d &pt) |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW ON_NurbsSurface & | getSurface () |
int | gl2gc (int A) |
int | gl2gr (int A) |
int | grc2gl (int I, int J) |
void | initSurface (int order, const Eigen::Vector4d &bb) |
Eigen::Vector2d | inverseMapping (const ON_NurbsSurface &nurbs, const Eigen::Vector3d &pt, const Eigen::Vector2d &hint, double &error, Eigen::Vector3d &p, Eigen::Vector3d &tu, Eigen::Vector3d &tv, int maxSteps, double accuracy, bool quiet) |
int | lrc2gl (int E, int F, int i, int j) |
void | refine () |
void | setCamera (const Eigen::Matrix3d &i) |
void | setCamera (const Eigen::Matrix3f &i) |
void | setIndices (std::vector< int > &_indices) |
void | setInputCloud (pcl::PointCloud< pcl::PointXYZRGB >::Ptr _cloud) |
void | solve (double damp=1.0) |
void | updateSurf (double damp) |
Static Public Member Functions | |
static Eigen::Vector4d | computeIndexBoundingBox (pcl::PointCloud< pcl::PointXYZRGB >::Ptr cloud, const std::vector< int > &indices) |
static std::vector< double > | getElementVector (const ON_NurbsSurface &nurbs, int dim) |
Protected Member Functions | |
pcl::PointXYZRGB | computeMean () const |
Protected Attributes | |
Eigen::Vector4d | m_bb |
pcl::PointCloud < pcl::PointXYZRGB >::Ptr | m_cloud |
pcl::on_nurbs::vector_vec2i | m_cps_px |
std::vector< int > | m_indices |
Eigen::Matrix3d | m_intrinsic |
ON_NurbsSurface | m_nurbs |
bool | m_quiet |
NurbsSolve | m_solver |
Definition at line 54 of file fitting_surface_im.h.
void FittingSurfaceIM::addCageBoundaryRegularisation | ( | double | weight, |
int | side, | ||
unsigned & | row | ||
) |
Definition at line 385 of file fitting_surface_im.cpp.
void FittingSurfaceIM::addCageCornerRegularisation | ( | double | weight, |
unsigned & | row | ||
) |
Definition at line 427 of file fitting_surface_im.cpp.
void FittingSurfaceIM::addCageInteriorRegularisation | ( | double | weight, |
unsigned & | row | ||
) |
Definition at line 364 of file fitting_surface_im.cpp.
void FittingSurfaceIM::addPointConstraint | ( | const Eigen::Vector2i & | params, |
double | z, | ||
double | weight, | ||
unsigned & | row | ||
) |
Definition at line 332 of file fitting_surface_im.cpp.
void FittingSurfaceIM::assemble | ( | bool | inverse_mapping = false | ) |
Definition at line 261 of file fitting_surface_im.cpp.
Eigen::Vector4d FittingSurfaceIM::computeIndexBoundingBox | ( | pcl::PointCloud< pcl::PointXYZRGB >::Ptr | cloud, |
const std::vector< int > & | indices | ||
) | [static] |
compute bounding box of cloud in index space
Definition at line 73 of file fitting_surface_im.cpp.
pcl::PointXYZRGB FittingSurfaceIM::computeMean | ( | ) | const [protected] |
Definition at line 45 of file fitting_surface_im.cpp.
Eigen::Vector2d FittingSurfaceIM::findClosestElementMidPoint | ( | const ON_NurbsSurface & | nurbs, |
const Eigen::Vector3d & | pt | ||
) |
Definition at line 516 of file fitting_surface_im.cpp.
std::vector< double > FittingSurfaceIM::getElementVector | ( | const ON_NurbsSurface & | nurbs, |
int | dim | ||
) | [static] |
Definition at line 126 of file fitting_surface_im.cpp.
EIGEN_MAKE_ALIGNED_OPERATOR_NEW ON_NurbsSurface& pcl::on_nurbs::FittingSurfaceIM::getSurface | ( | ) | [inline] |
Definition at line 87 of file fitting_surface_im.h.
int pcl::on_nurbs::FittingSurfaceIM::gl2gc | ( | int | A | ) | [inline] |
Definition at line 167 of file fitting_surface_im.h.
int pcl::on_nurbs::FittingSurfaceIM::gl2gr | ( | int | A | ) | [inline] |
Definition at line 162 of file fitting_surface_im.h.
int pcl::on_nurbs::FittingSurfaceIM::grc2gl | ( | int | I, |
int | J | ||
) | [inline] |
Definition at line 152 of file fitting_surface_im.h.
void FittingSurfaceIM::initSurface | ( | int | order, |
const Eigen::Vector4d & | bb | ||
) |
Definition at line 205 of file fitting_surface_im.cpp.
Eigen::Vector2d FittingSurfaceIM::inverseMapping | ( | const ON_NurbsSurface & | nurbs, |
const Eigen::Vector3d & | pt, | ||
const Eigen::Vector2d & | hint, | ||
double & | error, | ||
Eigen::Vector3d & | p, | ||
Eigen::Vector3d & | tu, | ||
Eigen::Vector3d & | tv, | ||
int | maxSteps, | ||
double | accuracy, | ||
bool | quiet | ||
) |
Definition at line 554 of file fitting_surface_im.cpp.
int pcl::on_nurbs::FittingSurfaceIM::lrc2gl | ( | int | E, |
int | F, | ||
int | i, | ||
int | j | ||
) | [inline] |
Definition at line 157 of file fitting_surface_im.h.
void FittingSurfaceIM::refine | ( | ) |
Definition at line 155 of file fitting_surface_im.cpp.
void FittingSurfaceIM::setCamera | ( | const Eigen::Matrix3d & | i | ) |
Definition at line 113 of file fitting_surface_im.cpp.
void FittingSurfaceIM::setCamera | ( | const Eigen::Matrix3f & | i | ) |
Definition at line 119 of file fitting_surface_im.cpp.
void FittingSurfaceIM::setIndices | ( | std::vector< int > & | _indices | ) |
Definition at line 107 of file fitting_surface_im.cpp.
void FittingSurfaceIM::setInputCloud | ( | pcl::PointCloud< pcl::PointXYZRGB >::Ptr | _cloud | ) |
Definition at line 101 of file fitting_surface_im.cpp.
void FittingSurfaceIM::solve | ( | double | damp = 1.0 | ) |
Definition at line 484 of file fitting_surface_im.cpp.
void FittingSurfaceIM::updateSurf | ( | double | damp | ) |
Definition at line 491 of file fitting_surface_im.cpp.
Eigen::Vector4d pcl::on_nurbs::FittingSurfaceIM::m_bb [protected] |
Definition at line 72 of file fitting_surface_im.h.
pcl::PointCloud<pcl::PointXYZRGB>::Ptr pcl::on_nurbs::FittingSurfaceIM::m_cloud [protected] |
Definition at line 69 of file fitting_surface_im.h.
Definition at line 75 of file fitting_surface_im.h.
std::vector<int> pcl::on_nurbs::FittingSurfaceIM::m_indices [protected] |
Definition at line 70 of file fitting_surface_im.h.
Eigen::Matrix3d pcl::on_nurbs::FittingSurfaceIM::m_intrinsic [protected] |
Definition at line 71 of file fitting_surface_im.h.
Definition at line 74 of file fitting_surface_im.h.
bool pcl::on_nurbs::FittingSurfaceIM::m_quiet [protected] |
Definition at line 77 of file fitting_surface_im.h.
NurbsSolve pcl::on_nurbs::FittingSurfaceIM::m_solver [protected] |
Definition at line 76 of file fitting_surface_im.h.