MeshLib C Docs
Loading...
Searching...
No Matches
MRBestFit.h File Reference
#include <MRCMesh/MRAffineXf.h>
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/exports.h>
#include <MRCMisc/std_array_MR_AffineXf3d_4.h>
#include <MRCMisc/std_array_MR_AffineXf3f_4.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>

Go to the source code of this file.

Typedefs

typedef struct MR_Line3d MR_Line3d
 
typedef struct MR_Line3f MR_Line3f
 
typedef struct MR_Matrix3d MR_Matrix3d
 
typedef struct MR_Matrix3f MR_Matrix3f
 
typedef struct MR_MeshPart MR_MeshPart
 
typedef struct MR_Plane3d MR_Plane3d
 
typedef struct MR_Plane3f MR_Plane3f
 
typedef struct MR_PointCloudPart MR_PointCloudPart
 
typedef struct MR_Polyline3 MR_Polyline3
 
typedef struct MR_std_vector_MR_Vector3f MR_std_vector_MR_Vector3f
 
typedef struct MR_std_vector_float MR_std_vector_float
 
typedef struct MR_PointAccumulator MR_PointAccumulator
 
typedef struct MR_PlaneAccumulator MR_PlaneAccumulator
 

Functions

MRC_API MR_PointAccumulatorMR_PointAccumulator_DefaultConstruct (void)
 
MRC_API MR_PointAccumulatorMR_PointAccumulator_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_PointAccumulatorMR_PointAccumulator_OffsetPtr (const MR_PointAccumulator *ptr, ptrdiff_t i)
 Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
 
MRC_API MR_PointAccumulatorMR_PointAccumulator_OffsetMutablePtr (MR_PointAccumulator *ptr, ptrdiff_t i)
 Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
 
MRC_API MR_PointAccumulatorMR_PointAccumulator_ConstructFromAnother (const MR_PointAccumulator *_other)
 
MRC_API void MR_PointAccumulator_Destroy (const MR_PointAccumulator *_this)
 Destroys a heap-allocated instance of MR_PointAccumulator. Does nothing if the pointer is null.
 
MRC_API void MR_PointAccumulator_DestroyArray (const MR_PointAccumulator *_this)
 Destroys a heap-allocated array of MR_PointAccumulator. Does nothing if the pointer is null.
 
MRC_API MR_PointAccumulatorMR_PointAccumulator_AssignFromAnother (MR_PointAccumulator *_this, const MR_PointAccumulator *_other)
 
MRC_API void MR_PointAccumulator_addPoint_1_MR_Vector3d (MR_PointAccumulator *_this, const MR_Vector3d *pt)
 
MRC_API void MR_PointAccumulator_addPoint_2_MR_Vector3d (MR_PointAccumulator *_this, const MR_Vector3d *pt, double weight)
 
MRC_API void MR_PointAccumulator_addPoint_1_MR_Vector3f (MR_PointAccumulator *_this, const MR_Vector3f *pt)
 
MRC_API void MR_PointAccumulator_addPoint_2_MR_Vector3f (MR_PointAccumulator *_this, const MR_Vector3f *pt, float weight)
 
MRC_API MR_Plane3dMR_PointAccumulator_getBestPlane (const MR_PointAccumulator *_this)
 
MRC_API MR_Plane3fMR_PointAccumulator_getBestPlanef (const MR_PointAccumulator *_this)
 
MRC_API MR_Line3dMR_PointAccumulator_getBestLine (const MR_PointAccumulator *_this)
 
MRC_API MR_Line3fMR_PointAccumulator_getBestLinef (const MR_PointAccumulator *_this)
 
MRC_API bool MR_PointAccumulator_getCenteredCovarianceEigen_MR_Vector3d (const MR_PointAccumulator *_this, MR_Vector3d *centroid, MR_Matrix3d *eigenvectors, MR_Vector3d *eigenvalues)
 
MRC_API bool MR_PointAccumulator_getCenteredCovarianceEigen_MR_Vector3f (const MR_PointAccumulator *_this, MR_Vector3f *centroid, MR_Matrix3f *eigenvectors, MR_Vector3f *eigenvalues)
 
MRC_API MR_AffineXf3d MR_PointAccumulator_getBasicXf (const MR_PointAccumulator *_this)
 
MRC_API MR_AffineXf3f MR_PointAccumulator_getBasicXf3f (const MR_PointAccumulator *_this)
 
MRC_API MR_std_array_MR_AffineXf3d_4 MR_PointAccumulator_get4BasicXfs (const MR_PointAccumulator *_this)
 
MRC_API MR_std_array_MR_AffineXf3f_4 MR_PointAccumulator_get4BasicXfs3f (const MR_PointAccumulator *_this)
 
MRC_API bool MR_PointAccumulator_valid (const MR_PointAccumulator *_this)
 
MRC_API void MR_accumulatePoints_std_vector_MR_Vector3f (MR_PointAccumulator *accum, const MR_std_vector_MR_Vector3f *points, const MR_AffineXf3f *xf)
 
MRC_API void MR_accumulateWeighedPoints (MR_PointAccumulator *accum, const MR_std_vector_MR_Vector3f *points, const MR_std_vector_float *weights, const MR_AffineXf3f *xf)
 
MRC_API void MR_accumulateFaceCenters (MR_PointAccumulator *accum, const MR_MeshPart *mp, const MR_AffineXf3f *xf)
 
MRC_API void MR_accumulateLineCenters (MR_PointAccumulator *accum, const MR_Polyline3 *pl, const MR_AffineXf3f *xf)
 
MRC_API void MR_accumulatePoints_MR_PointCloudPart (MR_PointAccumulator *accum, const MR_PointCloudPart *pcp, const MR_AffineXf3f *xf)
 
MRC_API MR_PlaneAccumulatorMR_PlaneAccumulator_DefaultConstruct (void)
 
MRC_API MR_PlaneAccumulatorMR_PlaneAccumulator_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_PlaneAccumulatorMR_PlaneAccumulator_OffsetPtr (const MR_PlaneAccumulator *ptr, ptrdiff_t i)
 Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
 
MRC_API MR_PlaneAccumulatorMR_PlaneAccumulator_OffsetMutablePtr (MR_PlaneAccumulator *ptr, ptrdiff_t i)
 Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.
 
MRC_API MR_PlaneAccumulatorMR_PlaneAccumulator_ConstructFromAnother (const MR_PlaneAccumulator *_other)
 
MRC_API void MR_PlaneAccumulator_Destroy (const MR_PlaneAccumulator *_this)
 Destroys a heap-allocated instance of MR_PlaneAccumulator. Does nothing if the pointer is null.
 
MRC_API void MR_PlaneAccumulator_DestroyArray (const MR_PlaneAccumulator *_this)
 Destroys a heap-allocated array of MR_PlaneAccumulator. Does nothing if the pointer is null.
 
MRC_API MR_PlaneAccumulatorMR_PlaneAccumulator_AssignFromAnother (MR_PlaneAccumulator *_this, const MR_PlaneAccumulator *_other)
 
MRC_API void MR_PlaneAccumulator_addPlane_MR_Plane3d (MR_PlaneAccumulator *_this, const MR_Plane3d *pl)
 
MRC_API void MR_PlaneAccumulator_addPlane_MR_Plane3f (MR_PlaneAccumulator *_this, const MR_Plane3f *pl)
 
MRC_API MR_Vector3d MR_PlaneAccumulator_findBestCrossPoint_MR_Vector3d (const MR_PlaneAccumulator *_this, const MR_Vector3d *p0, double tol, int32_t *rank, MR_Vector3d *space)
 
MRC_API MR_Vector3f MR_PlaneAccumulator_findBestCrossPoint_MR_Vector3f (const MR_PlaneAccumulator *_this, const MR_Vector3f *p0, float tol, int32_t *rank, MR_Vector3f *space)
 

Typedef Documentation

◆ MR_Line3d

typedef struct MR_Line3d MR_Line3d

◆ MR_Line3f

typedef struct MR_Line3f MR_Line3f

◆ MR_Matrix3d

typedef struct MR_Matrix3d MR_Matrix3d

◆ MR_Matrix3f

typedef struct MR_Matrix3f MR_Matrix3f

◆ MR_MeshPart

typedef struct MR_MeshPart MR_MeshPart

◆ MR_Plane3d

typedef struct MR_Plane3d MR_Plane3d

◆ MR_Plane3f

typedef struct MR_Plane3f MR_Plane3f

◆ MR_PlaneAccumulator

Class to accumulate planes to find then their crossing point Generated from class MR::PlaneAccumulator.

◆ MR_PointAccumulator

Class to accumulate points and make best line / plane approximation Generated from class MR::PointAccumulator.

◆ MR_PointCloudPart

◆ MR_Polyline3

typedef struct MR_Polyline3 MR_Polyline3

◆ MR_std_vector_float

◆ MR_std_vector_MR_Vector3f

Function Documentation

◆ MR_accumulateFaceCenters()

MRC_API void MR_accumulateFaceCenters ( MR_PointAccumulator * accum,
const MR_MeshPart * mp,
const MR_AffineXf3f * xf )

Adds in existing PointAccumulator all mesh face centers with the weight equal to face area Generated from function MR::accumulateFaceCenters. Parameter accum can not be null. It is a single object. Parameter mp can not be null. It is a single object. Parameter xf defaults to a null pointer in C++.

◆ MR_accumulateLineCenters()

MRC_API void MR_accumulateLineCenters ( MR_PointAccumulator * accum,
const MR_Polyline3 * pl,
const MR_AffineXf3f * xf )

Adds in existing PointAccumulator all line centers with the weight equal to the length line Generated from function MR::accumulateLineCenters. Parameter accum can not be null. It is a single object. Parameter pl can not be null. It is a single object. Parameter xf defaults to a null pointer in C++.

◆ MR_accumulatePoints_MR_PointCloudPart()

MRC_API void MR_accumulatePoints_MR_PointCloudPart ( MR_PointAccumulator * accum,
const MR_PointCloudPart * pcp,
const MR_AffineXf3f * xf )

Adds in existing PointAccumulator all points from the cloud (region) with weight 1 Generated from function MR::accumulatePoints. Parameter accum can not be null. It is a single object. Parameter pcp can not be null. It is a single object. Parameter xf defaults to a null pointer in C++.

◆ MR_accumulatePoints_std_vector_MR_Vector3f()

MRC_API void MR_accumulatePoints_std_vector_MR_Vector3f ( MR_PointAccumulator * accum,
const MR_std_vector_MR_Vector3f * points,
const MR_AffineXf3f * xf )

Adds in existing PointAccumulator all given points Generated from function MR::accumulatePoints. Parameter accum can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter xf defaults to a null pointer in C++.

◆ MR_accumulateWeighedPoints()

MRC_API void MR_accumulateWeighedPoints ( MR_PointAccumulator * accum,
const MR_std_vector_MR_Vector3f * points,
const MR_std_vector_float * weights,
const MR_AffineXf3f * xf )

Adds in existing PointAccumulator all given weighed points Generated from function MR::accumulateWeighedPoints. Parameter accum can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter weights can not be null. It is a single object. Parameter xf defaults to a null pointer in C++.

◆ MR_PlaneAccumulator_addPlane_MR_Plane3d()

MRC_API void MR_PlaneAccumulator_addPlane_MR_Plane3d ( MR_PlaneAccumulator * _this,
const MR_Plane3d * pl )

Generated from a method of class MR::PlaneAccumulator named addPlane. Parameter _this can not be null. It is a single object. Parameter pl can not be null. It is a single object.

◆ MR_PlaneAccumulator_addPlane_MR_Plane3f()

MRC_API void MR_PlaneAccumulator_addPlane_MR_Plane3f ( MR_PlaneAccumulator * _this,
const MR_Plane3f * pl )

Generated from a method of class MR::PlaneAccumulator named addPlane. Parameter _this can not be null. It is a single object. Parameter pl can not be null. It is a single object.

◆ MR_PlaneAccumulator_AssignFromAnother()

MRC_API MR_PlaneAccumulator * MR_PlaneAccumulator_AssignFromAnother ( MR_PlaneAccumulator * _this,
const MR_PlaneAccumulator * _other )

Generated from a method of class MR::PlaneAccumulator named operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_PlaneAccumulator_ConstructFromAnother()

MRC_API MR_PlaneAccumulator * MR_PlaneAccumulator_ConstructFromAnother ( const MR_PlaneAccumulator * _other)

Generated from a constructor of class MR::PlaneAccumulator. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_PlaneAccumulator_Destroy() to free it when you're done using it.

◆ MR_PlaneAccumulator_DefaultConstruct()

MRC_API MR_PlaneAccumulator * MR_PlaneAccumulator_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_PlaneAccumulator_Destroy() to free it when you're done using it.

◆ MR_PlaneAccumulator_DefaultConstructArray()

MRC_API MR_PlaneAccumulator * MR_PlaneAccumulator_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_PlaneAccumulator_DestroyArray(). Use MR_PlaneAccumulator_OffsetMutablePtr() and MR_PlaneAccumulator_OffsetPtr() to access the array elements.

◆ MR_PlaneAccumulator_Destroy()

MRC_API void MR_PlaneAccumulator_Destroy ( const MR_PlaneAccumulator * _this)

Destroys a heap-allocated instance of MR_PlaneAccumulator. Does nothing if the pointer is null.

◆ MR_PlaneAccumulator_DestroyArray()

MRC_API void MR_PlaneAccumulator_DestroyArray ( const MR_PlaneAccumulator * _this)

Destroys a heap-allocated array of MR_PlaneAccumulator. Does nothing if the pointer is null.

◆ MR_PlaneAccumulator_findBestCrossPoint_MR_Vector3d()

MRC_API MR_Vector3d MR_PlaneAccumulator_findBestCrossPoint_MR_Vector3d ( const MR_PlaneAccumulator * _this,
const MR_Vector3d * p0,
double tol,
int32_t * rank,
MR_Vector3d * space )

computes the point that minimizes the sum of squared distances to accumulated planes; if such point is not unique then returns the one closest to p0

Parameters
tolrelative epsilon-tolerance for too small number detection
rankoptional output for solution matrix rank according to given tolerance
spacerank=1: unit normal to solution plane, rank=2: unit direction of solution line, rank=3: zero vector Generated from a method of class MR::PlaneAccumulator named findBestCrossPoint. Parameter _this can not be null. It is a single object. Parameter p0 can not be null. It is a single object. Parameter rank defaults to a null pointer in C++. Parameter space defaults to a null pointer in C++.

◆ MR_PlaneAccumulator_findBestCrossPoint_MR_Vector3f()

MRC_API MR_Vector3f MR_PlaneAccumulator_findBestCrossPoint_MR_Vector3f ( const MR_PlaneAccumulator * _this,
const MR_Vector3f * p0,
float tol,
int32_t * rank,
MR_Vector3f * space )

Generated from a method of class MR::PlaneAccumulator named findBestCrossPoint. Parameter _this can not be null. It is a single object. Parameter p0 can not be null. It is a single object. Parameter rank defaults to a null pointer in C++. Parameter space defaults to a null pointer in C++.

◆ MR_PlaneAccumulator_OffsetMutablePtr()

MRC_API MR_PlaneAccumulator * MR_PlaneAccumulator_OffsetMutablePtr ( MR_PlaneAccumulator * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.

◆ MR_PlaneAccumulator_OffsetPtr()

MRC_API const MR_PlaneAccumulator * MR_PlaneAccumulator_OffsetPtr ( const MR_PlaneAccumulator * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.

◆ MR_PointAccumulator_addPoint_1_MR_Vector3d()

MRC_API void MR_PointAccumulator_addPoint_1_MR_Vector3d ( MR_PointAccumulator * _this,
const MR_Vector3d * pt )

Generated from a method of class MR::PointAccumulator named addPoint. Parameter _this can not be null. It is a single object. Parameter pt can not be null. It is a single object.

◆ MR_PointAccumulator_addPoint_1_MR_Vector3f()

MRC_API void MR_PointAccumulator_addPoint_1_MR_Vector3f ( MR_PointAccumulator * _this,
const MR_Vector3f * pt )

Generated from a method of class MR::PointAccumulator named addPoint. Parameter _this can not be null. It is a single object. Parameter pt can not be null. It is a single object.

◆ MR_PointAccumulator_addPoint_2_MR_Vector3d()

MRC_API void MR_PointAccumulator_addPoint_2_MR_Vector3d ( MR_PointAccumulator * _this,
const MR_Vector3d * pt,
double weight )

Generated from a method of class MR::PointAccumulator named addPoint. Parameter _this can not be null. It is a single object. Parameter pt can not be null. It is a single object.

◆ MR_PointAccumulator_addPoint_2_MR_Vector3f()

MRC_API void MR_PointAccumulator_addPoint_2_MR_Vector3f ( MR_PointAccumulator * _this,
const MR_Vector3f * pt,
float weight )

Generated from a method of class MR::PointAccumulator named addPoint. Parameter _this can not be null. It is a single object. Parameter pt can not be null. It is a single object.

◆ MR_PointAccumulator_AssignFromAnother()

MRC_API MR_PointAccumulator * MR_PointAccumulator_AssignFromAnother ( MR_PointAccumulator * _this,
const MR_PointAccumulator * _other )

Generated from a method of class MR::PointAccumulator named operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_PointAccumulator_ConstructFromAnother()

MRC_API MR_PointAccumulator * MR_PointAccumulator_ConstructFromAnother ( const MR_PointAccumulator * _other)

Generated from a constructor of class MR::PointAccumulator. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_PointAccumulator_Destroy() to free it when you're done using it.

◆ MR_PointAccumulator_DefaultConstruct()

MRC_API MR_PointAccumulator * MR_PointAccumulator_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_PointAccumulator_Destroy() to free it when you're done using it.

◆ MR_PointAccumulator_DefaultConstructArray()

MRC_API MR_PointAccumulator * MR_PointAccumulator_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_PointAccumulator_DestroyArray(). Use MR_PointAccumulator_OffsetMutablePtr() and MR_PointAccumulator_OffsetPtr() to access the array elements.

◆ MR_PointAccumulator_Destroy()

MRC_API void MR_PointAccumulator_Destroy ( const MR_PointAccumulator * _this)

Destroys a heap-allocated instance of MR_PointAccumulator. Does nothing if the pointer is null.

◆ MR_PointAccumulator_DestroyArray()

MRC_API void MR_PointAccumulator_DestroyArray ( const MR_PointAccumulator * _this)

Destroys a heap-allocated array of MR_PointAccumulator. Does nothing if the pointer is null.

◆ MR_PointAccumulator_get4BasicXfs()

MRC_API MR_std_array_MR_AffineXf3d_4 MR_PointAccumulator_get4BasicXfs ( const MR_PointAccumulator * _this)

returns 4 transformations, each maps (0,0,0) into point centroid, and maps vectors (1,0,0), (0,1,0), (0,0,1) into +/- first, +/- second, +/- third eigenvectors (forming positive reference frame) corresponding to ascending eigenvalues Generated from a method of class MR::PointAccumulator named get4BasicXfs. Parameter _this can not be null. It is a single object.

◆ MR_PointAccumulator_get4BasicXfs3f()

MRC_API MR_std_array_MR_AffineXf3f_4 MR_PointAccumulator_get4BasicXfs3f ( const MR_PointAccumulator * _this)

Generated from a method of class MR::PointAccumulator named get4BasicXfs3f. Parameter _this can not be null. It is a single object.

◆ MR_PointAccumulator_getBasicXf()

MRC_API MR_AffineXf3d MR_PointAccumulator_getBasicXf ( const MR_PointAccumulator * _this)

returns the transformation that maps (0,0,0) into point centroid, and maps vectors (1,0,0), (0,1,0), (0,0,1) into first, second, third eigenvectors corresponding to ascending eigenvalues Generated from a method of class MR::PointAccumulator named getBasicXf. Parameter _this can not be null. It is a single object.

◆ MR_PointAccumulator_getBasicXf3f()

MRC_API MR_AffineXf3f MR_PointAccumulator_getBasicXf3f ( const MR_PointAccumulator * _this)

Generated from a method of class MR::PointAccumulator named getBasicXf3f. Parameter _this can not be null. It is a single object.

◆ MR_PointAccumulator_getBestLine()

MRC_API MR_Line3d * MR_PointAccumulator_getBestLine ( const MR_PointAccumulator * _this)

computes the best approximating line from the accumulated points Generated from a method of class MR::PointAccumulator named getBestLine. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3d_Destroy() to free it when you're done using it.

◆ MR_PointAccumulator_getBestLinef()

MRC_API MR_Line3f * MR_PointAccumulator_getBestLinef ( const MR_PointAccumulator * _this)

Generated from a method of class MR::PointAccumulator named getBestLinef. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3f_Destroy() to free it when you're done using it.

◆ MR_PointAccumulator_getBestPlane()

MRC_API MR_Plane3d * MR_PointAccumulator_getBestPlane ( const MR_PointAccumulator * _this)

computes the best approximating plane from the accumulated points Generated from a method of class MR::PointAccumulator named getBestPlane. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Plane3d_Destroy() to free it when you're done using it.

◆ MR_PointAccumulator_getBestPlanef()

MRC_API MR_Plane3f * MR_PointAccumulator_getBestPlanef ( const MR_PointAccumulator * _this)

Generated from a method of class MR::PointAccumulator named getBestPlanef. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Plane3f_Destroy() to free it when you're done using it.

◆ MR_PointAccumulator_getCenteredCovarianceEigen_MR_Vector3d()

MRC_API bool MR_PointAccumulator_getCenteredCovarianceEigen_MR_Vector3d ( const MR_PointAccumulator * _this,
MR_Vector3d * centroid,
MR_Matrix3d * eigenvectors,
MR_Vector3d * eigenvalues )

computes centroid and eigenvectors/eigenvalues of the covariance matrix of the accumulated points Generated from a method of class MR::PointAccumulator named getCenteredCovarianceEigen. Parameter _this can not be null. It is a single object. Parameter centroid can not be null. It is a single object. Parameter eigenvectors can not be null. It is a single object. Parameter eigenvalues can not be null. It is a single object.

◆ MR_PointAccumulator_getCenteredCovarianceEigen_MR_Vector3f()

MRC_API bool MR_PointAccumulator_getCenteredCovarianceEigen_MR_Vector3f ( const MR_PointAccumulator * _this,
MR_Vector3f * centroid,
MR_Matrix3f * eigenvectors,
MR_Vector3f * eigenvalues )

Generated from a method of class MR::PointAccumulator named getCenteredCovarianceEigen. Parameter _this can not be null. It is a single object. Parameter centroid can not be null. It is a single object. Parameter eigenvectors can not be null. It is a single object. Parameter eigenvalues can not be null. It is a single object.

◆ MR_PointAccumulator_OffsetMutablePtr()

MRC_API MR_PointAccumulator * MR_PointAccumulator_OffsetMutablePtr ( MR_PointAccumulator * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.

◆ MR_PointAccumulator_OffsetPtr()

MRC_API const MR_PointAccumulator * MR_PointAccumulator_OffsetPtr ( const MR_PointAccumulator * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element.

◆ MR_PointAccumulator_valid()

MRC_API bool MR_PointAccumulator_valid ( const MR_PointAccumulator * _this)

Generated from a method of class MR::PointAccumulator named valid. Parameter _this can not be null. It is a single object.