MeshLib C Docs
Loading...
Searching...
No Matches
MRAlignContoursToMesh.h File Reference
#include <MRCMesh/MRVector2.h>
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/exports.h>
#include <stdbool.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct MR_CurvePoint MR_CurvePoint
 
typedef struct MR_Mesh MR_Mesh
 
typedef struct MR_MeshTriPoint MR_MeshTriPoint
 
typedef struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string
 
typedef struct MR_expected_std_function_MR_CurvePoint_func_from_float_std_string MR_expected_std_function_MR_CurvePoint_func_from_float_std_string
 
typedef struct MR_expected_std_vector_float_std_string MR_expected_std_vector_float_std_string
 
typedef struct MR_std_function_MR_CurvePoint_from_float MR_std_function_MR_CurvePoint_from_float
 
typedef struct MR_std_vector_MR_CurvePoint MR_std_vector_MR_CurvePoint
 
typedef struct MR_std_vector_MR_EdgePoint MR_std_vector_MR_EdgePoint
 
typedef struct MR_std_vector_float MR_std_vector_float
 
typedef struct MR_std_vector_std_vector_MR_Vector2f MR_std_vector_std_vector_MR_Vector2f
 
typedef struct MR_ContoursMeshAlignParams MR_ContoursMeshAlignParams
 
typedef struct MR_BendContoursAlongCurveParams MR_BendContoursAlongCurveParams
 

Functions

MRC_API const MR_MeshTriPointMR_ContoursMeshAlignParams_Get_meshPoint (const MR_ContoursMeshAlignParams *_this)
 
MRC_API void MR_ContoursMeshAlignParams_Set_meshPoint (MR_ContoursMeshAlignParams *_this, const MR_MeshTriPoint *value)
 
MRC_API MR_MeshTriPointMR_ContoursMeshAlignParams_GetMutable_meshPoint (MR_ContoursMeshAlignParams *_this)
 
MRC_API const MR_Vector2fMR_ContoursMeshAlignParams_Get_pivotPoint (const MR_ContoursMeshAlignParams *_this)
 
MRC_API void MR_ContoursMeshAlignParams_Set_pivotPoint (MR_ContoursMeshAlignParams *_this, MR_Vector2f value)
 
MRC_API MR_Vector2fMR_ContoursMeshAlignParams_GetMutable_pivotPoint (MR_ContoursMeshAlignParams *_this)
 
MRC_API const MR_Vector3fMR_ContoursMeshAlignParams_Get_xDirection (const MR_ContoursMeshAlignParams *_this)
 
MRC_API void MR_ContoursMeshAlignParams_Set_xDirection (MR_ContoursMeshAlignParams *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_ContoursMeshAlignParams_GetMutable_xDirection (MR_ContoursMeshAlignParams *_this)
 
MRC_API const MR_Vector3f *const * MR_ContoursMeshAlignParams_Get_zDirection (const MR_ContoursMeshAlignParams *_this)
 
MRC_API void MR_ContoursMeshAlignParams_Set_zDirection (MR_ContoursMeshAlignParams *_this, const MR_Vector3f *value)
 
MRC_API const MR_Vector3f ** MR_ContoursMeshAlignParams_GetMutable_zDirection (MR_ContoursMeshAlignParams *_this)
 
MRC_API const float * MR_ContoursMeshAlignParams_Get_extrusion (const MR_ContoursMeshAlignParams *_this)
 
MRC_API void MR_ContoursMeshAlignParams_Set_extrusion (MR_ContoursMeshAlignParams *_this, float value)
 
MRC_API float * MR_ContoursMeshAlignParams_GetMutable_extrusion (MR_ContoursMeshAlignParams *_this)
 
MRC_API const float * MR_ContoursMeshAlignParams_Get_maximumShift (const MR_ContoursMeshAlignParams *_this)
 
MRC_API void MR_ContoursMeshAlignParams_Set_maximumShift (MR_ContoursMeshAlignParams *_this, float value)
 
MRC_API float * MR_ContoursMeshAlignParams_GetMutable_maximumShift (MR_ContoursMeshAlignParams *_this)
 
MRC_API MR_ContoursMeshAlignParamsMR_ContoursMeshAlignParams_DefaultConstruct (void)
 
MRC_API MR_ContoursMeshAlignParamsMR_ContoursMeshAlignParams_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_ContoursMeshAlignParamsMR_ContoursMeshAlignParams_ConstructFrom (const MR_MeshTriPoint *meshPoint, MR_Vector2f pivotPoint, MR_Vector3f xDirection, const MR_Vector3f *zDirection, float extrusion, float maximumShift)
 
MRC_API const MR_ContoursMeshAlignParamsMR_ContoursMeshAlignParams_OffsetPtr (const MR_ContoursMeshAlignParams *ptr, ptrdiff_t i)
 
MRC_API MR_ContoursMeshAlignParamsMR_ContoursMeshAlignParams_OffsetMutablePtr (MR_ContoursMeshAlignParams *ptr, ptrdiff_t i)
 
MRC_API MR_ContoursMeshAlignParamsMR_ContoursMeshAlignParams_ConstructFromAnother (const MR_ContoursMeshAlignParams *_other)
 
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.
 
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.
 
MRC_API MR_ContoursMeshAlignParamsMR_ContoursMeshAlignParams_AssignFromAnother (MR_ContoursMeshAlignParams *_this, const MR_ContoursMeshAlignParams *_other)
 
MRC_API MR_expected_MR_Mesh_std_stringMR_alignContoursToMesh (const MR_Mesh *mesh, const MR_std_vector_std_vector_MR_Vector2f *contours, const MR_ContoursMeshAlignParams *params)
 
MRC_API const float * MR_BendContoursAlongCurveParams_Get_pivotCurveTime (const MR_BendContoursAlongCurveParams *_this)
 
MRC_API void MR_BendContoursAlongCurveParams_Set_pivotCurveTime (MR_BendContoursAlongCurveParams *_this, float value)
 
MRC_API float * MR_BendContoursAlongCurveParams_GetMutable_pivotCurveTime (MR_BendContoursAlongCurveParams *_this)
 
MRC_API const MR_Vector2fMR_BendContoursAlongCurveParams_Get_pivotBoxPoint (const MR_BendContoursAlongCurveParams *_this)
 
MRC_API void MR_BendContoursAlongCurveParams_Set_pivotBoxPoint (MR_BendContoursAlongCurveParams *_this, MR_Vector2f value)
 
MRC_API MR_Vector2fMR_BendContoursAlongCurveParams_GetMutable_pivotBoxPoint (MR_BendContoursAlongCurveParams *_this)
 
MRC_API const bool * MR_BendContoursAlongCurveParams_Get_periodicCurve (const MR_BendContoursAlongCurveParams *_this)
 
MRC_API void MR_BendContoursAlongCurveParams_Set_periodicCurve (MR_BendContoursAlongCurveParams *_this, bool value)
 
MRC_API bool * MR_BendContoursAlongCurveParams_GetMutable_periodicCurve (MR_BendContoursAlongCurveParams *_this)
 
MRC_API const bool * MR_BendContoursAlongCurveParams_Get_stretch (const MR_BendContoursAlongCurveParams *_this)
 
MRC_API void MR_BendContoursAlongCurveParams_Set_stretch (MR_BendContoursAlongCurveParams *_this, bool value)
 
MRC_API bool * MR_BendContoursAlongCurveParams_GetMutable_stretch (MR_BendContoursAlongCurveParams *_this)
 
MRC_API const float * MR_BendContoursAlongCurveParams_Get_extrusion (const MR_BendContoursAlongCurveParams *_this)
 
MRC_API void MR_BendContoursAlongCurveParams_Set_extrusion (MR_BendContoursAlongCurveParams *_this, float value)
 
MRC_API float * MR_BendContoursAlongCurveParams_GetMutable_extrusion (MR_BendContoursAlongCurveParams *_this)
 
MRC_API MR_BendContoursAlongCurveParamsMR_BendContoursAlongCurveParams_DefaultConstruct (void)
 
MRC_API MR_BendContoursAlongCurveParamsMR_BendContoursAlongCurveParams_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_BendContoursAlongCurveParamsMR_BendContoursAlongCurveParams_ConstructFrom (float pivotCurveTime, MR_Vector2f pivotBoxPoint, bool periodicCurve, bool stretch, float extrusion)
 
MRC_API const MR_BendContoursAlongCurveParamsMR_BendContoursAlongCurveParams_OffsetPtr (const MR_BendContoursAlongCurveParams *ptr, ptrdiff_t i)
 
MRC_API MR_BendContoursAlongCurveParamsMR_BendContoursAlongCurveParams_OffsetMutablePtr (MR_BendContoursAlongCurveParams *ptr, ptrdiff_t i)
 
MRC_API MR_BendContoursAlongCurveParamsMR_BendContoursAlongCurveParams_ConstructFromAnother (const MR_BendContoursAlongCurveParams *_other)
 
MRC_API void MR_BendContoursAlongCurveParams_Destroy (const MR_BendContoursAlongCurveParams *_this)
 Destroys a heap-allocated instance of MR_BendContoursAlongCurveParams. Does nothing if the pointer is null.
 
MRC_API void MR_BendContoursAlongCurveParams_DestroyArray (const MR_BendContoursAlongCurveParams *_this)
 Destroys a heap-allocated array of MR_BendContoursAlongCurveParams. Does nothing if the pointer is null.
 
MRC_API MR_BendContoursAlongCurveParamsMR_BendContoursAlongCurveParams_AssignFromAnother (MR_BendContoursAlongCurveParams *_this, const MR_BendContoursAlongCurveParams *_other)
 
MRC_API MR_expected_MR_Mesh_std_stringMR_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_expected_MR_Mesh_std_stringMR_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)
 
MRC_API MR_expected_MR_Mesh_std_stringMR_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 MR_expected_std_vector_float_std_stringMR_findPartialLens (const MR_std_vector_MR_CurvePoint *cp, const bool *unitLength, float *outCurveLen)
 
MRC_API MR_CurvePointMR_getCurvePoint (const MR_std_vector_MR_CurvePoint *cp, const MR_std_vector_float *lens, float p)
 
MRC_API MR_expected_std_function_MR_CurvePoint_func_from_float_std_stringMR_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_stringMR_curveFromPoints_std_vector_MR_CurvePoint_rvalue_ref (MR_std_vector_MR_CurvePoint *cp, const bool *unitLength, float *outCurveLen)
 
MRC_API MR_std_vector_MR_CurvePointMR_meshPathCurvePoints_4 (const MR_Mesh *mesh, const MR_MeshTriPoint *start, const MR_std_vector_MR_EdgePoint *path, const MR_MeshTriPoint *end)
 
MRC_API MR_std_vector_MR_CurvePointMR_meshPathCurvePoints_2 (const MR_Mesh *mesh, const MR_std_vector_MR_EdgePoint *path)
 
MRC_API void MR_addBaseToPlanarMesh (MR_Mesh *mesh, float zOffset)
 

Typedef Documentation

◆ MR_BendContoursAlongCurveParams

Parameters for aligning 2d contours along given curve Generated from class MR::BendContoursAlongCurveParams. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_ContoursMeshAlignParams

Parameters for aligning 2d contours onto mesh surface Generated from class MR::ContoursMeshAlignParams. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_CurvePoint

typedef struct MR_CurvePoint MR_CurvePoint

◆ MR_expected_MR_Mesh_std_string

◆ MR_expected_std_function_MR_CurvePoint_func_from_float_std_string

◆ MR_expected_std_vector_float_std_string

◆ MR_Mesh

typedef struct MR_Mesh MR_Mesh

◆ MR_MeshTriPoint

◆ MR_std_function_MR_CurvePoint_from_float

◆ MR_std_vector_float

◆ MR_std_vector_MR_CurvePoint

◆ MR_std_vector_MR_EdgePoint

◆ MR_std_vector_std_vector_MR_Vector2f

Function Documentation

◆ MR_addBaseToPlanarMesh()

MRC_API void MR_addBaseToPlanarMesh ( MR_Mesh * mesh,
float zOffset )

given a planar mesh with boundary on input located in plane XY, packs and extends it along Z on zOffset (along -Z if zOffset is negative) to make a volumetric closed mesh note that this function also packs the mesh Generated from function MR::addBaseToPlanarMesh. Parameter mesh can not be null. It is a single object.

◆ MR_alignContoursToMesh()

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 )

Creates planar mesh out of given contour and aligns it to given surface Generated from function MR::alignContoursToMesh. Parameter mesh can not be null. It is a single object. Parameter contours can not be null. It is a single object. Parameter params can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_Mesh_std_string_Destroy() to free it when you're done using it.

◆ MR_bendContoursAlongCurve()

Converts contours in thick mesh, and deforms it along given path Generated from function MR::bendContoursAlongCurve. Parameter contours can not be null. It is a single object. Parameter curve can not be null. It is a single object. Parameter params can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_Mesh_std_string_Destroy() to free it when you're done using it.

◆ MR_BendContoursAlongCurveParams_AssignFromAnother()

MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_AssignFromAnother ( MR_BendContoursAlongCurveParams * _this,
const MR_BendContoursAlongCurveParams * _other )

Generated from method MR::BendContoursAlongCurveParams::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_BendContoursAlongCurveParams_ConstructFrom()

MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_ConstructFrom ( float pivotCurveTime,
MR_Vector2f pivotBoxPoint,
bool periodicCurve,
bool stretch,
float extrusion )

Constructs MR::BendContoursAlongCurveParams elementwise. The reference to the parameter pivotBoxPoint might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_BendContoursAlongCurveParams_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.

◆ MR_BendContoursAlongCurveParams_ConstructFromAnother()

MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_ConstructFromAnother ( const MR_BendContoursAlongCurveParams * _other)

Generated from constructor MR::BendContoursAlongCurveParams::BendContoursAlongCurveParams. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_BendContoursAlongCurveParams_Destroy() to free it when you're done using it.

◆ MR_BendContoursAlongCurveParams_DefaultConstruct()

MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_BendContoursAlongCurveParams_Destroy() to free it when you're done using it.

◆ MR_BendContoursAlongCurveParams_DefaultConstructArray()

MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_BendContoursAlongCurveParams_DestroyArray(). Use MR_BendContoursAlongCurveParams_OffsetMutablePtr() and MR_BendContoursAlongCurveParams_OffsetPtr() to access the array elements.

◆ MR_BendContoursAlongCurveParams_Destroy()

MRC_API void MR_BendContoursAlongCurveParams_Destroy ( const MR_BendContoursAlongCurveParams * _this)

Destroys a heap-allocated instance of MR_BendContoursAlongCurveParams. Does nothing if the pointer is null.

◆ MR_BendContoursAlongCurveParams_DestroyArray()

MRC_API void MR_BendContoursAlongCurveParams_DestroyArray ( const MR_BendContoursAlongCurveParams * _this)

Destroys a heap-allocated array of MR_BendContoursAlongCurveParams. Does nothing if the pointer is null.

◆ MR_BendContoursAlongCurveParams_Get_extrusion()

MRC_API const float * MR_BendContoursAlongCurveParams_Get_extrusion ( const MR_BendContoursAlongCurveParams * _this)

Contours extrusion outside of curve level Returns a pointer to a member variable of class MR::BendContoursAlongCurveParams named extrusion. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_Get_periodicCurve()

MRC_API const bool * MR_BendContoursAlongCurveParams_Get_periodicCurve ( const MR_BendContoursAlongCurveParams * _this)

if true, curve parameter will be always within [0,1) with repetition: xr := x - floor(x) Returns a pointer to a member variable of class MR::BendContoursAlongCurveParams named periodicCurve. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_Get_pivotBoxPoint()

MRC_API const MR_Vector2f * MR_BendContoursAlongCurveParams_Get_pivotBoxPoint ( const MR_BendContoursAlongCurveParams * _this)

Position of the curve(pivotCurveTime) in the contours' bounding box: (0, 0) - bottom left, (0, 1) - bottom right, (0.5, 0.5) - center, (1, 1) - top right Returns a pointer to a member variable of class MR::BendContoursAlongCurveParams named pivotBoxPoint. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_Get_pivotCurveTime()

MRC_API const float * MR_BendContoursAlongCurveParams_Get_pivotCurveTime ( const MR_BendContoursAlongCurveParams * _this)

Position on the curve, where bounding box's pivot point is mapped Returns a pointer to a member variable of class MR::BendContoursAlongCurveParams named pivotCurveTime. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_Get_stretch()

MRC_API const bool * MR_BendContoursAlongCurveParams_Get_stretch ( const MR_BendContoursAlongCurveParams * _this)

stretch all contours along curve to fit in unit curve range Returns a pointer to a member variable of class MR::BendContoursAlongCurveParams named stretch. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_GetMutable_extrusion()

MRC_API float * MR_BendContoursAlongCurveParams_GetMutable_extrusion ( MR_BendContoursAlongCurveParams * _this)

Contours extrusion outside of curve level Returns a mutable pointer to a member variable of class MR::BendContoursAlongCurveParams named extrusion. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_GetMutable_periodicCurve()

MRC_API bool * MR_BendContoursAlongCurveParams_GetMutable_periodicCurve ( MR_BendContoursAlongCurveParams * _this)

if true, curve parameter will be always within [0,1) with repetition: xr := x - floor(x) Returns a mutable pointer to a member variable of class MR::BendContoursAlongCurveParams named periodicCurve. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_GetMutable_pivotBoxPoint()

MRC_API MR_Vector2f * MR_BendContoursAlongCurveParams_GetMutable_pivotBoxPoint ( MR_BendContoursAlongCurveParams * _this)

Position of the curve(pivotCurveTime) in the contours' bounding box: (0, 0) - bottom left, (0, 1) - bottom right, (0.5, 0.5) - center, (1, 1) - top right Returns a mutable pointer to a member variable of class MR::BendContoursAlongCurveParams named pivotBoxPoint. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_GetMutable_pivotCurveTime()

MRC_API float * MR_BendContoursAlongCurveParams_GetMutable_pivotCurveTime ( MR_BendContoursAlongCurveParams * _this)

Position on the curve, where bounding box's pivot point is mapped Returns a mutable pointer to a member variable of class MR::BendContoursAlongCurveParams named pivotCurveTime. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_GetMutable_stretch()

MRC_API bool * MR_BendContoursAlongCurveParams_GetMutable_stretch ( MR_BendContoursAlongCurveParams * _this)

stretch all contours along curve to fit in unit curve range Returns a mutable pointer to a member variable of class MR::BendContoursAlongCurveParams named stretch. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_BendContoursAlongCurveParams_OffsetMutablePtr()

MRC_API MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_OffsetMutablePtr ( MR_BendContoursAlongCurveParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_BendContoursAlongCurveParams_OffsetPtr()

MRC_API const MR_BendContoursAlongCurveParams * MR_BendContoursAlongCurveParams_OffsetPtr ( const MR_BendContoursAlongCurveParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_BendContoursAlongCurveParams_Set_extrusion()

MRC_API void MR_BendContoursAlongCurveParams_Set_extrusion ( MR_BendContoursAlongCurveParams * _this,
float value )

Contours extrusion outside of curve level Modifies a member variable of class MR::BendContoursAlongCurveParams named extrusion. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in extrusion.

◆ MR_BendContoursAlongCurveParams_Set_periodicCurve()

MRC_API void MR_BendContoursAlongCurveParams_Set_periodicCurve ( MR_BendContoursAlongCurveParams * _this,
bool value )

if true, curve parameter will be always within [0,1) with repetition: xr := x - floor(x) Modifies a member variable of class MR::BendContoursAlongCurveParams named periodicCurve. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in periodicCurve.

◆ MR_BendContoursAlongCurveParams_Set_pivotBoxPoint()

MRC_API void MR_BendContoursAlongCurveParams_Set_pivotBoxPoint ( MR_BendContoursAlongCurveParams * _this,
MR_Vector2f value )

Position of the curve(pivotCurveTime) in the contours' bounding box: (0, 0) - bottom left, (0, 1) - bottom right, (0.5, 0.5) - center, (1, 1) - top right Modifies a member variable of class MR::BendContoursAlongCurveParams named pivotBoxPoint. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element pivotBoxPoint. When this function is called, this object will drop object references it had previously in pivotBoxPoint.

◆ MR_BendContoursAlongCurveParams_Set_pivotCurveTime()

MRC_API void MR_BendContoursAlongCurveParams_Set_pivotCurveTime ( MR_BendContoursAlongCurveParams * _this,
float value )

Position on the curve, where bounding box's pivot point is mapped Modifies a member variable of class MR::BendContoursAlongCurveParams named pivotCurveTime. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in pivotCurveTime.

◆ MR_BendContoursAlongCurveParams_Set_stretch()

MRC_API void MR_BendContoursAlongCurveParams_Set_stretch ( MR_BendContoursAlongCurveParams * _this,
bool value )

stretch all contours along curve to fit in unit curve range Modifies a member variable of class MR::BendContoursAlongCurveParams named stretch. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in stretch.

◆ MR_bendContoursAlongSurfacePath_4()

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 )

Converts contours in thick mesh, and deforms it along given surface path Generated from function MR::bendContoursAlongSurfacePath. Parameter contours can not be null. It is a single object. Parameter mesh can not be null. It is a single object. Parameter path can not be null. It is a single object. Parameter params can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_Mesh_std_string_Destroy() to free it when you're done using it.

◆ MR_bendContoursAlongSurfacePath_6()

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 )

Converts contours in thick mesh, and deforms it along given surface path: start->path->end Generated from function MR::bendContoursAlongSurfacePath. Parameter contours can not be null. It is a single object. Parameter mesh can not be null. It is a single object. Parameter start can not be null. It is a single object. Parameter path can not be null. It is a single object. Parameter end can not be null. It is a single object. Parameter params can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_Mesh_std_string_Destroy() to free it when you're done using it.

◆ MR_ContoursMeshAlignParams_AssignFromAnother()

MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_AssignFromAnother ( MR_ContoursMeshAlignParams * _this,
const MR_ContoursMeshAlignParams * _other )

Generated from method MR::ContoursMeshAlignParams::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_ContoursMeshAlignParams_ConstructFrom()

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 )

Constructs MR::ContoursMeshAlignParams elementwise. Parameter meshPoint can not be null. It is a single object. The reference to the parameter meshPoint might be preserved in the constructed object. The reference to the parameter pivotPoint might be preserved in the constructed object. The reference to the parameter xDirection might be preserved in the constructed object. The reference to the parameter zDirection might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_ContoursMeshAlignParams_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.

◆ MR_ContoursMeshAlignParams_ConstructFromAnother()

MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_ConstructFromAnother ( const MR_ContoursMeshAlignParams * _other)

Generated from constructor MR::ContoursMeshAlignParams::ContoursMeshAlignParams. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_ContoursMeshAlignParams_Destroy() to free it when you're done using it.

◆ MR_ContoursMeshAlignParams_DefaultConstruct()

MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_ContoursMeshAlignParams_Destroy() to free it when you're done using it.

◆ MR_ContoursMeshAlignParams_DefaultConstructArray()

MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_ContoursMeshAlignParams_DestroyArray(). Use MR_ContoursMeshAlignParams_OffsetMutablePtr() and MR_ContoursMeshAlignParams_OffsetPtr() to access the array elements.

◆ MR_ContoursMeshAlignParams_Destroy()

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.

◆ MR_ContoursMeshAlignParams_DestroyArray()

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.

◆ MR_ContoursMeshAlignParams_Get_extrusion()

MRC_API const float * MR_ContoursMeshAlignParams_Get_extrusion ( const MR_ContoursMeshAlignParams * _this)

Contours extrusion in +z and -z direction Returns a pointer to a member variable of class MR::ContoursMeshAlignParams named extrusion. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_Get_maximumShift()

MRC_API const float * MR_ContoursMeshAlignParams_Get_maximumShift ( const MR_ContoursMeshAlignParams * _this)

Maximum allowed shift along 'zDirection' for alignment Returns a pointer to a member variable of class MR::ContoursMeshAlignParams named maximumShift. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_Get_meshPoint()

MRC_API const MR_MeshTriPoint * MR_ContoursMeshAlignParams_Get_meshPoint ( const MR_ContoursMeshAlignParams * _this)

Point coordinate on mesh, represent position of contours box 'pivotPoint' on mesh Returns a pointer to a member variable of class MR::ContoursMeshAlignParams named meshPoint. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_Get_pivotPoint()

MRC_API const MR_Vector2f * MR_ContoursMeshAlignParams_Get_pivotPoint ( const MR_ContoursMeshAlignParams * _this)

Relative position of 'meshPoint' in contours bounding box (0, 0) - bottom left, (0, 1) - bottom right, (0.5, 0.5) - center, (1, 1) - top right Returns a pointer to a member variable of class MR::ContoursMeshAlignParams named pivotPoint. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_Get_xDirection()

MRC_API const MR_Vector3f * MR_ContoursMeshAlignParams_Get_xDirection ( const MR_ContoursMeshAlignParams * _this)

Represents 2d contours xDirection in mesh space Returns a pointer to a member variable of class MR::ContoursMeshAlignParams named xDirection. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_Get_zDirection()

MRC_API const MR_Vector3f *const * MR_ContoursMeshAlignParams_Get_zDirection ( const MR_ContoursMeshAlignParams * _this)

Represents contours normal in mesh space if nullptr - use mesh normal at 'meshPoint' Returns a pointer to a member variable of class MR::ContoursMeshAlignParams named zDirection. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_GetMutable_extrusion()

MRC_API float * MR_ContoursMeshAlignParams_GetMutable_extrusion ( MR_ContoursMeshAlignParams * _this)

Contours extrusion in +z and -z direction Returns a mutable pointer to a member variable of class MR::ContoursMeshAlignParams named extrusion. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_GetMutable_maximumShift()

MRC_API float * MR_ContoursMeshAlignParams_GetMutable_maximumShift ( MR_ContoursMeshAlignParams * _this)

Maximum allowed shift along 'zDirection' for alignment Returns a mutable pointer to a member variable of class MR::ContoursMeshAlignParams named maximumShift. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_GetMutable_meshPoint()

MRC_API MR_MeshTriPoint * MR_ContoursMeshAlignParams_GetMutable_meshPoint ( MR_ContoursMeshAlignParams * _this)

Point coordinate on mesh, represent position of contours box 'pivotPoint' on mesh Returns a mutable pointer to a member variable of class MR::ContoursMeshAlignParams named meshPoint. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_GetMutable_pivotPoint()

MRC_API MR_Vector2f * MR_ContoursMeshAlignParams_GetMutable_pivotPoint ( MR_ContoursMeshAlignParams * _this)

Relative position of 'meshPoint' in contours bounding box (0, 0) - bottom left, (0, 1) - bottom right, (0.5, 0.5) - center, (1, 1) - top right Returns a mutable pointer to a member variable of class MR::ContoursMeshAlignParams named pivotPoint. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_GetMutable_xDirection()

MRC_API MR_Vector3f * MR_ContoursMeshAlignParams_GetMutable_xDirection ( MR_ContoursMeshAlignParams * _this)

Represents 2d contours xDirection in mesh space Returns a mutable pointer to a member variable of class MR::ContoursMeshAlignParams named xDirection. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_GetMutable_zDirection()

MRC_API const MR_Vector3f ** MR_ContoursMeshAlignParams_GetMutable_zDirection ( MR_ContoursMeshAlignParams * _this)

Represents contours normal in mesh space if nullptr - use mesh normal at 'meshPoint' Returns a mutable pointer to a member variable of class MR::ContoursMeshAlignParams named zDirection. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_ContoursMeshAlignParams_OffsetMutablePtr()

MRC_API MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_OffsetMutablePtr ( MR_ContoursMeshAlignParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_ContoursMeshAlignParams_OffsetPtr()

MRC_API const MR_ContoursMeshAlignParams * MR_ContoursMeshAlignParams_OffsetPtr ( const MR_ContoursMeshAlignParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_ContoursMeshAlignParams_Set_extrusion()

MRC_API void MR_ContoursMeshAlignParams_Set_extrusion ( MR_ContoursMeshAlignParams * _this,
float value )

Contours extrusion in +z and -z direction Modifies a member variable of class MR::ContoursMeshAlignParams named extrusion. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in extrusion.

◆ MR_ContoursMeshAlignParams_Set_maximumShift()

MRC_API void MR_ContoursMeshAlignParams_Set_maximumShift ( MR_ContoursMeshAlignParams * _this,
float value )

Maximum allowed shift along 'zDirection' for alignment Modifies a member variable of class MR::ContoursMeshAlignParams named maximumShift. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in maximumShift.

◆ MR_ContoursMeshAlignParams_Set_meshPoint()

MRC_API void MR_ContoursMeshAlignParams_Set_meshPoint ( MR_ContoursMeshAlignParams * _this,
const MR_MeshTriPoint * value )

Point coordinate on mesh, represent position of contours box 'pivotPoint' on mesh Modifies a member variable of class MR::ContoursMeshAlignParams named meshPoint. Parameter _this can not be null. It is a single object. Parameter value can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element meshPoint. When this function is called, this object will drop object references it had previously in meshPoint.

◆ MR_ContoursMeshAlignParams_Set_pivotPoint()

MRC_API void MR_ContoursMeshAlignParams_Set_pivotPoint ( MR_ContoursMeshAlignParams * _this,
MR_Vector2f value )

Relative position of 'meshPoint' in contours bounding box (0, 0) - bottom left, (0, 1) - bottom right, (0.5, 0.5) - center, (1, 1) - top right Modifies a member variable of class MR::ContoursMeshAlignParams named pivotPoint. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element pivotPoint. When this function is called, this object will drop object references it had previously in pivotPoint.

◆ MR_ContoursMeshAlignParams_Set_xDirection()

MRC_API void MR_ContoursMeshAlignParams_Set_xDirection ( MR_ContoursMeshAlignParams * _this,
MR_Vector3f value )

Represents 2d contours xDirection in mesh space Modifies a member variable of class MR::ContoursMeshAlignParams named xDirection. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element xDirection. When this function is called, this object will drop object references it had previously in xDirection.

◆ MR_ContoursMeshAlignParams_Set_zDirection()

MRC_API void MR_ContoursMeshAlignParams_Set_zDirection ( MR_ContoursMeshAlignParams * _this,
const MR_Vector3f * value )

Represents contours normal in mesh space if nullptr - use mesh normal at 'meshPoint' Modifies a member variable of class MR::ContoursMeshAlignParams named zDirection. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element zDirection. When this function is called, this object will drop object references it had previously in zDirection.

◆ MR_curveFromPoints_const_std_vector_MR_CurvePoint_ref()

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 )

given a polyline by its vertices, returns curve function representing it; return an error if the polyline is less than 2 points or all points have exactly the same location

Parameters
unitLengthif true, then the lengths are normalized for the last point to have unit length
outCurveLenoptional output of the total polyline length (before possible normalization) Generated from function MR::curveFromPoints. Parameter cp can not be null. It is a single object. Parameter unitLength has a default argument: true, pass a null pointer to use it. Parameter outCurveLen defaults to a null pointer in C++. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_std_function_MR_CurvePoint_func_from_float_std_string_Destroy() to free it when you're done using it.

◆ MR_curveFromPoints_std_vector_MR_CurvePoint_rvalue_ref()

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 )

Generated from function MR::curveFromPoints. Parameter cp can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later. Parameter unitLength has a default argument: true, pass a null pointer to use it. Parameter outCurveLen defaults to a null pointer in C++. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_std_function_MR_CurvePoint_func_from_float_std_string_Destroy() to free it when you're done using it.

◆ MR_findPartialLens()

MRC_API MR_expected_std_vector_float_std_string * MR_findPartialLens ( const MR_std_vector_MR_CurvePoint * cp,
const bool * unitLength,
float * outCurveLen )

given a polyline by its vertices, computes partial lengths along the polyline from the initial point; return an error if the polyline is less than 2 points or all points have exactly the same location

Parameters
unitLengthif true, then the lengths are normalized for the last point to have unit length
outCurveLenoptional output of the total polyline length (before possible normalization) Generated from function MR::findPartialLens. Parameter cp can not be null. It is a single object. Parameter unitLength has a default argument: true, pass a null pointer to use it. Parameter outCurveLen defaults to a null pointer in C++. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_std_vector_float_std_string_Destroy() to free it when you're done using it.

◆ MR_getCurvePoint()

MRC_API MR_CurvePoint * MR_getCurvePoint ( const MR_std_vector_MR_CurvePoint * cp,
const MR_std_vector_float * lens,
float p )

given a polyline by its vertices, and partial lengths as computed by findPartialLens, finds the location of curve point at the given parameter with extrapolation if p outside [0, lens.back()], execution time is logarithmic relative to the number of points Generated from function MR::getCurvePoint. Parameter cp can not be null. It is a single object. Parameter lens can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_CurvePoint_Destroy() to free it when you're done using it.

◆ MR_meshPathCurvePoints_2()

MRC_API MR_std_vector_MR_CurvePoint * MR_meshPathCurvePoints_2 ( const MR_Mesh * mesh,
const MR_std_vector_MR_EdgePoint * path )

Generated from function MR::meshPathCurvePoints. Parameter mesh can not be null. It is a single object. Parameter path can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_MR_CurvePoint_Destroy() to free it when you're done using it.

◆ MR_meshPathCurvePoints_4()

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 )

converts polyline given as a number of MeshTriPoint/MeshEdgePoint into CurvePoints Generated from function MR::meshPathCurvePoints. Parameter mesh can not be null. It is a single object. Parameter start can not be null. It is a single object. Parameter path can not be null. It is a single object. Parameter end can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_MR_CurvePoint_Destroy() to free it when you're done using it.