MeshLib C Docs
Loading...
Searching...
No Matches
MRPointToPlaneAligningTransform.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
MRCMesh/MRAffineXf.h
>
4
#include <
MRCMesh/MRVector3.h
>
5
#include <
MRCMisc/common.h
>
6
#include <
MRCMisc/exports.h
>
7
8
#include <stddef.h>
9
10
#ifdef __cplusplus
11
extern
"C"
{
12
#endif
13
14
typedef
struct
MR_RigidScaleXf3d
MR_RigidScaleXf3d
;
// Defined in `#include <MRCMesh/MRRigidScaleXf3.h>`.
15
typedef
struct
MR_Vector3f
MR_Vector3f
;
// Defined in `#include <MRCMesh/MRVector3.h>`.
16
17
24
typedef
struct
MR_PointToPlaneAligningTransform
MR_PointToPlaneAligningTransform
;
25
28
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_DefaultConstruct
(
void
);
29
33
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_DefaultConstructArray
(
size_t
num_elems);
34
36
MRC_API
const
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_OffsetPtr
(
const
MR_PointToPlaneAligningTransform
*ptr, ptrdiff_t i);
37
39
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_OffsetMutablePtr
(
MR_PointToPlaneAligningTransform
*ptr, ptrdiff_t i);
40
43
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_ConstructFromAnother
(
MR_PassBy
_other_pass_by,
MR_PointToPlaneAligningTransform
*_other);
44
46
MRC_API
void
MR_PointToPlaneAligningTransform_Destroy
(
const
MR_PointToPlaneAligningTransform
*_this);
47
49
MRC_API
void
MR_PointToPlaneAligningTransform_DestroyArray
(
const
MR_PointToPlaneAligningTransform
*_this);
50
54
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_AssignFromAnother
(
MR_PointToPlaneAligningTransform
*_this,
MR_PassBy
_other_pass_by,
MR_PointToPlaneAligningTransform
*_other);
55
63
MRC_API
void
MR_PointToPlaneAligningTransform_add_MR_Vector3d
(
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*p1,
const
MR_Vector3d
*p2,
const
MR_Vector3d
*normal2,
const
double
*w);
64
72
MRC_API
void
MR_PointToPlaneAligningTransform_add_MR_Vector3f
(
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3f
*p1,
const
MR_Vector3f
*p2,
const
MR_Vector3f
*normal2,
const
float
*w);
73
77
MRC_API
void
MR_PointToPlaneAligningTransform_prepare
(
MR_PointToPlaneAligningTransform
*_this);
78
82
MRC_API
void
MR_PointToPlaneAligningTransform_clear
(
MR_PointToPlaneAligningTransform
*_this);
83
89
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidXf
(
const
MR_PointToPlaneAligningTransform
*_this);
90
94
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidScaleXf
(
const
MR_PointToPlaneAligningTransform
*_this);
95
100
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidXfFixedRotationAxis
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*axis);
101
106
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidXfOrthogonalRotationAxis
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*ort);
107
113
MRC_API
MR_Vector3d
MR_PointToPlaneAligningTransform_findBestTranslation
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*rotAngles,
const
double
*scale);
114
119
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateAmendment
(
const
MR_PointToPlaneAligningTransform
*_this);
120
125
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateAmendmentWithScale
(
const
MR_PointToPlaneAligningTransform
*_this);
126
132
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateFixedAxisAmendment
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*axis);
133
139
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateOrthogonalAxisAmendment
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*ort);
140
141
#ifdef __cplusplus
142
}
// extern "C"
143
#endif
MRAffineXf.h
MR_PointToPlaneAligningTransform
struct MR_PointToPlaneAligningTransform MR_PointToPlaneAligningTransform
Definition
MRICP.h:23
MR_PointToPlaneAligningTransform_clear
MRC_API void MR_PointToPlaneAligningTransform_clear(MR_PointToPlaneAligningTransform *_this)
MR_PointToPlaneAligningTransform_DefaultConstruct
MRC_API MR_PointToPlaneAligningTransform * MR_PointToPlaneAligningTransform_DefaultConstruct(void)
MR_PointToPlaneAligningTransform_AssignFromAnother
MRC_API MR_PointToPlaneAligningTransform * MR_PointToPlaneAligningTransform_AssignFromAnother(MR_PointToPlaneAligningTransform *_this, MR_PassBy _other_pass_by, MR_PointToPlaneAligningTransform *_other)
MR_PointToPlaneAligningTransform_calculateOrthogonalAxisAmendment
MRC_API MR_RigidScaleXf3d * MR_PointToPlaneAligningTransform_calculateOrthogonalAxisAmendment(const MR_PointToPlaneAligningTransform *_this, const MR_Vector3d *ort)
MR_PointToPlaneAligningTransform_findBestTranslation
MRC_API MR_Vector3d MR_PointToPlaneAligningTransform_findBestTranslation(const MR_PointToPlaneAligningTransform *_this, const MR_Vector3d *rotAngles, const double *scale)
MR_PointToPlaneAligningTransform_calculateAmendmentWithScale
MRC_API MR_RigidScaleXf3d * MR_PointToPlaneAligningTransform_calculateAmendmentWithScale(const MR_PointToPlaneAligningTransform *_this)
MR_PointToPlaneAligningTransform_add_MR_Vector3f
MRC_API void MR_PointToPlaneAligningTransform_add_MR_Vector3f(MR_PointToPlaneAligningTransform *_this, const MR_Vector3f *p1, const MR_Vector3f *p2, const MR_Vector3f *normal2, const float *w)
MR_PointToPlaneAligningTransform_DestroyArray
MRC_API void MR_PointToPlaneAligningTransform_DestroyArray(const MR_PointToPlaneAligningTransform *_this)
Destroys a heap-allocated array of MR_PointToPlaneAligningTransform. Does nothing if the pointer is n...
MR_PointToPlaneAligningTransform_calculateAmendment
MRC_API MR_RigidScaleXf3d * MR_PointToPlaneAligningTransform_calculateAmendment(const MR_PointToPlaneAligningTransform *_this)
MR_PointToPlaneAligningTransform_findBestRigidXfOrthogonalRotationAxis
MRC_API MR_AffineXf3d MR_PointToPlaneAligningTransform_findBestRigidXfOrthogonalRotationAxis(const MR_PointToPlaneAligningTransform *_this, const MR_Vector3d *ort)
MR_PointToPlaneAligningTransform_OffsetMutablePtr
MRC_API MR_PointToPlaneAligningTransform * MR_PointToPlaneAligningTransform_OffsetMutablePtr(MR_PointToPlaneAligningTransform *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MR_PointToPlaneAligningTransform_prepare
MRC_API void MR_PointToPlaneAligningTransform_prepare(MR_PointToPlaneAligningTransform *_this)
MR_PointToPlaneAligningTransform_OffsetPtr
MRC_API const MR_PointToPlaneAligningTransform * MR_PointToPlaneAligningTransform_OffsetPtr(const MR_PointToPlaneAligningTransform *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MR_PointToPlaneAligningTransform_add_MR_Vector3d
MRC_API void MR_PointToPlaneAligningTransform_add_MR_Vector3d(MR_PointToPlaneAligningTransform *_this, const MR_Vector3d *p1, const MR_Vector3d *p2, const MR_Vector3d *normal2, const double *w)
MR_PointToPlaneAligningTransform_findBestRigidXfFixedRotationAxis
MRC_API MR_AffineXf3d MR_PointToPlaneAligningTransform_findBestRigidXfFixedRotationAxis(const MR_PointToPlaneAligningTransform *_this, const MR_Vector3d *axis)
MR_PointToPlaneAligningTransform_Destroy
MRC_API void MR_PointToPlaneAligningTransform_Destroy(const MR_PointToPlaneAligningTransform *_this)
Destroys a heap-allocated instance of MR_PointToPlaneAligningTransform. Does nothing if the pointer i...
MR_PointToPlaneAligningTransform_calculateFixedAxisAmendment
MRC_API MR_RigidScaleXf3d * MR_PointToPlaneAligningTransform_calculateFixedAxisAmendment(const MR_PointToPlaneAligningTransform *_this, const MR_Vector3d *axis)
MR_PointToPlaneAligningTransform_findBestRigidXf
MRC_API MR_AffineXf3d MR_PointToPlaneAligningTransform_findBestRigidXf(const MR_PointToPlaneAligningTransform *_this)
MR_PointToPlaneAligningTransform_ConstructFromAnother
MRC_API MR_PointToPlaneAligningTransform * MR_PointToPlaneAligningTransform_ConstructFromAnother(MR_PassBy _other_pass_by, MR_PointToPlaneAligningTransform *_other)
MR_PointToPlaneAligningTransform_DefaultConstructArray
MRC_API MR_PointToPlaneAligningTransform * MR_PointToPlaneAligningTransform_DefaultConstructArray(size_t num_elems)
MR_RigidScaleXf3d
struct MR_RigidScaleXf3d MR_RigidScaleXf3d
Definition
MRPointToPlaneAligningTransform.h:14
MR_PointToPlaneAligningTransform_findBestRigidScaleXf
MRC_API MR_AffineXf3d MR_PointToPlaneAligningTransform_findBestRigidScaleXf(const MR_PointToPlaneAligningTransform *_this)
MRVector3.h
common.h
MR_PassBy
MR_PassBy
Definition
common.h:19
exports.h
MRC_API
#define MRC_API
Definition
exports.h:11
MR_AffineXf3d
Definition
MRAffineXf.h:44
MR_Vector3d
Definition
MRVector3.h:60
MR_Vector3f
Definition
MRVector3.h:51
MeshLib
Cbindings
MRCMesh
MRPointToPlaneAligningTransform.h
Generated by
1.11.0