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

Go to the source code of this file.

Typedefs

typedef struct MR_AffineXf3d MR_AffineXf3d
 
typedef struct MR_Matrix3d MR_Matrix3d
 
typedef struct MR_MeshSave_CtmSaveOptions MR_MeshSave_CtmSaveOptions
 
typedef struct MR_MeshTexture MR_MeshTexture
 
typedef struct MR_PointsSave_CtmSavePointsOptions MR_PointsSave_CtmSavePointsOptions
 
typedef struct MR_VertBitSet MR_VertBitSet
 
typedef struct MR_VertColors MR_VertColors
 
typedef struct MR_VertCoords MR_VertCoords
 
typedef struct MR_VertCoords2 MR_VertCoords2
 
typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float
 
typedef struct MR_std_string MR_std_string
 
typedef struct MR_SaveSettings MR_SaveSettings
 
typedef struct MR_VertRenumber MR_VertRenumber
 

Functions

MRC_API const bool * MR_SaveSettings_Get_onlyValidPoints (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_onlyValidPoints (MR_SaveSettings *_this, bool value)
 
MRC_API bool * MR_SaveSettings_GetMutable_onlyValidPoints (MR_SaveSettings *_this)
 
MRC_API const bool * MR_SaveSettings_Get_packPrimitives (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_packPrimitives (MR_SaveSettings *_this, bool value)
 
MRC_API bool * MR_SaveSettings_GetMutable_packPrimitives (MR_SaveSettings *_this)
 
MRC_API const MR_VertColors *const * MR_SaveSettings_Get_colors (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_colors (MR_SaveSettings *_this, const MR_VertColors *value)
 
MRC_API const MR_VertColors ** MR_SaveSettings_GetMutable_colors (MR_SaveSettings *_this)
 
MRC_API const MR_VertCoords2 *const * MR_SaveSettings_Get_uvMap (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_uvMap (MR_SaveSettings *_this, const MR_VertCoords2 *value)
 
MRC_API const MR_VertCoords2 ** MR_SaveSettings_GetMutable_uvMap (MR_SaveSettings *_this)
 
MRC_API const MR_MeshTexture *const * MR_SaveSettings_Get_texture (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_texture (MR_SaveSettings *_this, const MR_MeshTexture *value)
 
MRC_API const MR_MeshTexture ** MR_SaveSettings_GetMutable_texture (MR_SaveSettings *_this)
 
MRC_API const MR_std_stringMR_SaveSettings_Get_materialName (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_materialName (MR_SaveSettings *_this, const char *value, const char *value_end)
 
MRC_API MR_std_stringMR_SaveSettings_GetMutable_materialName (MR_SaveSettings *_this)
 
MRC_API const MR_AffineXf3d *const * MR_SaveSettings_Get_xf (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_xf (MR_SaveSettings *_this, const MR_AffineXf3d *value)
 
MRC_API const MR_AffineXf3d ** MR_SaveSettings_GetMutable_xf (MR_SaveSettings *_this)
 
MRC_API const MR_std_function_bool_from_floatMR_SaveSettings_Get_progress (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_progress (MR_SaveSettings *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_float *value)
 
MRC_API MR_std_function_bool_from_floatMR_SaveSettings_GetMutable_progress (MR_SaveSettings *_this)
 
MRC_API MR_SaveSettingsMR_SaveSettings_DefaultConstruct (void)
 
MRC_API MR_SaveSettingsMR_SaveSettings_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_SaveSettingsMR_SaveSettings_ConstructFrom (bool onlyValidPoints, bool packPrimitives, const MR_VertColors *colors, const MR_VertCoords2 *uvMap, const MR_MeshTexture *texture, const char *materialName, const char *materialName_end, const MR_AffineXf3d *xf, MR_PassBy progress_pass_by, MR_std_function_bool_from_float *progress)
 
MRC_API const MR_SaveSettingsMR_SaveSettings_OffsetPtr (const MR_SaveSettings *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.
 
MRC_API MR_SaveSettingsMR_SaveSettings_OffsetMutablePtr (MR_SaveSettings *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.
 
MRC_API const MR_MeshSave_CtmSaveOptionsMR_SaveSettings_StaticDowncastTo_MR_MeshSave_CtmSaveOptions (const MR_SaveSettings *object)
 
MRC_API MR_MeshSave_CtmSaveOptionsMR_SaveSettings_MutableStaticDowncastTo_MR_MeshSave_CtmSaveOptions (MR_SaveSettings *object)
 
MRC_API const MR_PointsSave_CtmSavePointsOptionsMR_SaveSettings_StaticDowncastTo_MR_PointsSave_CtmSavePointsOptions (const MR_SaveSettings *object)
 
MRC_API MR_PointsSave_CtmSavePointsOptionsMR_SaveSettings_MutableStaticDowncastTo_MR_PointsSave_CtmSavePointsOptions (MR_SaveSettings *object)
 
MRC_API MR_SaveSettingsMR_SaveSettings_ConstructFromAnother (MR_PassBy _other_pass_by, MR_SaveSettings *_other)
 
MRC_API void MR_SaveSettings_Destroy (const MR_SaveSettings *_this)
 Destroys a heap-allocated instance of MR_SaveSettings. Does nothing if the pointer is null.
 
MRC_API void MR_SaveSettings_DestroyArray (const MR_SaveSettings *_this)
 Destroys a heap-allocated array of MR_SaveSettings. Does nothing if the pointer is null.
 
MRC_API MR_SaveSettingsMR_SaveSettings_AssignFromAnother (MR_SaveSettings *_this, MR_PassBy _other_pass_by, MR_SaveSettings *_other)
 
MRC_API MR_Vector3f MR_applyFloat_const_MR_AffineXf3d_ptr (const MR_AffineXf3d *xf, const MR_Vector3f *p)
 
MRC_API MR_Vector3f MR_applyFloat_const_MR_Matrix3d_ptr (const MR_Matrix3d *m, const MR_Vector3f *n)
 
MRC_API MR_Vector3d MR_applyDouble_const_MR_AffineXf3d_ptr (const MR_AffineXf3d *xf, const MR_Vector3f *p)
 
MRC_API MR_Vector3d MR_applyDouble_const_MR_Matrix3d_ptr (const MR_Matrix3d *m, const MR_Vector3f *n)
 
MRC_API MR_VertRenumberMR_VertRenumber_ConstructFromAnother (MR_PassBy _other_pass_by, MR_VertRenumber *_other)
 
MRC_API const MR_VertRenumberMR_VertRenumber_OffsetPtr (const MR_VertRenumber *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.
 
MRC_API MR_VertRenumberMR_VertRenumber_OffsetMutablePtr (MR_VertRenumber *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.
 
MRC_API MR_VertRenumberMR_VertRenumber_Construct (const MR_VertBitSet *validVerts, bool saveValidOnly)
 
MRC_API void MR_VertRenumber_Destroy (const MR_VertRenumber *_this)
 Destroys a heap-allocated instance of MR_VertRenumber. Does nothing if the pointer is null.
 
MRC_API void MR_VertRenumber_DestroyArray (const MR_VertRenumber *_this)
 Destroys a heap-allocated array of MR_VertRenumber. Does nothing if the pointer is null.
 
MRC_API MR_VertRenumberMR_VertRenumber_AssignFromAnother (MR_VertRenumber *_this, MR_PassBy _other_pass_by, MR_VertRenumber *_other)
 
MRC_API bool MR_VertRenumber_saveValidOnly (const MR_VertRenumber *_this)
 
MRC_API int32_t MR_VertRenumber_sizeVerts (const MR_VertRenumber *_this)
 
MRC_API int32_t MR_VertRenumber_call (const MR_VertRenumber *_this, MR_VertId v)
 
MRC_API const MR_VertCoordsMR_transformPoints (const MR_VertCoords *verts, const MR_VertBitSet *validVerts, const MR_AffineXf3d *xf, MR_VertCoords *buf, const MR_VertRenumber *vertRenumber)
 
MRC_API const MR_VertCoordsMR_transformNormals (const MR_VertCoords *normals, const MR_VertBitSet *validVerts, const MR_Matrix3d *m, MR_VertCoords *buf)
 

Typedef Documentation

◆ MR_AffineXf3d

typedef struct MR_AffineXf3d MR_AffineXf3d

◆ MR_Matrix3d

typedef struct MR_Matrix3d MR_Matrix3d

◆ MR_MeshSave_CtmSaveOptions

◆ MR_MeshTexture

◆ MR_PointsSave_CtmSavePointsOptions

◆ MR_SaveSettings

determines how to save points/lines/mesh Generated from class MR::SaveSettings. Derived classes: Direct: (non-virtual) MR::MeshSave::CtmSaveOptions MR::PointsSave::CtmSavePointsOptions

◆ MR_std_function_bool_from_float

◆ MR_std_string

typedef struct MR_std_string MR_std_string

◆ MR_VertBitSet

typedef struct MR_VertBitSet MR_VertBitSet

◆ MR_VertColors

typedef struct MR_VertColors MR_VertColors

◆ MR_VertCoords

typedef struct MR_VertCoords MR_VertCoords

◆ MR_VertCoords2

◆ MR_VertRenumber

maps valid points to packed sequential indices Generated from class MR::VertRenumber.

Function Documentation

◆ MR_applyDouble_const_MR_AffineXf3d_ptr()

MRC_API MR_Vector3d MR_applyDouble_const_MR_AffineXf3d_ptr ( const MR_AffineXf3d * xf,
const MR_Vector3f * p )

converts given point in double precision and applies given transformation to it Generated from function MR::applyDouble. Parameter p can not be null. It is a single object.

◆ MR_applyDouble_const_MR_Matrix3d_ptr()

MRC_API MR_Vector3d MR_applyDouble_const_MR_Matrix3d_ptr ( const MR_Matrix3d * m,
const MR_Vector3f * n )

converts given normal in double precision and applies given matrix to it Generated from function MR::applyDouble. Parameter n can not be null. It is a single object.

◆ MR_applyFloat_const_MR_AffineXf3d_ptr()

MRC_API MR_Vector3f MR_applyFloat_const_MR_AffineXf3d_ptr ( const MR_AffineXf3d * xf,
const MR_Vector3f * p )

returns the point as is or after application of given transform to it in double precision Generated from function MR::applyFloat. Parameter p can not be null. It is a single object.

◆ MR_applyFloat_const_MR_Matrix3d_ptr()

MRC_API MR_Vector3f MR_applyFloat_const_MR_Matrix3d_ptr ( const MR_Matrix3d * m,
const MR_Vector3f * n )

returns the normal as is or after application of given matrix to it in double precision Generated from function MR::applyFloat. Parameter n can not be null. It is a single object.

◆ MR_SaveSettings_AssignFromAnother()

MRC_API MR_SaveSettings * MR_SaveSettings_AssignFromAnother ( MR_SaveSettings * _this,
MR_PassBy _other_pass_by,
MR_SaveSettings * _other )

Generated from a method of class MR::SaveSettings named operator=. 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_SaveSettings_ConstructFrom()

MRC_API MR_SaveSettings * MR_SaveSettings_ConstructFrom ( bool onlyValidPoints,
bool packPrimitives,
const MR_VertColors * colors,
const MR_VertCoords2 * uvMap,
const MR_MeshTexture * texture,
const char * materialName,
const char * materialName_end,
const MR_AffineXf3d * xf,
MR_PassBy progress_pass_by,
MR_std_function_bool_from_float * progress )

Constructs MR::SaveSettings elementwise. Parameter materialName can not be null. If materialName_end is null, then materialName is assumed to be null-terminated. Never returns null. Returns an instance allocated on the heap! Must call MR_SaveSettings_Destroy() to free it when you're done using it.

◆ MR_SaveSettings_ConstructFromAnother()

MRC_API MR_SaveSettings * MR_SaveSettings_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_SaveSettings * _other )

Generated from a constructor of class MR::SaveSettings. Never returns null. Returns an instance allocated on the heap! Must call MR_SaveSettings_Destroy() to free it when you're done using it.

◆ MR_SaveSettings_DefaultConstruct()

MRC_API MR_SaveSettings * MR_SaveSettings_DefaultConstruct ( void )

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

◆ MR_SaveSettings_DefaultConstructArray()

MRC_API MR_SaveSettings * MR_SaveSettings_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_SaveSettings_DestroyArray(). Use MR_SaveSettings_OffsetMutablePtr() and MR_SaveSettings_OffsetPtr() to access the array elements.

◆ MR_SaveSettings_Destroy()

MRC_API void MR_SaveSettings_Destroy ( const MR_SaveSettings * _this)

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

◆ MR_SaveSettings_DestroyArray()

MRC_API void MR_SaveSettings_DestroyArray ( const MR_SaveSettings * _this)

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

◆ MR_SaveSettings_Get_colors()

MRC_API const MR_VertColors *const * MR_SaveSettings_Get_colors ( const MR_SaveSettings * _this)

optional per-vertex color to save with the geometry Returns a pointer to a member variable of class MR::SaveSettings named colors. 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_SaveSettings_Get_materialName()

MRC_API const MR_std_string * MR_SaveSettings_Get_materialName ( const MR_SaveSettings * _this)

used to save texture and material in some formats (obj) Returns a pointer to a member variable of class MR::SaveSettings named materialName. 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_SaveSettings_Get_onlyValidPoints()

MRC_API const bool * MR_SaveSettings_Get_onlyValidPoints ( const MR_SaveSettings * _this)

true - save valid points/vertices only (pack them); false - save all points/vertices preserving their indices Returns a pointer to a member variable of class MR::SaveSettings named onlyValidPoints. 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_SaveSettings_Get_packPrimitives()

MRC_API const bool * MR_SaveSettings_Get_packPrimitives ( const MR_SaveSettings * _this)

whether to allow packing or shuffling of primitives (triangles in meshes or edges in polylines); if packPrimitives=true, then ids of invalid primitives are reused by valid primitives and higher compression (in .ctm format) can be reached if the order of triangles is changed; if packPrimitives=false then all primitives maintain their ids, and invalid primitives are saved with all vertex ids equal to zero; currently this flag affects the saving in .ctm and .ply formats only Returns a pointer to a member variable of class MR::SaveSettings named packPrimitives. 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_SaveSettings_Get_progress()

MRC_API const MR_std_function_bool_from_float * MR_SaveSettings_Get_progress ( const MR_SaveSettings * _this)

to report save progress and cancel saving if user desires Returns a pointer to a member variable of class MR::SaveSettings named progress. 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_SaveSettings_Get_texture()

MRC_API const MR_MeshTexture *const * MR_SaveSettings_Get_texture ( const MR_SaveSettings * _this)

optional texture to save with the geometry Returns a pointer to a member variable of class MR::SaveSettings named texture. 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_SaveSettings_Get_uvMap()

MRC_API const MR_VertCoords2 *const * MR_SaveSettings_Get_uvMap ( const MR_SaveSettings * _this)

optional per-vertex uv coordinate to save with the geometry Returns a pointer to a member variable of class MR::SaveSettings named uvMap. 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_SaveSettings_Get_xf()

MRC_API const MR_AffineXf3d *const * MR_SaveSettings_Get_xf ( const MR_SaveSettings * _this)

this transformation can optionally be applied to all vertices (points) of saved object Returns a pointer to a member variable of class MR::SaveSettings named xf. 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_SaveSettings_GetMutable_colors()

MRC_API const MR_VertColors ** MR_SaveSettings_GetMutable_colors ( MR_SaveSettings * _this)

optional per-vertex color to save with the geometry Returns a mutable pointer to a member variable of class MR::SaveSettings named colors. 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_SaveSettings_GetMutable_materialName()

MRC_API MR_std_string * MR_SaveSettings_GetMutable_materialName ( MR_SaveSettings * _this)

used to save texture and material in some formats (obj) Returns a mutable pointer to a member variable of class MR::SaveSettings named materialName. 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_SaveSettings_GetMutable_onlyValidPoints()

MRC_API bool * MR_SaveSettings_GetMutable_onlyValidPoints ( MR_SaveSettings * _this)

true - save valid points/vertices only (pack them); false - save all points/vertices preserving their indices Returns a mutable pointer to a member variable of class MR::SaveSettings named onlyValidPoints. 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_SaveSettings_GetMutable_packPrimitives()

MRC_API bool * MR_SaveSettings_GetMutable_packPrimitives ( MR_SaveSettings * _this)

whether to allow packing or shuffling of primitives (triangles in meshes or edges in polylines); if packPrimitives=true, then ids of invalid primitives are reused by valid primitives and higher compression (in .ctm format) can be reached if the order of triangles is changed; if packPrimitives=false then all primitives maintain their ids, and invalid primitives are saved with all vertex ids equal to zero; currently this flag affects the saving in .ctm and .ply formats only Returns a mutable pointer to a member variable of class MR::SaveSettings named packPrimitives. 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_SaveSettings_GetMutable_progress()

MRC_API MR_std_function_bool_from_float * MR_SaveSettings_GetMutable_progress ( MR_SaveSettings * _this)

to report save progress and cancel saving if user desires Returns a mutable pointer to a member variable of class MR::SaveSettings named progress. 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_SaveSettings_GetMutable_texture()

MRC_API const MR_MeshTexture ** MR_SaveSettings_GetMutable_texture ( MR_SaveSettings * _this)

optional texture to save with the geometry Returns a mutable pointer to a member variable of class MR::SaveSettings named texture. 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_SaveSettings_GetMutable_uvMap()

MRC_API const MR_VertCoords2 ** MR_SaveSettings_GetMutable_uvMap ( MR_SaveSettings * _this)

optional per-vertex uv coordinate to save with the geometry Returns a mutable pointer to a member variable of class MR::SaveSettings named uvMap. 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_SaveSettings_GetMutable_xf()

MRC_API const MR_AffineXf3d ** MR_SaveSettings_GetMutable_xf ( MR_SaveSettings * _this)

this transformation can optionally be applied to all vertices (points) of saved object Returns a mutable pointer to a member variable of class MR::SaveSettings named xf. 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_SaveSettings_MutableStaticDowncastTo_MR_MeshSave_CtmSaveOptions()

MRC_API MR_MeshSave_CtmSaveOptions * MR_SaveSettings_MutableStaticDowncastTo_MR_MeshSave_CtmSaveOptions ( MR_SaveSettings * object)

Downcasts an instance of MR::SaveSettings to a derived class MR::MeshSave::CtmSaveOptions. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise.

◆ MR_SaveSettings_MutableStaticDowncastTo_MR_PointsSave_CtmSavePointsOptions()

MRC_API MR_PointsSave_CtmSavePointsOptions * MR_SaveSettings_MutableStaticDowncastTo_MR_PointsSave_CtmSavePointsOptions ( MR_SaveSettings * object)

Downcasts an instance of MR::SaveSettings to a derived class MR::PointsSave::CtmSavePointsOptions. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise.

◆ MR_SaveSettings_OffsetMutablePtr()

MRC_API MR_SaveSettings * MR_SaveSettings_OffsetMutablePtr ( MR_SaveSettings * 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.

◆ MR_SaveSettings_OffsetPtr()

MRC_API const MR_SaveSettings * MR_SaveSettings_OffsetPtr ( const MR_SaveSettings * 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.

◆ MR_SaveSettings_Set_colors()

MRC_API void MR_SaveSettings_Set_colors ( MR_SaveSettings * _this,
const MR_VertColors * value )

optional per-vertex color to save with the geometry Modifies a member variable of class MR::SaveSettings named colors. Parameter _this can not be null. It is a single object.

◆ MR_SaveSettings_Set_materialName()

MRC_API void MR_SaveSettings_Set_materialName ( MR_SaveSettings * _this,
const char * value,
const char * value_end )

used to save texture and material in some formats (obj) Modifies a member variable of class MR::SaveSettings named materialName. Parameter _this can not be null. It is a single object. Parameter value can not be null. If value_end is null, then value is assumed to be null-terminated.

◆ MR_SaveSettings_Set_onlyValidPoints()

MRC_API void MR_SaveSettings_Set_onlyValidPoints ( MR_SaveSettings * _this,
bool value )

true - save valid points/vertices only (pack them); false - save all points/vertices preserving their indices Modifies a member variable of class MR::SaveSettings named onlyValidPoints. Parameter _this can not be null. It is a single object.

◆ MR_SaveSettings_Set_packPrimitives()

MRC_API void MR_SaveSettings_Set_packPrimitives ( MR_SaveSettings * _this,
bool value )

whether to allow packing or shuffling of primitives (triangles in meshes or edges in polylines); if packPrimitives=true, then ids of invalid primitives are reused by valid primitives and higher compression (in .ctm format) can be reached if the order of triangles is changed; if packPrimitives=false then all primitives maintain their ids, and invalid primitives are saved with all vertex ids equal to zero; currently this flag affects the saving in .ctm and .ply formats only Modifies a member variable of class MR::SaveSettings named packPrimitives. Parameter _this can not be null. It is a single object.

◆ MR_SaveSettings_Set_progress()

MRC_API void MR_SaveSettings_Set_progress ( MR_SaveSettings * _this,
MR_PassBy value_pass_by,
MR_std_function_bool_from_float * value )

to report save progress and cancel saving if user desires Modifies a member variable of class MR::SaveSettings named progress. Parameter _this can not be null. It is a single object.

◆ MR_SaveSettings_Set_texture()

MRC_API void MR_SaveSettings_Set_texture ( MR_SaveSettings * _this,
const MR_MeshTexture * value )

optional texture to save with the geometry Modifies a member variable of class MR::SaveSettings named texture. Parameter _this can not be null. It is a single object.

◆ MR_SaveSettings_Set_uvMap()

MRC_API void MR_SaveSettings_Set_uvMap ( MR_SaveSettings * _this,
const MR_VertCoords2 * value )

optional per-vertex uv coordinate to save with the geometry Modifies a member variable of class MR::SaveSettings named uvMap. Parameter _this can not be null. It is a single object.

◆ MR_SaveSettings_Set_xf()

MRC_API void MR_SaveSettings_Set_xf ( MR_SaveSettings * _this,
const MR_AffineXf3d * value )

this transformation can optionally be applied to all vertices (points) of saved object Modifies a member variable of class MR::SaveSettings named xf. Parameter _this can not be null. It is a single object.

◆ MR_SaveSettings_StaticDowncastTo_MR_MeshSave_CtmSaveOptions()

MRC_API const MR_MeshSave_CtmSaveOptions * MR_SaveSettings_StaticDowncastTo_MR_MeshSave_CtmSaveOptions ( const MR_SaveSettings * object)

Downcasts an instance of MR::SaveSettings to a derived class MR::MeshSave::CtmSaveOptions. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise. This version is acting on mutable pointers.

◆ MR_SaveSettings_StaticDowncastTo_MR_PointsSave_CtmSavePointsOptions()

MRC_API const MR_PointsSave_CtmSavePointsOptions * MR_SaveSettings_StaticDowncastTo_MR_PointsSave_CtmSavePointsOptions ( const MR_SaveSettings * object)

Downcasts an instance of MR::SaveSettings to a derived class MR::PointsSave::CtmSavePointsOptions. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise. This version is acting on mutable pointers.

◆ MR_transformNormals()

MRC_API const MR_VertCoords * MR_transformNormals ( const MR_VertCoords * normals,
const MR_VertBitSet * validVerts,
const MR_Matrix3d * m,
MR_VertCoords * buf )

if (m) is null then just returns (normals); otherwise copies transformed normals in (buf) and returns it Generated from function MR::transformNormals. Parameter normals can not be null. It is a single object. Parameter validVerts can not be null. It is a single object. Parameter buf 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_transformPoints()

MRC_API const MR_VertCoords * MR_transformPoints ( const MR_VertCoords * verts,
const MR_VertBitSet * validVerts,
const MR_AffineXf3d * xf,
MR_VertCoords * buf,
const MR_VertRenumber * vertRenumber )

if (xf) is null then just returns (verts); otherwise copies transformed points in (buf) and returns it Generated from function MR::transformPoints. Parameter verts can not be null. It is a single object. Parameter validVerts can not be null. It is a single object. Parameter buf can not be null. It is a single object. Parameter vertRenumber defaults to a null pointer in C++. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_VertRenumber_AssignFromAnother()

MRC_API MR_VertRenumber * MR_VertRenumber_AssignFromAnother ( MR_VertRenumber * _this,
MR_PassBy _other_pass_by,
MR_VertRenumber * _other )

Generated from a method of class MR::VertRenumber named operator=. 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_VertRenumber_call()

MRC_API int32_t MR_VertRenumber_call ( const MR_VertRenumber * _this,
MR_VertId v )

return packed index (if saveValidOnly = true) or same index (if saveValidOnly = false) Generated from a method of class MR::VertRenumber named operator(). Parameter _this can not be null. It is a single object.

◆ MR_VertRenumber_Construct()

MRC_API MR_VertRenumber * MR_VertRenumber_Construct ( const MR_VertBitSet * validVerts,
bool saveValidOnly )

prepares the mapping Generated from a constructor of class MR::VertRenumber. Parameter validVerts can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_VertRenumber_Destroy() to free it when you're done using it.

◆ MR_VertRenumber_ConstructFromAnother()

MRC_API MR_VertRenumber * MR_VertRenumber_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_VertRenumber * _other )

Generated from a constructor of class MR::VertRenumber. Never returns null. Returns an instance allocated on the heap! Must call MR_VertRenumber_Destroy() to free it when you're done using it.

◆ MR_VertRenumber_Destroy()

MRC_API void MR_VertRenumber_Destroy ( const MR_VertRenumber * _this)

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

◆ MR_VertRenumber_DestroyArray()

MRC_API void MR_VertRenumber_DestroyArray ( const MR_VertRenumber * _this)

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

◆ MR_VertRenumber_OffsetMutablePtr()

MRC_API MR_VertRenumber * MR_VertRenumber_OffsetMutablePtr ( MR_VertRenumber * 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.

◆ MR_VertRenumber_OffsetPtr()

MRC_API const MR_VertRenumber * MR_VertRenumber_OffsetPtr ( const MR_VertRenumber * 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.

◆ MR_VertRenumber_saveValidOnly()

MRC_API bool MR_VertRenumber_saveValidOnly ( const MR_VertRenumber * _this)

Generated from a method of class MR::VertRenumber named saveValidOnly. Parameter _this can not be null. It is a single object.

◆ MR_VertRenumber_sizeVerts()

MRC_API int32_t MR_VertRenumber_sizeVerts ( const MR_VertRenumber * _this)

return the total number of vertices to be saved Generated from a method of class MR::VertRenumber named sizeVerts. Parameter _this can not be null. It is a single object.