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
8
#ifdef __cplusplus
9
extern
"C"
{
10
#endif
11
12
typedef
struct
MR_Vector3d
MR_Vector3d
;
// Defined in `#include <MRCMesh/MRVector3.h>`.
13
typedef
struct
MR_Vector3f
MR_Vector3f
;
// Defined in `#include <MRCMesh/MRVector3.h>`.
14
typedef
struct
MR_std_vector_MR_RigidXf3d
MR_std_vector_MR_RigidXf3d
;
// Defined in `#include <MRCMisc/std_vector_MR_RigidXf3d.h>`.
15
16
21
typedef
struct
MR_MultiwayAligningTransform_Stabilizer
MR_MultiwayAligningTransform_Stabilizer
;
22
28
typedef
struct
MR_MultiwayAligningTransform
MR_MultiwayAligningTransform
;
29
32
MRC_API
MR_MultiwayAligningTransform
*
MR_MultiwayAligningTransform_DefaultConstruct
(
void
);
33
37
MRC_API
MR_MultiwayAligningTransform
*
MR_MultiwayAligningTransform_DefaultConstructArray
(
size_t
num_elems);
38
40
MRC_API
const
MR_MultiwayAligningTransform
*
MR_MultiwayAligningTransform_OffsetPtr
(
const
MR_MultiwayAligningTransform
*ptr, ptrdiff_t i);
41
43
MRC_API
MR_MultiwayAligningTransform
*
MR_MultiwayAligningTransform_OffsetMutablePtr
(
MR_MultiwayAligningTransform
*ptr, ptrdiff_t i);
44
47
MRC_API
MR_MultiwayAligningTransform
*
MR_MultiwayAligningTransform_ConstructFromAnother
(
MR_PassBy
_other_pass_by,
MR_MultiwayAligningTransform
*_other);
48
52
MRC_API
MR_MultiwayAligningTransform
*
MR_MultiwayAligningTransform_Construct
(
int
numObjs);
53
55
MRC_API
void
MR_MultiwayAligningTransform_Destroy
(
const
MR_MultiwayAligningTransform
*_this);
56
58
MRC_API
void
MR_MultiwayAligningTransform_DestroyArray
(
const
MR_MultiwayAligningTransform
*_this);
59
63
MRC_API
MR_MultiwayAligningTransform
*
MR_MultiwayAligningTransform_AssignFromAnother
(
MR_MultiwayAligningTransform
*_this,
MR_PassBy
_other_pass_by,
MR_MultiwayAligningTransform
*_other);
64
68
MRC_API
void
MR_MultiwayAligningTransform_reset
(
MR_MultiwayAligningTransform
*_this,
int
numObjs);
69
77
MRC_API
void
MR_MultiwayAligningTransform_add_5_MR_Vector3d
(
MR_MultiwayAligningTransform
*_this,
int
objA,
const
MR_Vector3d
*pA,
int
objB,
const
MR_Vector3d
*pB,
const
double
*w);
78
86
MRC_API
void
MR_MultiwayAligningTransform_add_5_MR_Vector3f
(
MR_MultiwayAligningTransform
*_this,
int
objA,
const
MR_Vector3f
*pA,
int
objB,
const
MR_Vector3f
*pB,
const
float
*w);
87
97
MRC_API
void
MR_MultiwayAligningTransform_add_6_MR_Vector3d
(
MR_MultiwayAligningTransform
*_this,
int
objA,
const
MR_Vector3d
*pA,
int
objB,
const
MR_Vector3d
*pB,
const
MR_Vector3d
*n,
const
double
*w);
98
108
MRC_API
void
MR_MultiwayAligningTransform_add_6_MR_Vector3f
(
MR_MultiwayAligningTransform
*_this,
int
objA,
const
MR_Vector3f
*pA,
int
objB,
const
MR_Vector3f
*pB,
const
MR_Vector3f
*n,
const
float
*w);
109
114
MRC_API
void
MR_MultiwayAligningTransform_add_1
(
MR_MultiwayAligningTransform
*_this,
const
MR_MultiwayAligningTransform
*r);
115
123
MRC_API
MR_std_vector_MR_RigidXf3d
*
MR_MultiwayAligningTransform_solve_1
(
const
MR_MultiwayAligningTransform
*_this,
const
MR_MultiwayAligningTransform_Stabilizer
*stab);
124
128
MRC_API
MR_std_vector_MR_RigidXf3d
*
MR_MultiwayAligningTransform_solve_0
(
const
MR_MultiwayAligningTransform
*_this);
129
130
// length units
134
MRC_API
const
double
*
MR_MultiwayAligningTransform_Stabilizer_Get_rot
(
const
MR_MultiwayAligningTransform_Stabilizer
*_this);
135
136
// length units
139
MRC_API
void
MR_MultiwayAligningTransform_Stabilizer_Set_rot
(
MR_MultiwayAligningTransform_Stabilizer
*_this,
double
value);
140
141
// length units
145
MRC_API
double
*
MR_MultiwayAligningTransform_Stabilizer_GetMutable_rot
(
MR_MultiwayAligningTransform_Stabilizer
*_this);
146
147
// dimensionless
151
MRC_API
const
double
*
MR_MultiwayAligningTransform_Stabilizer_Get_shift
(
const
MR_MultiwayAligningTransform_Stabilizer
*_this);
152
153
// dimensionless
156
MRC_API
void
MR_MultiwayAligningTransform_Stabilizer_Set_shift
(
MR_MultiwayAligningTransform_Stabilizer
*_this,
double
value);
157
158
// dimensionless
162
MRC_API
double
*
MR_MultiwayAligningTransform_Stabilizer_GetMutable_shift
(
MR_MultiwayAligningTransform_Stabilizer
*_this);
163
166
MRC_API
MR_MultiwayAligningTransform_Stabilizer
*
MR_MultiwayAligningTransform_Stabilizer_DefaultConstruct
(
void
);
167
171
MRC_API
MR_MultiwayAligningTransform_Stabilizer
*
MR_MultiwayAligningTransform_Stabilizer_DefaultConstructArray
(
size_t
num_elems);
172
175
MRC_API
MR_MultiwayAligningTransform_Stabilizer
*
MR_MultiwayAligningTransform_Stabilizer_ConstructFrom
(
double
rot,
double
shift);
176
178
MRC_API
const
MR_MultiwayAligningTransform_Stabilizer
*
MR_MultiwayAligningTransform_Stabilizer_OffsetPtr
(
const
MR_MultiwayAligningTransform_Stabilizer
*ptr, ptrdiff_t i);
179
181
MRC_API
MR_MultiwayAligningTransform_Stabilizer
*
MR_MultiwayAligningTransform_Stabilizer_OffsetMutablePtr
(
MR_MultiwayAligningTransform_Stabilizer
*ptr, ptrdiff_t i);
182
186
MRC_API
MR_MultiwayAligningTransform_Stabilizer
*
MR_MultiwayAligningTransform_Stabilizer_ConstructFromAnother
(
const
MR_MultiwayAligningTransform_Stabilizer
*_other);
187
189
MRC_API
void
MR_MultiwayAligningTransform_Stabilizer_Destroy
(
const
MR_MultiwayAligningTransform_Stabilizer
*_this);
190
192
MRC_API
void
MR_MultiwayAligningTransform_Stabilizer_DestroyArray
(
const
MR_MultiwayAligningTransform_Stabilizer
*_this);
193
198
MRC_API
MR_MultiwayAligningTransform_Stabilizer
*
MR_MultiwayAligningTransform_Stabilizer_AssignFromAnother
(
MR_MultiwayAligningTransform_Stabilizer
*_this,
const
MR_MultiwayAligningTransform_Stabilizer
*_other);
199
200
#ifdef __cplusplus
201
}
// extern "C"
202
#endif
MR_MultiwayAligningTransform_Stabilizer_AssignFromAnother
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_AssignFromAnother(MR_MultiwayAligningTransform_Stabilizer *_this, const MR_MultiwayAligningTransform_Stabilizer *_other)
MR_MultiwayAligningTransform_Stabilizer
struct MR_MultiwayAligningTransform_Stabilizer MR_MultiwayAligningTransform_Stabilizer
Definition
MRMultiwayAligningTransform.h:21
MR_MultiwayAligningTransform_Stabilizer_Set_shift
MRC_API void MR_MultiwayAligningTransform_Stabilizer_Set_shift(MR_MultiwayAligningTransform_Stabilizer *_this, double value)
MR_MultiwayAligningTransform_solve_0
MRC_API MR_std_vector_MR_RigidXf3d * MR_MultiwayAligningTransform_solve_0(const MR_MultiwayAligningTransform *_this)
MR_MultiwayAligningTransform_DestroyArray
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.
MR_MultiwayAligningTransform_add_5_MR_Vector3f
MRC_API void MR_MultiwayAligningTransform_add_5_MR_Vector3f(MR_MultiwayAligningTransform *_this, int objA, const MR_Vector3f *pA, int objB, const MR_Vector3f *pB, const float *w)
MR_MultiwayAligningTransform_AssignFromAnother
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_AssignFromAnother(MR_MultiwayAligningTransform *_this, MR_PassBy _other_pass_by, MR_MultiwayAligningTransform *_other)
MR_MultiwayAligningTransform_Stabilizer_ConstructFrom
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_ConstructFrom(double rot, double shift)
MR_MultiwayAligningTransform_Destroy
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...
MR_MultiwayAligningTransform_Construct
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_Construct(int numObjs)
MR_MultiwayAligningTransform_OffsetPtr
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...
MR_MultiwayAligningTransform_Stabilizer_Get_shift
MRC_API const double * MR_MultiwayAligningTransform_Stabilizer_Get_shift(const MR_MultiwayAligningTransform_Stabilizer *_this)
MR_MultiwayAligningTransform_DefaultConstruct
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_DefaultConstruct(void)
MR_MultiwayAligningTransform_Stabilizer_DefaultConstructArray
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_DefaultConstructArray(size_t num_elems)
MR_MultiwayAligningTransform_add_1
MRC_API void MR_MultiwayAligningTransform_add_1(MR_MultiwayAligningTransform *_this, const MR_MultiwayAligningTransform *r)
MR_MultiwayAligningTransform_Stabilizer_GetMutable_shift
MRC_API double * MR_MultiwayAligningTransform_Stabilizer_GetMutable_shift(MR_MultiwayAligningTransform_Stabilizer *_this)
MR_MultiwayAligningTransform_Stabilizer_Get_rot
MRC_API const double * MR_MultiwayAligningTransform_Stabilizer_Get_rot(const MR_MultiwayAligningTransform_Stabilizer *_this)
MR_MultiwayAligningTransform_OffsetMutablePtr
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...
MR_MultiwayAligningTransform_ConstructFromAnother
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_ConstructFromAnother(MR_PassBy _other_pass_by, MR_MultiwayAligningTransform *_other)
MR_MultiwayAligningTransform_reset
MRC_API void MR_MultiwayAligningTransform_reset(MR_MultiwayAligningTransform *_this, int numObjs)
MR_MultiwayAligningTransform_Stabilizer_Set_rot
MRC_API void MR_MultiwayAligningTransform_Stabilizer_Set_rot(MR_MultiwayAligningTransform_Stabilizer *_this, double value)
MR_MultiwayAligningTransform_Stabilizer_GetMutable_rot
MRC_API double * MR_MultiwayAligningTransform_Stabilizer_GetMutable_rot(MR_MultiwayAligningTransform_Stabilizer *_this)
MR_MultiwayAligningTransform_DefaultConstructArray
MRC_API MR_MultiwayAligningTransform * MR_MultiwayAligningTransform_DefaultConstructArray(size_t num_elems)
MR_std_vector_MR_RigidXf3d
struct MR_std_vector_MR_RigidXf3d MR_std_vector_MR_RigidXf3d
Definition
MRMultiwayAligningTransform.h:14
MR_MultiwayAligningTransform_Stabilizer_ConstructFromAnother
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_ConstructFromAnother(const MR_MultiwayAligningTransform_Stabilizer *_other)
MR_MultiwayAligningTransform_Stabilizer_Destroy
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...
MR_MultiwayAligningTransform_add_6_MR_Vector3d
MRC_API void MR_MultiwayAligningTransform_add_6_MR_Vector3d(MR_MultiwayAligningTransform *_this, int objA, const MR_Vector3d *pA, int objB, const MR_Vector3d *pB, const MR_Vector3d *n, const double *w)
MR_MultiwayAligningTransform_Stabilizer_OffsetMutablePtr
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...
MR_MultiwayAligningTransform_Stabilizer_DefaultConstruct
MRC_API MR_MultiwayAligningTransform_Stabilizer * MR_MultiwayAligningTransform_Stabilizer_DefaultConstruct(void)
MR_MultiwayAligningTransform_solve_1
MRC_API MR_std_vector_MR_RigidXf3d * MR_MultiwayAligningTransform_solve_1(const MR_MultiwayAligningTransform *_this, const MR_MultiwayAligningTransform_Stabilizer *stab)
MR_MultiwayAligningTransform
struct MR_MultiwayAligningTransform MR_MultiwayAligningTransform
Definition
MRMultiwayAligningTransform.h:28
MR_MultiwayAligningTransform_add_5_MR_Vector3d
MRC_API void MR_MultiwayAligningTransform_add_5_MR_Vector3d(MR_MultiwayAligningTransform *_this, int objA, const MR_Vector3d *pA, int objB, const MR_Vector3d *pB, const double *w)
MR_MultiwayAligningTransform_add_6_MR_Vector3f
MRC_API void MR_MultiwayAligningTransform_add_6_MR_Vector3f(MR_MultiwayAligningTransform *_this, int objA, const MR_Vector3f *pA, int objB, const MR_Vector3f *pB, const MR_Vector3f *n, const float *w)
MR_MultiwayAligningTransform_Stabilizer_OffsetPtr
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...
MR_MultiwayAligningTransform_Stabilizer_DestroyArray
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...
common.h
MR_PassBy
MR_PassBy
Definition
common.h:23
exports.h
MRC_API
#define MRC_API
Definition
exports.h:11
MR_Vector3d
Definition
MRVector3.h:61
MR_Vector3f
Definition
MRVector3.h:52
MeshLib
Cbindings
MRCMesh
MRMultiwayAligningTransform.h
Generated by
1.11.0