MeshLib C Docs
Loading...
Searching...
No Matches
MRMultiwayAligningTransform.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/common.h>
4#include <MRCMisc/exports.h>
5
6#include <stddef.h>
7#include <stdint.h>
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct MR_Vector3d MR_Vector3d; // Defined in `#include <MRCMesh/MRVector3.h>`.
14typedef struct MR_Vector3f MR_Vector3f; // Defined in `#include <MRCMesh/MRVector3.h>`.
15typedef struct MR_std_vector_MR_RigidXf3d MR_std_vector_MR_RigidXf3d; // Defined in `#include <MRCMisc/std_vector_MR_RigidXf3d.h>`.
16
17
23
28
32
37
40
43
47
52
55
58
63
68
76MRC_API void MR_MultiwayAligningTransform_add_5_MR_Vector3d(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3d *pA, int32_t objB, const MR_Vector3d *pB, const double *w);
77
85MRC_API void MR_MultiwayAligningTransform_add_5_MR_Vector3f(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3f *pA, int32_t objB, const MR_Vector3f *pB, const float *w);
86
96MRC_API void MR_MultiwayAligningTransform_add_6_MR_Vector3d(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3d *pA, int32_t objB, const MR_Vector3d *pB, const MR_Vector3d *n, const double *w);
97
107MRC_API void MR_MultiwayAligningTransform_add_6_MR_Vector3f(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3f *pA, int32_t objB, const MR_Vector3f *pB, const MR_Vector3f *n, const float *w);
108
114
123
128
129// length units
134
135// length units
139
140// length units
145
146// dimensionless
151
152// dimensionless
156
157// dimensionless
162
166
171
175
178
181
186
189
192
198
199#ifdef __cplusplus
200} // extern "C"
201#endif
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_AssignFromAnother(MR_MultiwayAligningTransform_Stabilizer *_this, const MR_MultiwayAligningTransform_Stabilizer *_other)
struct MR_MultiwayAligningTransform_Stabilizer MR_MultiwayAligningTransform_Stabilizer
Definition MRMultiwayAligningTransform.h:27
MRC_API void MR_MultiwayAligningTransform_Stabilizer_Set_shift(MR_MultiwayAligningTransform_Stabilizer *_this, double value)
MRC_API MR_std_vector_MR_RigidXf3d * MR_MultiwayAligningTransform_solve_0(const MR_MultiwayAligningTransform *_this)
MRC_API void MR_MultiwayAligningTransform_DestroyArray(const MR_MultiwayAligningTransform *_this)
Destroys a heap-allocated array of MR_MultiwayAligningTransform. Does nothing if the pointer is null.
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_AssignFromAnother(MR_MultiwayAligningTransform *_this, MR_PassBy _other_pass_by, MR_MultiwayAligningTransform *_other)
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_ConstructFrom(double rot, double shift)
MRC_API void MR_MultiwayAligningTransform_Destroy(const MR_MultiwayAligningTransform *_this)
Destroys a heap-allocated instance of MR_MultiwayAligningTransform. Does nothing if the pointer is nu...
MRC_API const MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_OffsetPtr(const MR_MultiwayAligningTransform *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API const double * MR_MultiwayAligningTransform_Stabilizer_Get_shift(const MR_MultiwayAligningTransform_Stabilizer *_this)
MRC_API void MR_MultiwayAligningTransform_add_5_MR_Vector3d(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3d *pA, int32_t objB, const MR_Vector3d *pB, const double *w)
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_DefaultConstruct(void)
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_DefaultConstructArray(size_t num_elems)
MRC_API void MR_MultiwayAligningTransform_add_1(MR_MultiwayAligningTransform *_this, const MR_MultiwayAligningTransform *r)
MRC_API double * MR_MultiwayAligningTransform_Stabilizer_GetMutable_shift(MR_MultiwayAligningTransform_Stabilizer *_this)
MRC_API const double * MR_MultiwayAligningTransform_Stabilizer_Get_rot(const MR_MultiwayAligningTransform_Stabilizer *_this)
MRC_API void MR_MultiwayAligningTransform_reset(MR_MultiwayAligningTransform *_this, int32_t numObjs)
MRC_API void MR_MultiwayAligningTransform_add_6_MR_Vector3f(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3f *pA, int32_t objB, const MR_Vector3f *pB, const MR_Vector3f *n, const float *w)
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_OffsetMutablePtr(MR_MultiwayAligningTransform *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_ConstructFromAnother(MR_PassBy _other_pass_by, MR_MultiwayAligningTransform *_other)
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_Construct(int32_t numObjs)
MRC_API void MR_MultiwayAligningTransform_add_6_MR_Vector3d(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3d *pA, int32_t objB, const MR_Vector3d *pB, const MR_Vector3d *n, const double *w)
MRC_API void MR_MultiwayAligningTransform_Stabilizer_Set_rot(MR_MultiwayAligningTransform_Stabilizer *_this, double value)
MRC_API double * MR_MultiwayAligningTransform_Stabilizer_GetMutable_rot(MR_MultiwayAligningTransform_Stabilizer *_this)
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_DefaultConstructArray(size_t num_elems)
struct MR_std_vector_MR_RigidXf3d MR_std_vector_MR_RigidXf3d
Definition MRMultiwayAligningTransform.h:15
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_ConstructFromAnother(const MR_MultiwayAligningTransform_Stabilizer *_other)
MRC_API void MR_MultiwayAligningTransform_Stabilizer_Destroy(const MR_MultiwayAligningTransform_Stabilizer *_this)
Destroys a heap-allocated instance of MR_MultiwayAligningTransform_Stabilizer. Does nothing if the po...
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_OffsetMutablePtr(MR_MultiwayAligningTransform_Stabilizer *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_DefaultConstruct(void)
MRC_API MR_std_vector_MR_RigidXf3d * MR_MultiwayAligningTransform_solve_1(const MR_MultiwayAligningTransform *_this, const MR_MultiwayAligningTransform_Stabilizer *stab)
MRC_API void MR_MultiwayAligningTransform_add_5_MR_Vector3f(MR_MultiwayAligningTransform *_this, int32_t objA, const MR_Vector3f *pA, int32_t objB, const MR_Vector3f *pB, const float *w)
struct MR_MultiwayAligningTransform MR_MultiwayAligningTransform
Definition MRMultiwayAligningTransform.h:22
MRC_API const MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_OffsetPtr(const MR_MultiwayAligningTransform_Stabilizer *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API void MR_MultiwayAligningTransform_Stabilizer_DestroyArray(const MR_MultiwayAligningTransform_Stabilizer *_this)
Destroys a heap-allocated array of MR_MultiwayAligningTransform_Stabilizer. Does nothing if the point...
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11
Definition MRVector3.h:60
Definition MRVector3.h:51