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

Go to the source code of this file.

Typedefs

typedef struct MR_std_function_MR_CurvePoint_from_float MR_std_function_MR_CurvePoint_from_float
 
typedef struct MR_CurvePoint MR_CurvePoint
 
typedef struct MR_CurveFunc MR_CurveFunc
 

Functions

MRC_API const MR_Vector3fMR_CurvePoint_Get_pos (const MR_CurvePoint *_this)
 
MRC_API void MR_CurvePoint_Set_pos (MR_CurvePoint *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_CurvePoint_GetMutable_pos (MR_CurvePoint *_this)
 
MRC_API const MR_Vector3fMR_CurvePoint_Get_dir (const MR_CurvePoint *_this)
 
MRC_API void MR_CurvePoint_Set_dir (MR_CurvePoint *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_CurvePoint_GetMutable_dir (MR_CurvePoint *_this)
 
MRC_API const MR_Vector3fMR_CurvePoint_Get_snorm (const MR_CurvePoint *_this)
 
MRC_API void MR_CurvePoint_Set_snorm (MR_CurvePoint *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_CurvePoint_GetMutable_snorm (MR_CurvePoint *_this)
 
MRC_API MR_CurvePointMR_CurvePoint_DefaultConstruct (void)
 
MRC_API MR_CurvePointMR_CurvePoint_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_CurvePointMR_CurvePoint_ConstructFrom (MR_Vector3f pos, MR_Vector3f dir, MR_Vector3f snorm)
 
MRC_API const MR_CurvePointMR_CurvePoint_OffsetPtr (const MR_CurvePoint *ptr, ptrdiff_t i)
 
MRC_API MR_CurvePointMR_CurvePoint_OffsetMutablePtr (MR_CurvePoint *ptr, ptrdiff_t i)
 
MRC_API MR_CurvePointMR_CurvePoint_ConstructFromAnother (const MR_CurvePoint *_other)
 
MRC_API void MR_CurvePoint_Destroy (const MR_CurvePoint *_this)
 Destroys a heap-allocated instance of MR_CurvePoint. Does nothing if the pointer is null.
 
MRC_API void MR_CurvePoint_DestroyArray (const MR_CurvePoint *_this)
 Destroys a heap-allocated array of MR_CurvePoint. Does nothing if the pointer is null.
 
MRC_API MR_CurvePointMR_CurvePoint_AssignFromAnother (MR_CurvePoint *_this, const MR_CurvePoint *_other)
 
MRC_API const MR_std_function_MR_CurvePoint_from_floatMR_CurveFunc_Get_func (const MR_CurveFunc *_this)
 
MRC_API void MR_CurveFunc_Set_func (MR_CurveFunc *_this, MR_PassBy value_pass_by, MR_std_function_MR_CurvePoint_from_float *value)
 
MRC_API MR_std_function_MR_CurvePoint_from_floatMR_CurveFunc_GetMutable_func (MR_CurveFunc *_this)
 
MRC_API const float * MR_CurveFunc_Get_totalLength (const MR_CurveFunc *_this)
 
MRC_API void MR_CurveFunc_Set_totalLength (MR_CurveFunc *_this, float value)
 
MRC_API float * MR_CurveFunc_GetMutable_totalLength (MR_CurveFunc *_this)
 
MRC_API MR_CurveFuncMR_CurveFunc_DefaultConstruct (void)
 
MRC_API MR_CurveFuncMR_CurveFunc_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_CurveFuncMR_CurveFunc_ConstructFrom (MR_PassBy func_pass_by, MR_std_function_MR_CurvePoint_from_float *func, float totalLength)
 
MRC_API const MR_CurveFuncMR_CurveFunc_OffsetPtr (const MR_CurveFunc *ptr, ptrdiff_t i)
 
MRC_API MR_CurveFuncMR_CurveFunc_OffsetMutablePtr (MR_CurveFunc *ptr, ptrdiff_t i)
 
MRC_API MR_CurveFuncMR_CurveFunc_ConstructFromAnother (MR_PassBy _other_pass_by, MR_CurveFunc *_other)
 
MRC_API void MR_CurveFunc_Destroy (const MR_CurveFunc *_this)
 Destroys a heap-allocated instance of MR_CurveFunc. Does nothing if the pointer is null.
 
MRC_API void MR_CurveFunc_DestroyArray (const MR_CurveFunc *_this)
 Destroys a heap-allocated array of MR_CurveFunc. Does nothing if the pointer is null.
 
MRC_API MR_CurveFuncMR_CurveFunc_AssignFromAnother (MR_CurveFunc *_this, MR_PassBy _other_pass_by, MR_CurveFunc *_other)
 

Typedef Documentation

◆ MR_CurveFunc

typedef struct MR_CurveFunc MR_CurveFunc

Generated from class MR::CurveFunc. 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). position on the curve Returns a pointer to a member variable of class MR::CurvePoint named pos. 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. The reference to this object might be preserved as the return value.

◆ MR_CurvePoint

typedef struct MR_CurvePoint MR_CurvePoint

Generated from class MR::CurvePoint. 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_std_function_MR_CurvePoint_from_float

Function Documentation

◆ MR_CurveFunc_AssignFromAnother()

MRC_API MR_CurveFunc * MR_CurveFunc_AssignFromAnother ( MR_CurveFunc * _this,
MR_PassBy _other_pass_by,
MR_CurveFunc * _other )

Generated from method MR::CurveFunc::operator=. Parameter _this 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_CurveFunc_ConstructFrom()

MRC_API MR_CurveFunc * MR_CurveFunc_ConstructFrom ( MR_PassBy func_pass_by,
MR_std_function_MR_CurvePoint_from_float * func,
float totalLength )

Constructs MR::CurveFunc elementwise. The reference to the parameter func might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_CurveFunc_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_CurveFunc_ConstructFromAnother()

MRC_API MR_CurveFunc * MR_CurveFunc_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_CurveFunc * _other )

Generated from constructor MR::CurveFunc::CurveFunc. 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_CurveFunc_Destroy() to free it when you're done using it.

◆ MR_CurveFunc_DefaultConstruct()

MRC_API MR_CurveFunc * MR_CurveFunc_DefaultConstruct ( void )

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

◆ MR_CurveFunc_DefaultConstructArray()

MRC_API MR_CurveFunc * MR_CurveFunc_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_CurveFunc_DestroyArray(). Use MR_CurveFunc_OffsetMutablePtr() and MR_CurveFunc_OffsetPtr() to access the array elements.

◆ MR_CurveFunc_Destroy()

MRC_API void MR_CurveFunc_Destroy ( const MR_CurveFunc * _this)

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

◆ MR_CurveFunc_DestroyArray()

MRC_API void MR_CurveFunc_DestroyArray ( const MR_CurveFunc * _this)

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

◆ MR_CurveFunc_Get_func()

MRC_API const MR_std_function_MR_CurvePoint_from_float * MR_CurveFunc_Get_func ( const MR_CurveFunc * _this)

curve given as a function: position along curve -> point Returns a pointer to a member variable of class MR::CurveFunc named func. 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. The reference to this object might be preserved as the return value.

◆ MR_CurveFunc_Get_totalLength()

MRC_API const float * MR_CurveFunc_Get_totalLength ( const MR_CurveFunc * _this)

total length of the given curve Returns a pointer to a member variable of class MR::CurveFunc named totalLength. 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. The reference to this object might be preserved as the return value.

◆ MR_CurveFunc_GetMutable_func()

MRC_API MR_std_function_MR_CurvePoint_from_float * MR_CurveFunc_GetMutable_func ( MR_CurveFunc * _this)

curve given as a function: position along curve -> point Returns a mutable pointer to a member variable of class MR::CurveFunc named func. 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. The reference to this object might be preserved as the return value.

◆ MR_CurveFunc_GetMutable_totalLength()

MRC_API float * MR_CurveFunc_GetMutable_totalLength ( MR_CurveFunc * _this)

total length of the given curve Returns a mutable pointer to a member variable of class MR::CurveFunc named totalLength. 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. The reference to this object might be preserved as the return value.

◆ MR_CurveFunc_OffsetMutablePtr()

MRC_API MR_CurveFunc * MR_CurveFunc_OffsetMutablePtr ( MR_CurveFunc * 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_CurveFunc_OffsetPtr()

MRC_API const MR_CurveFunc * MR_CurveFunc_OffsetPtr ( const MR_CurveFunc * 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_CurveFunc_Set_func()

MRC_API void MR_CurveFunc_Set_func ( MR_CurveFunc * _this,
MR_PassBy value_pass_by,
MR_std_function_MR_CurvePoint_from_float * value )

curve given as a function: position along curve -> point Modifies a member variable of class MR::CurveFunc named func. 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 func. When this function is called, this object will drop object references it had previously in func.

◆ MR_CurveFunc_Set_totalLength()

MRC_API void MR_CurveFunc_Set_totalLength ( MR_CurveFunc * _this,
float value )

total length of the given curve Modifies a member variable of class MR::CurveFunc named totalLength. 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 totalLength.

◆ MR_CurvePoint_AssignFromAnother()

MRC_API MR_CurvePoint * MR_CurvePoint_AssignFromAnother ( MR_CurvePoint * _this,
const MR_CurvePoint * _other )

Generated from method MR::CurvePoint::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_CurvePoint_ConstructFrom()

MRC_API MR_CurvePoint * MR_CurvePoint_ConstructFrom ( MR_Vector3f pos,
MR_Vector3f dir,
MR_Vector3f snorm )

Constructs MR::CurvePoint elementwise. The reference to the parameter pos might be preserved in the constructed object. The reference to the parameter dir might be preserved in the constructed object. The reference to the parameter snorm might be preserved in the constructed 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. When this function is called, this object will drop any object references it had previously.

◆ MR_CurvePoint_ConstructFromAnother()

MRC_API MR_CurvePoint * MR_CurvePoint_ConstructFromAnother ( const MR_CurvePoint * _other)

Generated from constructor MR::CurvePoint::CurvePoint. 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_CurvePoint_Destroy() to free it when you're done using it.

◆ MR_CurvePoint_DefaultConstruct()

MRC_API MR_CurvePoint * MR_CurvePoint_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. 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_CurvePoint_DefaultConstructArray()

MRC_API MR_CurvePoint * MR_CurvePoint_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_CurvePoint_DestroyArray(). Use MR_CurvePoint_OffsetMutablePtr() and MR_CurvePoint_OffsetPtr() to access the array elements.

◆ MR_CurvePoint_Destroy()

MRC_API void MR_CurvePoint_Destroy ( const MR_CurvePoint * _this)

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

◆ MR_CurvePoint_DestroyArray()

MRC_API void MR_CurvePoint_DestroyArray ( const MR_CurvePoint * _this)

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

◆ MR_CurvePoint_Get_dir()

MRC_API const MR_Vector3f * MR_CurvePoint_Get_dir ( const MR_CurvePoint * _this)

direction along the curve Modifies a member variable of class MR::CurvePoint named dir. 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 dir. When this function is called, this object will drop object references it had previously in dir.

◆ MR_CurvePoint_Get_pos()

MRC_API const MR_Vector3f * MR_CurvePoint_Get_pos ( const MR_CurvePoint * _this)

position on the curve Modifies a member variable of class MR::CurvePoint named pos. 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 pos. When this function is called, this object will drop object references it had previously in pos.

◆ MR_CurvePoint_Get_snorm()

MRC_API const MR_Vector3f * MR_CurvePoint_Get_snorm ( const MR_CurvePoint * _this)

the normal of the surface where the curve is located Modifies a member variable of class MR::CurvePoint named snorm. 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 snorm. When this function is called, this object will drop object references it had previously in snorm.

◆ MR_CurvePoint_GetMutable_dir()

MRC_API MR_Vector3f * MR_CurvePoint_GetMutable_dir ( MR_CurvePoint * _this)

the normal of the surface where the curve is located Returns a pointer to a member variable of class MR::CurvePoint named snorm. 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. The reference to this object might be preserved as the return value.

◆ MR_CurvePoint_GetMutable_pos()

MRC_API MR_Vector3f * MR_CurvePoint_GetMutable_pos ( MR_CurvePoint * _this)

direction along the curve Returns a pointer to a member variable of class MR::CurvePoint named dir. 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. The reference to this object might be preserved as the return value.

◆ MR_CurvePoint_GetMutable_snorm()

MRC_API MR_Vector3f * MR_CurvePoint_GetMutable_snorm ( MR_CurvePoint * _this)

◆ MR_CurvePoint_OffsetMutablePtr()

MRC_API MR_CurvePoint * MR_CurvePoint_OffsetMutablePtr ( MR_CurvePoint * 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_CurvePoint_OffsetPtr()

MRC_API const MR_CurvePoint * MR_CurvePoint_OffsetPtr ( const MR_CurvePoint * 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_CurvePoint_Set_dir()

MRC_API void MR_CurvePoint_Set_dir ( MR_CurvePoint * _this,
MR_Vector3f value )

direction along the curve Returns a mutable pointer to a member variable of class MR::CurvePoint named dir. 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. The reference to this object might be preserved as the return value.

◆ MR_CurvePoint_Set_pos()

MRC_API void MR_CurvePoint_Set_pos ( MR_CurvePoint * _this,
MR_Vector3f value )

position on the curve Returns a mutable pointer to a member variable of class MR::CurvePoint named pos. 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. The reference to this object might be preserved as the return value.

◆ MR_CurvePoint_Set_snorm()

MRC_API void MR_CurvePoint_Set_snorm ( MR_CurvePoint * _this,
MR_Vector3f value )

the normal of the surface where the curve is located Returns a mutable pointer to a member variable of class MR::CurvePoint named snorm. 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. The reference to this object might be preserved as the return value.