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
25
typedef
struct
MR_PointToPlaneAligningTransform
MR_PointToPlaneAligningTransform
;
26
29
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_DefaultConstruct
(
void
);
30
34
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_DefaultConstructArray
(
size_t
num_elems);
35
37
MRC_API
const
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_OffsetPtr
(
const
MR_PointToPlaneAligningTransform
*ptr, ptrdiff_t i);
38
40
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_OffsetMutablePtr
(
MR_PointToPlaneAligningTransform
*ptr, ptrdiff_t i);
41
44
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_ConstructFromAnother
(
MR_PassBy
_other_pass_by,
MR_PointToPlaneAligningTransform
*_other);
45
47
MRC_API
void
MR_PointToPlaneAligningTransform_Destroy
(
const
MR_PointToPlaneAligningTransform
*_this);
48
50
MRC_API
void
MR_PointToPlaneAligningTransform_DestroyArray
(
const
MR_PointToPlaneAligningTransform
*_this);
51
55
MRC_API
MR_PointToPlaneAligningTransform
*
MR_PointToPlaneAligningTransform_AssignFromAnother
(
MR_PointToPlaneAligningTransform
*_this,
MR_PassBy
_other_pass_by,
MR_PointToPlaneAligningTransform
*_other);
56
64
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);
65
73
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);
74
78
MRC_API
void
MR_PointToPlaneAligningTransform_prepare
(
MR_PointToPlaneAligningTransform
*_this);
79
83
MRC_API
void
MR_PointToPlaneAligningTransform_clear
(
MR_PointToPlaneAligningTransform
*_this);
84
90
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidXf
(
const
MR_PointToPlaneAligningTransform
*_this);
91
95
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidScaleXf
(
const
MR_PointToPlaneAligningTransform
*_this);
96
101
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidXfFixedRotationAxis
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*axis);
102
107
MRC_API
MR_AffineXf3d
MR_PointToPlaneAligningTransform_findBestRigidXfOrthogonalRotationAxis
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*ort);
108
114
MRC_API
MR_Vector3d
MR_PointToPlaneAligningTransform_findBestTranslation
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*rotAngles,
const
double
*scale);
115
120
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateAmendment
(
const
MR_PointToPlaneAligningTransform
*_this);
121
126
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateAmendmentWithScale
(
const
MR_PointToPlaneAligningTransform
*_this);
127
133
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateFixedAxisAmendment
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*axis);
134
140
MRC_API
MR_RigidScaleXf3d
*
MR_PointToPlaneAligningTransform_calculateOrthogonalAxisAmendment
(
const
MR_PointToPlaneAligningTransform
*_this,
const
MR_Vector3d
*ort);
141
142
#ifdef __cplusplus
143
}
// extern "C"
144
#endif
MRAffineXf.h
MR_PointToPlaneAligningTransform
struct MR_PointToPlaneAligningTransform MR_PointToPlaneAligningTransform
Definition
MRICP.h:22
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:23
exports.h
MRC_API
#define MRC_API
Definition
exports.h:11
MR_AffineXf3d
Definition
MRAffineXf.h:47
MR_Vector3d
Definition
MRVector3.h:61
MR_Vector3f
Definition
MRVector3.h:52
MeshLib
Cbindings
MRCMesh
MRPointToPlaneAligningTransform.h
Generated by
1.11.0