MeshLib C Docs
Loading...
Searching...
No Matches
MRAlignContoursToMesh.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRVector2.h>
4#include <MRCMesh/MRVector3.h>
5#include <MRCMisc/exports.h>
6
7#include <stdbool.h>
8#include <stddef.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14typedef struct MR_CurvePoint MR_CurvePoint; // Defined in `#include <MRCMesh/MRCurve.h>`.
15typedef struct MR_Mesh MR_Mesh; // Defined in `#include <MRCMesh/MRMesh.h>`.
16typedef struct MR_MeshTriPoint MR_MeshTriPoint; // Defined in `#include <MRCMesh/MRMeshTriPoint.h>`.
17typedef struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string; // Defined in `#include <MRCMisc/expected_MR_Mesh_std_string.h>`.
18typedef struct MR_expected_std_function_MR_CurvePoint_func_from_float_std_string MR_expected_std_function_MR_CurvePoint_func_from_float_std_string; // Defined in `#include <MRCMisc/expected_std_function_MR_CurvePoint_func_from_float_std_string.h>`.
19typedef struct MR_expected_std_vector_float_std_string MR_expected_std_vector_float_std_string; // Defined in `#include <MRCMisc/expected_std_vector_float_std_string.h>`.
20typedef struct MR_std_function_MR_CurvePoint_from_float MR_std_function_MR_CurvePoint_from_float; // Defined in `#include <MRCMisc/std_function_MR_CurvePoint_from_float.h>`.
21typedef struct MR_std_vector_MR_CurvePoint MR_std_vector_MR_CurvePoint; // Defined in `#include <MRCMisc/std_vector_MR_CurvePoint.h>`.
22typedef struct MR_std_vector_MR_EdgePoint MR_std_vector_MR_EdgePoint; // Defined in `#include <MRCMisc/std_vector_MR_EdgePoint.h>`.
23typedef struct MR_std_vector_float MR_std_vector_float; // Defined in `#include <MRCMisc/std_vector_float.h>`.
24typedef struct MR_std_vector_std_vector_MR_Vector2f MR_std_vector_std_vector_MR_Vector2f; // Defined in `#include <MRCMisc/std_vector_std_vector_MR_Vector2f.h>`.
25
26
31
36
42
50
56
63
71
78
84
91
97
104
112
119
125
131
137
143
149
155
159
164
173MRC_API MR_ContoursMeshAlignParams *MR_ContoursMeshAlignParams_ConstructFrom(const MR_MeshTriPoint *meshPoint, MR_Vector2f pivotPoint, MR_Vector3f xDirection, const MR_Vector3f *zDirection, float extrusion, float maximumShift);
174
178
182
188
191
194
202
210
216
222
228
235
243
250
256
262
268
274
280
286
292
298
304
308
313
318MRC_API MR_BendContoursAlongCurveParams *MR_BendContoursAlongCurveParams_ConstructFrom(float pivotCurveTime, MR_Vector2f pivotBoxPoint, bool periodicCurve, bool stretch, float extrusion);
319
323
327
333
336
339
347
355
366
375
386
395
406
415
424
430
435MRC_API void MR_addBaseToPlanarMesh(MR_Mesh *mesh, float zOffset);
436
437#ifdef __cplusplus
438} // extern "C"
439#endif
struct MR_std_vector_std_vector_MR_Vector2f MR_std_vector_std_vector_MR_Vector2f
Definition MR2DContoursTriangulation.h:21
struct MR_MeshTriPoint MR_MeshTriPoint
Definition MRAggregateFlow.h:13
MRC_API MR_Vector2f * MR_BendContoursAlongCurveParams_GetMutable_pivotBoxPoint(MR_BendContoursAlongCurveParams *_this)
MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_DefaultConstruct(void)
struct MR_CurvePoint MR_CurvePoint
Definition MRAlignContoursToMesh.h:14
MRC_API void MR_ContoursMeshAlignParams_Set_zDirection(MR_ContoursMeshAlignParams *_this, const MR_Vector3f *value)
MRC_API const float * MR_BendContoursAlongCurveParams_Get_extrusion(const MR_BendContoursAlongCurveParams *_this)
MRC_API MR_expected_MR_Mesh_std_string * MR_alignContoursToMesh(const MR_Mesh *mesh, const MR_std_vector_std_vector_MR_Vector2f *contours, const MR_ContoursMeshAlignParams *params)
MRC_API MR_Vector2f * MR_ContoursMeshAlignParams_GetMutable_pivotPoint(MR_ContoursMeshAlignParams *_this)
MRC_API const float * MR_BendContoursAlongCurveParams_Get_pivotCurveTime(const MR_BendContoursAlongCurveParams *_this)
MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_OffsetMutablePtr(MR_BendContoursAlongCurveParams *ptr, ptrdiff_t i)
MRC_API float * MR_ContoursMeshAlignParams_GetMutable_extrusion(MR_ContoursMeshAlignParams *_this)
MRC_API MR_MeshTriPoint * MR_ContoursMeshAlignParams_GetMutable_meshPoint(MR_ContoursMeshAlignParams *_this)
MRC_API void MR_ContoursMeshAlignParams_Set_meshPoint(MR_ContoursMeshAlignParams *_this, const MR_MeshTriPoint *value)
MRC_API void MR_BendContoursAlongCurveParams_Set_extrusion(MR_BendContoursAlongCurveParams *_this, float value)
MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_AssignFromAnother(MR_BendContoursAlongCurveParams *_this, const MR_BendContoursAlongCurveParams *_other)
MRC_API MR_expected_MR_Mesh_std_string * MR_bendContoursAlongSurfacePath_4(const MR_std_vector_std_vector_MR_Vector2f *contours, const MR_Mesh *mesh, const MR_std_vector_MR_EdgePoint *path, const MR_BendContoursAlongCurveParams *params)
MRC_API const float * MR_ContoursMeshAlignParams_Get_maximumShift(const MR_ContoursMeshAlignParams *_this)
MRC_API MR_expected_MR_Mesh_std_string * MR_bendContoursAlongSurfacePath_6(const MR_std_vector_std_vector_MR_Vector2f *contours, const MR_Mesh *mesh, const MR_MeshTriPoint *start, const MR_std_vector_MR_EdgePoint *path, const MR_MeshTriPoint *end, const MR_BendContoursAlongCurveParams *params)
struct MR_expected_std_function_MR_CurvePoint_func_from_float_std_string MR_expected_std_function_MR_CurvePoint_func_from_float_std_string
Definition MRAlignContoursToMesh.h:18
MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_DefaultConstructArray(size_t num_elems)
MRC_API const bool * MR_BendContoursAlongCurveParams_Get_periodicCurve(const MR_BendContoursAlongCurveParams *_this)
MRC_API void MR_BendContoursAlongCurveParams_Set_stretch(MR_BendContoursAlongCurveParams *_this, bool value)
MRC_API const MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_OffsetPtr(const MR_BendContoursAlongCurveParams *ptr, ptrdiff_t i)
MRC_API bool * MR_BendContoursAlongCurveParams_GetMutable_periodicCurve(MR_BendContoursAlongCurveParams *_this)
MRC_API void MR_BendContoursAlongCurveParams_Set_pivotCurveTime(MR_BendContoursAlongCurveParams *_this, float value)
MRC_API const MR_Vector3f ** MR_ContoursMeshAlignParams_GetMutable_zDirection(MR_ContoursMeshAlignParams *_this)
MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_OffsetMutablePtr(MR_ContoursMeshAlignParams *ptr, ptrdiff_t i)
MRC_API MR_std_vector_MR_CurvePoint * MR_meshPathCurvePoints_4(const MR_Mesh *mesh, const MR_MeshTriPoint *start, const MR_std_vector_MR_EdgePoint *path, const MR_MeshTriPoint *end)
struct MR_std_vector_MR_CurvePoint MR_std_vector_MR_CurvePoint
Definition MRAlignContoursToMesh.h:21
MRC_API MR_std_vector_MR_CurvePoint * MR_meshPathCurvePoints_2(const MR_Mesh *mesh, const MR_std_vector_MR_EdgePoint *path)
MRC_API MR_expected_std_vector_float_std_string * MR_findPartialLens(const MR_std_vector_MR_CurvePoint *cp, const bool *unitLength, float *outCurveLen)
MRC_API float * MR_BendContoursAlongCurveParams_GetMutable_extrusion(MR_BendContoursAlongCurveParams *_this)
MRC_API const MR_Vector3f *const * MR_ContoursMeshAlignParams_Get_zDirection(const MR_ContoursMeshAlignParams *_this)
MRC_API MR_expected_std_function_MR_CurvePoint_func_from_float_std_string * MR_curveFromPoints_const_std_vector_MR_CurvePoint_ref(const MR_std_vector_MR_CurvePoint *cp, const bool *unitLength, float *outCurveLen)
MRC_API MR_expected_std_function_MR_CurvePoint_func_from_float_std_string * MR_curveFromPoints_std_vector_MR_CurvePoint_rvalue_ref(MR_std_vector_MR_CurvePoint *cp, const bool *unitLength, float *outCurveLen)
MRC_API const MR_Vector2f * MR_ContoursMeshAlignParams_Get_pivotPoint(const MR_ContoursMeshAlignParams *_this)
MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_ConstructFromAnother(const MR_ContoursMeshAlignParams *_other)
MRC_API const bool * MR_BendContoursAlongCurveParams_Get_stretch(const MR_BendContoursAlongCurveParams *_this)
MRC_API void MR_BendContoursAlongCurveParams_DestroyArray(const MR_BendContoursAlongCurveParams *_this)
Destroys a heap-allocated array of MR_BendContoursAlongCurveParams. Does nothing if the pointer is nu...
MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_ConstructFrom(float pivotCurveTime, MR_Vector2f pivotBoxPoint, bool periodicCurve, bool stretch, float extrusion)
MRC_API void MR_ContoursMeshAlignParams_Destroy(const MR_ContoursMeshAlignParams *_this)
Destroys a heap-allocated instance of MR_ContoursMeshAlignParams. Does nothing if the pointer is null...
struct MR_expected_std_vector_float_std_string MR_expected_std_vector_float_std_string
Definition MRAlignContoursToMesh.h:19
struct MR_BendContoursAlongCurveParams MR_BendContoursAlongCurveParams
Definition MRAlignContoursToMesh.h:35
MRC_API void MR_ContoursMeshAlignParams_Set_pivotPoint(MR_ContoursMeshAlignParams *_this, MR_Vector2f value)
MRC_API const MR_MeshTriPoint * MR_ContoursMeshAlignParams_Get_meshPoint(const MR_ContoursMeshAlignParams *_this)
MRC_API MR_Vector3f * MR_ContoursMeshAlignParams_GetMutable_xDirection(MR_ContoursMeshAlignParams *_this)
MRC_API void MR_ContoursMeshAlignParams_DestroyArray(const MR_ContoursMeshAlignParams *_this)
Destroys a heap-allocated array of MR_ContoursMeshAlignParams. Does nothing if the pointer is null.
struct MR_std_vector_MR_EdgePoint MR_std_vector_MR_EdgePoint
Definition MRAlignContoursToMesh.h:22
MRC_API const MR_Vector3f * MR_ContoursMeshAlignParams_Get_xDirection(const MR_ContoursMeshAlignParams *_this)
MRC_API float * MR_BendContoursAlongCurveParams_GetMutable_pivotCurveTime(MR_BendContoursAlongCurveParams *_this)
MRC_API void MR_BendContoursAlongCurveParams_Set_pivotBoxPoint(MR_BendContoursAlongCurveParams *_this, MR_Vector2f value)
MRC_API MR_CurvePoint * MR_getCurvePoint(const MR_std_vector_MR_CurvePoint *cp, const MR_std_vector_float *lens, float p)
MRC_API MR_expected_MR_Mesh_std_string * MR_bendContoursAlongCurve(const MR_std_vector_std_vector_MR_Vector2f *contours, const MR_std_function_MR_CurvePoint_from_float *curve, const MR_BendContoursAlongCurveParams *params)
MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_AssignFromAnother(MR_ContoursMeshAlignParams *_this, const MR_ContoursMeshAlignParams *_other)
MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_ConstructFrom(const MR_MeshTriPoint *meshPoint, MR_Vector2f pivotPoint, MR_Vector3f xDirection, const MR_Vector3f *zDirection, float extrusion, float maximumShift)
MRC_API void MR_ContoursMeshAlignParams_Set_extrusion(MR_ContoursMeshAlignParams *_this, float value)
MRC_API void MR_addBaseToPlanarMesh(MR_Mesh *mesh, float zOffset)
MRC_API void MR_BendContoursAlongCurveParams_Destroy(const MR_BendContoursAlongCurveParams *_this)
Destroys a heap-allocated instance of MR_BendContoursAlongCurveParams. Does nothing if the pointer is...
MRC_API void MR_ContoursMeshAlignParams_Set_xDirection(MR_ContoursMeshAlignParams *_this, MR_Vector3f value)
MRC_API const MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_OffsetPtr(const MR_ContoursMeshAlignParams *ptr, ptrdiff_t i)
MRC_API float * MR_ContoursMeshAlignParams_GetMutable_maximumShift(MR_ContoursMeshAlignParams *_this)
MRC_API const float * MR_ContoursMeshAlignParams_Get_extrusion(const MR_ContoursMeshAlignParams *_this)
MRC_API bool * MR_BendContoursAlongCurveParams_GetMutable_stretch(MR_BendContoursAlongCurveParams *_this)
MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_ConstructFromAnother(const MR_BendContoursAlongCurveParams *_other)
MRC_API void MR_ContoursMeshAlignParams_Set_maximumShift(MR_ContoursMeshAlignParams *_this, float value)
struct MR_ContoursMeshAlignParams MR_ContoursMeshAlignParams
Definition MRAlignContoursToMesh.h:30
MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_DefaultConstruct(void)
MRC_API const MR_Vector2f * MR_BendContoursAlongCurveParams_Get_pivotBoxPoint(const MR_BendContoursAlongCurveParams *_this)
MRC_API void MR_BendContoursAlongCurveParams_Set_periodicCurve(MR_BendContoursAlongCurveParams *_this, bool value)
struct MR_std_function_MR_CurvePoint_from_float MR_std_function_MR_CurvePoint_from_float
Definition MRAlignContoursToMesh.h:20
MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_DefaultConstructArray(size_t num_elems)
struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string
Definition MRCtm.h:24
struct MR_Mesh MR_Mesh
Definition MRCtm.h:16
struct MR_std_vector_float MR_std_vector_float
Definition MRPdf.h:27
#define MRC_API
Definition exports.h:11
Definition MRVector2.h:45
Definition MRVector3.h:52