![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
Local modelization (generic interface) More...
#include <LocalModel.h>


Public Member Functions | |
| virtual | ~LocalModel ()=default |
| Destructor. More... | |
| virtual CV_LOCAL_MODEL_TYPES | getType () const =0 |
| Returns the model type. More... | |
| const CCVector3 & | getCenter () const |
| Returns the model center. More... | |
| PointCoordinateType | getSquareSize () const |
| Returns the model max radius (squared) More... | |
| virtual ScalarType | computeDistanceFromModelToPoint (const CCVector3 *P, CCVector3 *nearestPoint=nullptr) const =0 |
| Compute the (unsigned) distance between a 3D point and this model. More... | |
Static Public Member Functions | |
| static LocalModel * | New (CV_LOCAL_MODEL_TYPES type, Neighbourhood &subset, const CCVector3 ¢er, PointCoordinateType squaredRadius) |
| Factory. More... | |
Protected Member Functions | |
| LocalModel (const CCVector3 ¢er, PointCoordinateType squaredRadius) | |
| Constructor. More... | |
Protected Attributes | |
| CCVector3 | m_modelCenter |
| Center. More... | |
| PointCoordinateType | m_squaredRadius |
| Max radius (squared) More... | |
Local modelization (generic interface)
Local surface approximation of a point cloud
Definition at line 17 of file LocalModel.h.
|
virtualdefault |
Destructor.
|
protected |
Constructor.
| center | model "center" |
| squaredRadius | model max "radius" (squared) |
Definition at line 161 of file LocalModel.cpp.
|
pure virtual |
Compute the (unsigned) distance between a 3D point and this model.
| [in] | P | the query point |
| [out] | nearestPoint | returns the nearest point (optional) |
Implemented in DelaunayLocalModel, LSLocalModel, and QuadricLocalModel.
Referenced by cloudViewer::DistanceComputationTools::computeCellHausdorffDistanceWithLocalModel(), and define_LocalModel().
|
inline |
Returns the model center.
Definition at line 37 of file LocalModel.h.
References m_modelCenter.
Referenced by define_LocalModel().
|
inline |
Returns the model max radius (squared)
Definition at line 40 of file LocalModel.h.
References m_squaredRadius.
Referenced by define_LocalModel().
|
pure virtual |
Returns the model type.
Implemented in QuadricLocalModel, DelaunayLocalModel, and LSLocalModel.
Referenced by define_LocalModel().
|
static |
Factory.
| type | the model type |
| subset | (small) set of points from which to compute the local model |
| center | model "center" |
| squaredRadius | model max radius (squared) |
Definition at line 165 of file LocalModel.cpp.
References cloudViewer::Neighbourhood::DUPLICATE_VERTICES, cloudViewer::Neighbourhood::getGravityCenter(), cloudViewer::Neighbourhood::getLSPlane(), cloudViewer::Neighbourhood::getQuadric(), cloudViewer::Neighbourhood::IGNORE_MAX_EDGE_LENGTH, LS, NO_MODEL, QUADRIC, TRI, cloudViewer::Neighbourhood::triangulateOnPlane(), type, Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
Referenced by cloudViewer::DistanceComputationTools::computeCellHausdorffDistanceWithLocalModel().
|
protected |
|
protected |