Reen::ParameterCorrection Class Referenceabstract

#include <ApproxSurface.h>

Public Member Functions

virtual void EnableSmoothing (bool bSmooth=true, double fSmoothInfl=1.0f)
 Use smoothing-terms. More...
 
virtual Base::Vector3d GetGravityPoint () const
 Get the center of gravity. More...
 
virtual void GetUVW (Base::Vector3d &clU, Base::Vector3d &clV, Base::Vector3d &clW) const
 Returns the u/v/w directions. More...
 
virtual Handle (Geom_BSplineSurface) CreateSurface(const TColgp_Array1OfPnt &points
 Calculates a B-spline surface from the given points. More...
 
 ParameterCorrection (unsigned usUOrder=4, unsigned usVOrder=4, unsigned usUCtrlpoints=6, unsigned usVCtrlpoints=6)
 
virtual void SetUV (const Base::Vector3d &clU, const Base::Vector3d &clV, bool bUseDir=true)
 Setting the u/v directions The third parameter specifies whether the directions should actually be used. More...
 
virtual ~ParameterCorrection ()
 

Public Attributes

virtual int bool bParaCor
 
virtual int bool double fSizeFactor =0.0f)
 
virtual int iIter
 

Protected Member Functions

virtual void CalcEigenvectors ()
 Calculates the eigenvectors of the covariance matrix. More...
 
virtual bool DoInitialParameterCorrection (double fSizeFactor=0.0f)
 Calculates an initial area at the beginning of the algorithm. More...
 
virtual void DoParameterCorrection (int iIter)=0
 Carries out a parameter correction. More...
 
virtual bool GetUVParameters (double fSizeFactor)
 Calculates the (u, v) values of the points. More...
 
void ProjectControlPointsOnPlane ()
 Projects the control points onto the fit plane. More...
 
virtual bool SolveWithoutSmoothing ()=0
 Solves system of equations. More...
 
virtual bool SolveWithSmoothing (double fWeight)=0
 Solve a regular system of equations. More...
 

Constructor & Destructor Documentation

◆ ParameterCorrection()

ParameterCorrection::ParameterCorrection ( unsigned  usUOrder = 4,
unsigned  usVOrder = 4,
unsigned  usUCtrlpoints = 6,
unsigned  usVCtrlpoints = 6 
)

◆ ~ParameterCorrection()

virtual Reen::ParameterCorrection::~ParameterCorrection ( )
virtual

Member Function Documentation

◆ CalcEigenvectors()

void ParameterCorrection::CalcEigenvectors ( )
protectedvirtual

◆ DoInitialParameterCorrection()

bool ParameterCorrection::DoInitialParameterCorrection ( double  fSizeFactor = 0.0f)
protectedvirtual

Calculates an initial area at the beginning of the algorithm.

For this purpose, the best-fit plane for the point cloud is calculated. The points are calculated with respect to the base consisting of the eigenvectors of the covariance matrix and projected onto the best-fit plane. The bounding box is calculated from these points, then the u/v parameters for the points are calculated.

References CalcEigenvectors(), fSizeFactor, GetUVParameters(), SolveWithoutSmoothing(), and SolveWithSmoothing().

◆ DoParameterCorrection()

virtual void Reen::ParameterCorrection::DoParameterCorrection ( int  iIter)
protectedpure virtual

Carries out a parameter correction.

Implemented in Reen::BSplineParameterCorrection.

◆ EnableSmoothing()

void ParameterCorrection::EnableSmoothing ( bool  bSmooth = true,
double  fSmoothInfl = 1.0f 
)
virtual

Use smoothing-terms.

Reimplemented in Reen::BSplineParameterCorrection.

Referenced by Reen::BSplineParameterCorrection::EnableSmoothing().

◆ GetGravityPoint()

Base::Vector3d ParameterCorrection::GetGravityPoint ( ) const
virtual

Get the center of gravity.

References Base::Vector3< _Precision >::Length().

Referenced by ProjectControlPointsOnPlane().

◆ GetUVParameters()

bool ParameterCorrection::GetUVParameters ( double  fSizeFactor)
protectedvirtual

◆ GetUVW()

void ParameterCorrection::GetUVW ( Base::Vector3d clU,
Base::Vector3d clV,
Base::Vector3d clW 
) const
virtual

Returns the u/v/w directions.

◆ Handle()

virtual Reen::ParameterCorrection::Handle ( Geom_BSplineSurface  ) const &
virtual

Calculates a B-spline surface from the given points.

Referenced by Reen::BSplineParameterCorrection::DoParameterCorrection().

◆ ProjectControlPointsOnPlane()

void ParameterCorrection::ProjectControlPointsOnPlane ( )
protected

◆ SetUV()

void ParameterCorrection::SetUV ( const Base::Vector3d clU,
const Base::Vector3d clV,
bool  bUseDir = true 
)
virtual

Setting the u/v directions The third parameter specifies whether the directions should actually be used.

◆ SolveWithoutSmoothing()

virtual bool Reen::ParameterCorrection::SolveWithoutSmoothing ( )
protectedpure virtual

Solves system of equations.

Implemented in Reen::BSplineParameterCorrection.

Referenced by DoInitialParameterCorrection().

◆ SolveWithSmoothing()

virtual bool Reen::ParameterCorrection::SolveWithSmoothing ( double  fWeight)
protectedpure virtual

Solve a regular system of equations.

Implemented in Reen::BSplineParameterCorrection.

Referenced by DoInitialParameterCorrection().

Member Data Documentation

◆ bParaCor

virtual int bool Reen::ParameterCorrection::bParaCor

◆ fSizeFactor

virtual int bool double Reen::ParameterCorrection::fSizeFactor =0.0f)

◆ iIter

virtual int Reen::ParameterCorrection::iIter

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