MeshLib C Docs
Loading...
Searching...
No Matches
MRQuadraticForm.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/exports.h>
4
5#include <stddef.h>
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11typedef struct MR_SymMatrix2d MR_SymMatrix2d; // Defined in `#include <MRCMesh/MRSymMatrix2.h>`.
12typedef struct MR_SymMatrix2f MR_SymMatrix2f; // Defined in `#include <MRCMesh/MRSymMatrix2.h>`.
13typedef struct MR_SymMatrix3d MR_SymMatrix3d; // Defined in `#include <MRCMesh/MRSymMatrix3.h>`.
14typedef struct MR_SymMatrix3f MR_SymMatrix3f; // Defined in `#include <MRCMesh/MRSymMatrix3.h>`.
15typedef struct MR_Vector2d MR_Vector2d; // Defined in `#include <MRCMesh/MRVector2.h>`.
16typedef struct MR_Vector2f MR_Vector2f; // Defined in `#include <MRCMesh/MRVector2.h>`.
17typedef struct MR_Vector3d MR_Vector3d; // Defined in `#include <MRCMesh/MRVector3.h>`.
18typedef struct MR_Vector3f MR_Vector3f; // Defined in `#include <MRCMesh/MRVector3.h>`.
19
20
25
30
35
40
46
53
59
64MRC_API const float *MR_QuadraticForm2f_Get_c(const MR_QuadraticForm2f *_this);
65
69MRC_API void MR_QuadraticForm2f_Set_c(MR_QuadraticForm2f *_this, float value);
70
76
80
85
92
96
100
106
109
112
120
125MRC_API float MR_QuadraticForm2f_eval(const MR_QuadraticForm2f *_this, const MR_Vector2f *x);
126
131
136MRC_API void MR_QuadraticForm2f_addDistToPlane_1(MR_QuadraticForm2f *_this, const MR_Vector2f *planeUnitNormal);
137
141MRC_API void MR_QuadraticForm2f_addDistToPlane_2(MR_QuadraticForm2f *_this, const MR_Vector2f *planeUnitNormal, float weight);
142
148
152MRC_API void MR_QuadraticForm2f_addDistToLine_2(MR_QuadraticForm2f *_this, const MR_Vector2f *lineUnitDir, float weight);
153
159
166
172
177MRC_API const double *MR_QuadraticForm2d_Get_c(const MR_QuadraticForm2d *_this);
178
182MRC_API void MR_QuadraticForm2d_Set_c(MR_QuadraticForm2d *_this, double value);
183
189
193
198
205
209
213
219
222
225
233
238MRC_API double MR_QuadraticForm2d_eval(const MR_QuadraticForm2d *_this, const MR_Vector2d *x);
239
243MRC_API void MR_QuadraticForm2d_addDistToOrigin(MR_QuadraticForm2d *_this, double weight);
244
249MRC_API void MR_QuadraticForm2d_addDistToPlane_1(MR_QuadraticForm2d *_this, const MR_Vector2d *planeUnitNormal);
250
254MRC_API void MR_QuadraticForm2d_addDistToPlane_2(MR_QuadraticForm2d *_this, const MR_Vector2d *planeUnitNormal, double weight);
255
261
265MRC_API void MR_QuadraticForm2d_addDistToLine_2(MR_QuadraticForm2d *_this, const MR_Vector2d *lineUnitDir, double weight);
266
272
279
285
290MRC_API const float *MR_QuadraticForm3f_Get_c(const MR_QuadraticForm3f *_this);
291
295MRC_API void MR_QuadraticForm3f_Set_c(MR_QuadraticForm3f *_this, float value);
296
302
306
311
318
322
326
332
335
338
346
351MRC_API float MR_QuadraticForm3f_eval(const MR_QuadraticForm3f *_this, const MR_Vector3f *x);
352
357
362MRC_API void MR_QuadraticForm3f_addDistToPlane_1(MR_QuadraticForm3f *_this, const MR_Vector3f *planeUnitNormal);
363
367MRC_API void MR_QuadraticForm3f_addDistToPlane_2(MR_QuadraticForm3f *_this, const MR_Vector3f *planeUnitNormal, float weight);
368
374
378MRC_API void MR_QuadraticForm3f_addDistToLine_2(MR_QuadraticForm3f *_this, const MR_Vector3f *lineUnitDir, float weight);
379
385
392
398
403MRC_API const double *MR_QuadraticForm3d_Get_c(const MR_QuadraticForm3d *_this);
404
408MRC_API void MR_QuadraticForm3d_Set_c(MR_QuadraticForm3d *_this, double value);
409
415
419
424
431
435
439
445
448
451
459
464MRC_API double MR_QuadraticForm3d_eval(const MR_QuadraticForm3d *_this, const MR_Vector3d *x);
465
469MRC_API void MR_QuadraticForm3d_addDistToOrigin(MR_QuadraticForm3d *_this, double weight);
470
475MRC_API void MR_QuadraticForm3d_addDistToPlane_1(MR_QuadraticForm3d *_this, const MR_Vector3d *planeUnitNormal);
476
480MRC_API void MR_QuadraticForm3d_addDistToPlane_2(MR_QuadraticForm3d *_this, const MR_Vector3d *planeUnitNormal, double weight);
481
487
491MRC_API void MR_QuadraticForm3d_addDistToLine_2(MR_QuadraticForm3d *_this, const MR_Vector3d *lineUnitDir, double weight);
492
493#ifdef __cplusplus
494} // extern "C"
495#endif
struct MR_QuadraticForm3f MR_QuadraticForm3f
Definition MRMesh.h:35
MRC_API void MR_QuadraticForm3d_addDistToOrigin(MR_QuadraticForm3d *_this, double weight)
MRC_API const double * MR_QuadraticForm3d_Get_c(const MR_QuadraticForm3d *_this)
struct MR_SymMatrix2f MR_SymMatrix2f
Definition MRQuadraticForm.h:12
MRC_API void MR_QuadraticForm3f_addDistToLine_2(MR_QuadraticForm3f *_this, const MR_Vector3f *lineUnitDir, float weight)
MRC_API void MR_QuadraticForm3d_addDistToLine_1(MR_QuadraticForm3d *_this, const MR_Vector3d *lineUnitDir)
struct MR_SymMatrix3d MR_SymMatrix3d
Definition MRQuadraticForm.h:13
MRC_API MR_QuadraticForm2d * MR_QuadraticForm2d_AssignFromAnother(MR_QuadraticForm2d *_this, const MR_QuadraticForm2d *_other)
MRC_API double MR_QuadraticForm2d_eval(const MR_QuadraticForm2d *_this, const MR_Vector2d *x)
MRC_API const MR_QuadraticForm2d * MR_QuadraticForm2d_OffsetPtr(const MR_QuadraticForm2d *ptr, ptrdiff_t i)
MRC_API void MR_QuadraticForm2f_addDistToPlane_2(MR_QuadraticForm2f *_this, const MR_Vector2f *planeUnitNormal, float weight)
MRC_API void MR_QuadraticForm3d_addDistToPlane_1(MR_QuadraticForm3d *_this, const MR_Vector3d *planeUnitNormal)
MRC_API MR_QuadraticForm3d * MR_QuadraticForm3d_ConstructFromAnother(const MR_QuadraticForm3d *_other)
MRC_API float * MR_QuadraticForm3f_GetMutable_c(MR_QuadraticForm3f *_this)
MRC_API double MR_QuadraticForm3d_eval(const MR_QuadraticForm3d *_this, const MR_Vector3d *x)
MRC_API void MR_QuadraticForm2d_Destroy(const MR_QuadraticForm2d *_this)
Destroys a heap-allocated instance of MR_QuadraticForm2d. Does nothing if the pointer is null.
MRC_API void MR_QuadraticForm2d_addDistToPlane_1(MR_QuadraticForm2d *_this, const MR_Vector2d *planeUnitNormal)
MRC_API MR_QuadraticForm3d * MR_QuadraticForm3d_DefaultConstruct(void)
MRC_API MR_QuadraticForm2f * MR_QuadraticForm2f_ConstructFrom(const MR_SymMatrix2f *A, float c)
MRC_API double * MR_QuadraticForm2d_GetMutable_c(MR_QuadraticForm2d *_this)
MRC_API MR_QuadraticForm2f * MR_QuadraticForm2f_DefaultConstruct(void)
MRC_API const MR_QuadraticForm3f * MR_QuadraticForm3f_OffsetPtr(const MR_QuadraticForm3f *ptr, ptrdiff_t i)
MRC_API MR_QuadraticForm3f * MR_QuadraticForm3f_ConstructFromAnother(const MR_QuadraticForm3f *_other)
MRC_API MR_QuadraticForm2d * MR_QuadraticForm2d_ConstructFromAnother(const MR_QuadraticForm2d *_other)
MRC_API MR_QuadraticForm3f * MR_QuadraticForm3f_OffsetMutablePtr(MR_QuadraticForm3f *ptr, ptrdiff_t i)
MRC_API float * MR_QuadraticForm2f_GetMutable_c(MR_QuadraticForm2f *_this)
MRC_API void MR_QuadraticForm3f_Destroy(const MR_QuadraticForm3f *_this)
Destroys a heap-allocated instance of MR_QuadraticForm3f. Does nothing if the pointer is null.
MRC_API float MR_QuadraticForm2f_eval(const MR_QuadraticForm2f *_this, const MR_Vector2f *x)
MRC_API void MR_QuadraticForm3d_DestroyArray(const MR_QuadraticForm3d *_this)
Destroys a heap-allocated array of MR_QuadraticForm3d. Does nothing if the pointer is null.
MRC_API void MR_QuadraticForm3d_Set_c(MR_QuadraticForm3d *_this, double value)
MRC_API MR_SymMatrix3d * MR_QuadraticForm3d_GetMutable_A(MR_QuadraticForm3d *_this)
MRC_API MR_QuadraticForm2f * MR_QuadraticForm2f_DefaultConstructArray(size_t num_elems)
struct MR_QuadraticForm2f MR_QuadraticForm2f
Definition MRQuadraticForm.h:24
MRC_API void MR_QuadraticForm2f_addDistToPlane_1(MR_QuadraticForm2f *_this, const MR_Vector2f *planeUnitNormal)
MRC_API MR_QuadraticForm3d * MR_QuadraticForm3d_DefaultConstructArray(size_t num_elems)
MRC_API void MR_QuadraticForm3f_addDistToPlane_1(MR_QuadraticForm3f *_this, const MR_Vector3f *planeUnitNormal)
MRC_API MR_QuadraticForm2d * MR_QuadraticForm2d_ConstructFrom(const MR_SymMatrix2d *A, double c)
MRC_API void MR_QuadraticForm3f_DestroyArray(const MR_QuadraticForm3f *_this)
Destroys a heap-allocated array of MR_QuadraticForm3f. Does nothing if the pointer is null.
MRC_API const MR_SymMatrix3f * MR_QuadraticForm3f_Get_A(const MR_QuadraticForm3f *_this)
MRC_API const MR_QuadraticForm2f * MR_QuadraticForm2f_OffsetPtr(const MR_QuadraticForm2f *ptr, ptrdiff_t i)
MRC_API void MR_QuadraticForm2d_addDistToPlane_2(MR_QuadraticForm2d *_this, const MR_Vector2d *planeUnitNormal, double weight)
MRC_API void MR_QuadraticForm3f_Set_c(MR_QuadraticForm3f *_this, float value)
MRC_API void MR_QuadraticForm2d_DestroyArray(const MR_QuadraticForm2d *_this)
Destroys a heap-allocated array of MR_QuadraticForm2d. Does nothing if the pointer is null.
MRC_API MR_QuadraticForm3d * MR_QuadraticForm3d_AssignFromAnother(MR_QuadraticForm3d *_this, const MR_QuadraticForm3d *_other)
MRC_API MR_QuadraticForm3f * MR_QuadraticForm3f_ConstructFrom(const MR_SymMatrix3f *A, float c)
MRC_API void MR_QuadraticForm2f_Set_c(MR_QuadraticForm2f *_this, float value)
MRC_API MR_QuadraticForm3f * MR_QuadraticForm3f_AssignFromAnother(MR_QuadraticForm3f *_this, const MR_QuadraticForm3f *_other)
MRC_API void MR_QuadraticForm2d_addDistToLine_2(MR_QuadraticForm2d *_this, const MR_Vector2d *lineUnitDir, double weight)
MRC_API MR_QuadraticForm2f * MR_QuadraticForm2f_ConstructFromAnother(const MR_QuadraticForm2f *_other)
MRC_API void MR_QuadraticForm3d_Destroy(const MR_QuadraticForm3d *_this)
Destroys a heap-allocated instance of MR_QuadraticForm3d. Does nothing if the pointer is null.
struct MR_QuadraticForm3d MR_QuadraticForm3d
Definition MRQuadraticForm.h:39
MRC_API void MR_QuadraticForm3d_addDistToPlane_2(MR_QuadraticForm3d *_this, const MR_Vector3d *planeUnitNormal, double weight)
MRC_API const float * MR_QuadraticForm3f_Get_c(const MR_QuadraticForm3f *_this)
MRC_API float MR_QuadraticForm3f_eval(const MR_QuadraticForm3f *_this, const MR_Vector3f *x)
MRC_API MR_QuadraticForm3d * MR_QuadraticForm3d_OffsetMutablePtr(MR_QuadraticForm3d *ptr, ptrdiff_t i)
MRC_API void MR_QuadraticForm2d_Set_c(MR_QuadraticForm2d *_this, double value)
MRC_API void MR_QuadraticForm3f_Set_A(MR_QuadraticForm3f *_this, const MR_SymMatrix3f *value)
MRC_API void MR_QuadraticForm3f_addDistToLine_1(MR_QuadraticForm3f *_this, const MR_Vector3f *lineUnitDir)
MRC_API const MR_QuadraticForm3d * MR_QuadraticForm3d_OffsetPtr(const MR_QuadraticForm3d *ptr, ptrdiff_t i)
MRC_API void MR_QuadraticForm2f_DestroyArray(const MR_QuadraticForm2f *_this)
Destroys a heap-allocated array of MR_QuadraticForm2f. Does nothing if the pointer is null.
MRC_API void MR_QuadraticForm3f_addDistToPlane_2(MR_QuadraticForm3f *_this, const MR_Vector3f *planeUnitNormal, float weight)
MRC_API MR_QuadraticForm2f * MR_QuadraticForm2f_AssignFromAnother(MR_QuadraticForm2f *_this, const MR_QuadraticForm2f *_other)
struct MR_QuadraticForm2d MR_QuadraticForm2d
Definition MRQuadraticForm.h:29
MRC_API MR_QuadraticForm2d * MR_QuadraticForm2d_DefaultConstructArray(size_t num_elems)
MRC_API void MR_QuadraticForm2f_addDistToLine_2(MR_QuadraticForm2f *_this, const MR_Vector2f *lineUnitDir, float weight)
MRC_API void MR_QuadraticForm2d_Set_A(MR_QuadraticForm2d *_this, const MR_SymMatrix2d *value)
MRC_API MR_QuadraticForm2d * MR_QuadraticForm2d_DefaultConstruct(void)
MRC_API const MR_SymMatrix3d * MR_QuadraticForm3d_Get_A(const MR_QuadraticForm3d *_this)
MRC_API void MR_QuadraticForm2f_Destroy(const MR_QuadraticForm2f *_this)
Destroys a heap-allocated instance of MR_QuadraticForm2f. Does nothing if the pointer is null.
MRC_API void MR_QuadraticForm3d_addDistToLine_2(MR_QuadraticForm3d *_this, const MR_Vector3d *lineUnitDir, double weight)
MRC_API MR_SymMatrix2d * MR_QuadraticForm2d_GetMutable_A(MR_QuadraticForm2d *_this)
MRC_API const MR_SymMatrix2d * MR_QuadraticForm2d_Get_A(const MR_QuadraticForm2d *_this)
MRC_API void MR_QuadraticForm2d_addDistToOrigin(MR_QuadraticForm2d *_this, double weight)
struct MR_SymMatrix3f MR_SymMatrix3f
Definition MRQuadraticForm.h:14
MRC_API MR_SymMatrix3f * MR_QuadraticForm3f_GetMutable_A(MR_QuadraticForm3f *_this)
MRC_API void MR_QuadraticForm3d_Set_A(MR_QuadraticForm3d *_this, const MR_SymMatrix3d *value)
MRC_API void MR_QuadraticForm2f_addDistToLine_1(MR_QuadraticForm2f *_this, const MR_Vector2f *lineUnitDir)
MRC_API MR_QuadraticForm3f * MR_QuadraticForm3f_DefaultConstruct(void)
MRC_API MR_QuadraticForm3d * MR_QuadraticForm3d_ConstructFrom(const MR_SymMatrix3d *A, double c)
MRC_API void MR_QuadraticForm2f_Set_A(MR_QuadraticForm2f *_this, const MR_SymMatrix2f *value)
MRC_API MR_SymMatrix2f * MR_QuadraticForm2f_GetMutable_A(MR_QuadraticForm2f *_this)
MRC_API const MR_SymMatrix2f * MR_QuadraticForm2f_Get_A(const MR_QuadraticForm2f *_this)
MRC_API void MR_QuadraticForm2f_addDistToOrigin(MR_QuadraticForm2f *_this, float weight)
MRC_API void MR_QuadraticForm3f_addDistToOrigin(MR_QuadraticForm3f *_this, float weight)
struct MR_SymMatrix2d MR_SymMatrix2d
Definition MRQuadraticForm.h:11
MRC_API MR_QuadraticForm2d * MR_QuadraticForm2d_OffsetMutablePtr(MR_QuadraticForm2d *ptr, ptrdiff_t i)
MRC_API MR_QuadraticForm3f * MR_QuadraticForm3f_DefaultConstructArray(size_t num_elems)
MRC_API const float * MR_QuadraticForm2f_Get_c(const MR_QuadraticForm2f *_this)
MRC_API void MR_QuadraticForm2d_addDistToLine_1(MR_QuadraticForm2d *_this, const MR_Vector2d *lineUnitDir)
MRC_API double * MR_QuadraticForm3d_GetMutable_c(MR_QuadraticForm3d *_this)
MRC_API const double * MR_QuadraticForm2d_Get_c(const MR_QuadraticForm2d *_this)
MRC_API MR_QuadraticForm2f * MR_QuadraticForm2f_OffsetMutablePtr(MR_QuadraticForm2f *ptr, ptrdiff_t i)
Generated from class MR::Vector2d.
Definition MRVector2.h:43
Generated from class MR::Vector2f.
Definition MRVector2.h:36
Generated from class MR::Vector3d.
Definition MRVector3.h:55
Generated from class MR::Vector3f.
Definition MRVector3.h:47