ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
QuadricLocalModel Class Reference

Quadric "local modelization". More...

Inheritance diagram for QuadricLocalModel:
Collaboration diagram for QuadricLocalModel:

Public Member Functions

 QuadricLocalModel (const PointCoordinateType eq[6], unsigned char X, unsigned char Y, unsigned char Z, CCVector3 gravityCenter, const CCVector3 &center, PointCoordinateType squaredRadius)
 Constructor. More...
 
CV_LOCAL_MODEL_TYPES getType () const override
 Returns the model type. More...
 
ScalarType computeDistanceFromModelToPoint (const CCVector3 *_P, CCVector3 *nearestPoint=nullptr) const override
 Compute the (unsigned) distance between a 3D point and this model. More...
 
- Public Member Functions inherited from cloudViewer::LocalModel
virtual ~LocalModel ()=default
 Destructor. More...
 
const CCVector3getCenter () const
 Returns the model center. More...
 
PointCoordinateType getSquareSize () const
 Returns the model max radius (squared) More...
 

Protected Attributes

PointCoordinateType m_eq [6]
 Quadric equation. More...
 
unsigned char m_X
 Height function first dimension (0=X, 1=Y, 2=Z) More...
 
unsigned char m_Y
 Height function second dimension (0=X, 1=Y, 2=Z) More...
 
unsigned char m_Z
 Height function third dimension (0=X, 1=Y, 2=Z) More...
 
CCVector3 m_gravityCenter
 Model gravity center. More...
 
- Protected Attributes inherited from cloudViewer::LocalModel
CCVector3 m_modelCenter
 Center. More...
 
PointCoordinateType m_squaredRadius
 Max radius (squared) More...
 

Additional Inherited Members

- Static Public Member Functions inherited from cloudViewer::LocalModel
static LocalModelNew (CV_LOCAL_MODEL_TYPES type, Neighbourhood &subset, const CCVector3 &center, PointCoordinateType squaredRadius)
 Factory. More...
 
- Protected Member Functions inherited from cloudViewer::LocalModel
 LocalModel (const CCVector3 &center, PointCoordinateType squaredRadius)
 Constructor. More...
 

Detailed Description

Quadric "local modelization".

Former 'Height Function' model.

Definition at line 106 of file LocalModel.cpp.

Constructor & Destructor Documentation

◆ QuadricLocalModel()

QuadricLocalModel::QuadricLocalModel ( const PointCoordinateType  eq[6],
unsigned char  X,
unsigned char  Y,
unsigned char  Z,
CCVector3  gravityCenter,
const CCVector3 center,
PointCoordinateType  squaredRadius 
)
inline

Constructor.

Definition at line 109 of file LocalModel.cpp.

Member Function Documentation

◆ computeDistanceFromModelToPoint()

ScalarType QuadricLocalModel::computeDistanceFromModelToPoint ( const CCVector3 P,
CCVector3 nearestPoint = nullptr 
) const
inlineoverridevirtual

Compute the (unsigned) distance between a 3D point and this model.

Parameters
[in]Pthe query point
[out]nearestPointreturns the nearest point (optional)
Returns
the (unsigned) distance (or NAN_VALUE if the computation failed)

Implements cloudViewer::LocalModel.

Definition at line 128 of file LocalModel.cpp.

References abs(), and Tuple3Tpl< Type >::u.

◆ getType()

CV_LOCAL_MODEL_TYPES QuadricLocalModel::getType ( ) const
inlineoverridevirtual

Returns the model type.

Implements cloudViewer::LocalModel.

Definition at line 125 of file LocalModel.cpp.

References QUADRIC.

Member Data Documentation

◆ m_eq

PointCoordinateType QuadricLocalModel::m_eq[6]
protected

Quadric equation.

Definition at line 150 of file LocalModel.cpp.

◆ m_gravityCenter

CCVector3 QuadricLocalModel::m_gravityCenter
protected

Model gravity center.

Definition at line 158 of file LocalModel.cpp.

◆ m_X

unsigned char QuadricLocalModel::m_X
protected

Height function first dimension (0=X, 1=Y, 2=Z)

Definition at line 152 of file LocalModel.cpp.

◆ m_Y

unsigned char QuadricLocalModel::m_Y
protected

Height function second dimension (0=X, 1=Y, 2=Z)

Definition at line 154 of file LocalModel.cpp.

◆ m_Z

unsigned char QuadricLocalModel::m_Z
protected

Height function third dimension (0=X, 1=Y, 2=Z)

Definition at line 156 of file LocalModel.cpp.


The documentation for this class was generated from the following file: