MeshLib C Docs
Loading...
Searching...
No Matches
MRSaveSettings.h File Reference
#include <MRCMesh/MRColor.h>
#include <MRCMesh/MRId.h>
#include <MRCMesh/MRUnitInfo.h>
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/common.h>
#include <MRCMisc/exports.h>
#include <stdbool.h>
#include <stddef.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_optional_MR_Color MR_std_optional_MR_Color
 
typedef struct MR_std_optional_MR_LengthUnit MR_std_optional_MR_LengthUnit
 
typedef struct MR_std_string MR_std_string
 
typedef struct MR_std_vector_MR_Color MR_std_vector_MR_Color
 
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_std_vector_MR_Color *const * MR_SaveSettings_Get_primitiveColors (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_primitiveColors (MR_SaveSettings *_this, const MR_std_vector_MR_Color *value)
 
MRC_API const MR_std_vector_MR_Color ** MR_SaveSettings_GetMutable_primitiveColors (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 bool * MR_SaveSettings_Get_saveTriCornerUVCoords (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_saveTriCornerUVCoords (MR_SaveSettings *_this, bool value)
 
MRC_API bool * MR_SaveSettings_GetMutable_saveTriCornerUVCoords (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_optional_MR_LengthUnitMR_SaveSettings_Get_lengthUnit (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_lengthUnit (MR_SaveSettings *_this, const MR_LengthUnit *value)
 
MRC_API MR_std_optional_MR_LengthUnitMR_SaveSettings_GetMutable_lengthUnit (MR_SaveSettings *_this)
 
MRC_API const MR_std_optional_MR_ColorMR_SaveSettings_Get_solidColor (const MR_SaveSettings *_this)
 
MRC_API void MR_SaveSettings_Set_solidColor (MR_SaveSettings *_this, const MR_Color *value)
 
MRC_API MR_std_optional_MR_ColorMR_SaveSettings_GetMutable_solidColor (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_std_vector_MR_Color *primitiveColors, const MR_VertCoords2 *uvMap, bool saveTriCornerUVCoords, const MR_MeshTexture *texture, const char *materialName, const char *materialName_end, const MR_AffineXf3d *xf, const MR_LengthUnit *lengthUnit, const MR_Color *solidColor, 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)
 
MRC_API MR_SaveSettingsMR_SaveSettings_OffsetMutablePtr (MR_SaveSettings *ptr, ptrdiff_t i)
 
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)
 
MRC_API MR_VertRenumberMR_VertRenumber_OffsetMutablePtr (MR_VertRenumber *ptr, ptrdiff_t i)
 
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 int MR_VertRenumber_sizeVerts (const MR_VertRenumber *_this)
 
MRC_API int 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 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_bool_from_float

◆ MR_std_optional_MR_Color

◆ MR_std_optional_MR_LengthUnit

◆ MR_std_string

typedef struct MR_std_string MR_std_string

◆ MR_std_vector_MR_Color

◆ 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. Supported MR_PassBy modes: MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

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 method MR::SaveSettings::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_SaveSettings_ConstructFrom()

MRC_API MR_SaveSettings * MR_SaveSettings_ConstructFrom ( bool onlyValidPoints,
bool packPrimitives,
const MR_VertColors * colors,
const MR_std_vector_MR_Color * primitiveColors,
const MR_VertCoords2 * uvMap,
bool saveTriCornerUVCoords,
const MR_MeshTexture * texture,
const char * materialName,
const char * materialName_end,
const MR_AffineXf3d * xf,
const MR_LengthUnit * lengthUnit,
const MR_Color * solidColor,
MR_PassBy progress_pass_by,
MR_std_function_bool_from_float * progress )

Constructs MR::SaveSettings elementwise. The reference to the parameter colors might be preserved in the constructed object. The reference to the parameter primitiveColors might be preserved in the constructed object. The reference to the parameter uvMap might be preserved in the constructed object. The reference to the parameter texture might be preserved in the constructed object. Parameter materialName can not be null. If materialName_end is null, then materialName is assumed to be null-terminated. The reference to the parameter materialName might be preserved in the constructed object. The reference to the parameter xf might be preserved in the constructed object. Parameter lengthUnit is optional. To keep it empty, pass a null pointer. The reference to the parameter lengthUnit might be preserved in the constructed object. Parameter solidColor is optional. To keep it empty, pass a null pointer. The reference to the parameter solidColor might be preserved in the constructed object. The reference to the parameter progress might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_SaveSettings_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_SaveSettings_ConstructFromAnother()

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

Generated from constructor MR::SaveSettings::SaveSettings. 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_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_lengthUnit()

MRC_API const MR_std_optional_MR_LengthUnit * MR_SaveSettings_Get_lengthUnit ( const MR_SaveSettings * _this)

units of input coordinates and transformation, to be serialized if the format supports it Returns a pointer to a member variable of class MR::SaveSettings named lengthUnit. 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)

the name of file (UTF8 encoded) without extension to save texture in some formats (e.g. .OBJ, .PLY) 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_primitiveColors()

MRC_API const MR_std_vector_MR_Color *const * MR_SaveSettings_Get_primitiveColors ( const MR_SaveSettings * _this)

per-face colors for meshes, per-undirected-edge colors for polylines, unused for point clouds and other Returns a pointer to a member variable of class MR::SaveSettings named primitiveColors. 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_saveTriCornerUVCoords()

MRC_API const bool * MR_SaveSettings_Get_saveTriCornerUVCoords ( const MR_SaveSettings * _this)

if a format supports both per-vertex and per-tri-corner UV-coordinates, then prefer the later option (it takes more space but more supported in other software) Returns a pointer to a member variable of class MR::SaveSettings named saveTriCornerUVCoords. 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_solidColor()

MRC_API const MR_std_optional_MR_Color * MR_SaveSettings_Get_solidColor ( const MR_SaveSettings * _this)

the color of whole object Returns a pointer to a member variable of class MR::SaveSettings named solidColor. 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_lengthUnit()

MRC_API MR_std_optional_MR_LengthUnit * MR_SaveSettings_GetMutable_lengthUnit ( MR_SaveSettings * _this)

units of input coordinates and transformation, to be serialized if the format supports it Returns a mutable pointer to a member variable of class MR::SaveSettings named lengthUnit. 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)

the name of file (UTF8 encoded) without extension to save texture in some formats (e.g. .OBJ, .PLY) 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_primitiveColors()

MRC_API const MR_std_vector_MR_Color ** MR_SaveSettings_GetMutable_primitiveColors ( MR_SaveSettings * _this)

per-face colors for meshes, per-undirected-edge colors for polylines, unused for point clouds and other Returns a mutable pointer to a member variable of class MR::SaveSettings named primitiveColors. 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_saveTriCornerUVCoords()

MRC_API bool * MR_SaveSettings_GetMutable_saveTriCornerUVCoords ( MR_SaveSettings * _this)

if a format supports both per-vertex and per-tri-corner UV-coordinates, then prefer the later option (it takes more space but more supported in other software) Returns a mutable pointer to a member variable of class MR::SaveSettings named saveTriCornerUVCoords. 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_solidColor()

MRC_API MR_std_optional_MR_Color * MR_SaveSettings_GetMutable_solidColor ( MR_SaveSettings * _this)

the color of whole object Returns a mutable pointer to a member variable of class MR::SaveSettings named solidColor. 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. The reference to the parameter ptr might be preserved in the return value.

◆ 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. The reference to the parameter ptr might be preserved in the return value.

◆ 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. The reference to the parameter value might be preserved in this object in element colors. When this function is called, this object will drop object references it had previously in colors.

◆ MR_SaveSettings_Set_lengthUnit()

MRC_API void MR_SaveSettings_Set_lengthUnit ( MR_SaveSettings * _this,
const MR_LengthUnit * value )

units of input coordinates and transformation, to be serialized if the format supports it Modifies a member variable of class MR::SaveSettings named lengthUnit. Parameter _this can not be null. It is a single object. Parameter value is optional. To keep it empty, pass a null pointer. The reference to the parameter value might be preserved in this object in element lengthUnit. When this function is called, this object will drop object references it had previously in lengthUnit.

◆ MR_SaveSettings_Set_materialName()

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

the name of file (UTF8 encoded) without extension to save texture in some formats (e.g. .OBJ, .PLY) 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. The reference to the parameter value might be preserved in this object in element materialName. When this function is called, this object will drop object references it had previously in materialName.

◆ 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. When this function is called, this object will drop object references it had previously in onlyValidPoints.

◆ 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. When this function is called, this object will drop object references it had previously in packPrimitives.

◆ MR_SaveSettings_Set_primitiveColors()

MRC_API void MR_SaveSettings_Set_primitiveColors ( MR_SaveSettings * _this,
const MR_std_vector_MR_Color * value )

per-face colors for meshes, per-undirected-edge colors for polylines, unused for point clouds and other Modifies a member variable of class MR::SaveSettings named primitiveColors. 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 primitiveColors. When this function is called, this object will drop object references it had previously in primitiveColors.

◆ 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. The reference to the parameter value might be preserved in this object in element progress. When this function is called, this object will drop object references it had previously in progress.

◆ MR_SaveSettings_Set_saveTriCornerUVCoords()

MRC_API void MR_SaveSettings_Set_saveTriCornerUVCoords ( MR_SaveSettings * _this,
bool value )

if a format supports both per-vertex and per-tri-corner UV-coordinates, then prefer the later option (it takes more space but more supported in other software) Modifies a member variable of class MR::SaveSettings named saveTriCornerUVCoords. 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 saveTriCornerUVCoords.

◆ MR_SaveSettings_Set_solidColor()

MRC_API void MR_SaveSettings_Set_solidColor ( MR_SaveSettings * _this,
const MR_Color * value )

the color of whole object Modifies a member variable of class MR::SaveSettings named solidColor. Parameter _this can not be null. It is a single object. Parameter value is optional. To keep it empty, pass a null pointer. The reference to the parameter value might be preserved in this object in element solidColor. When this function is called, this object will drop object references it had previously in solidColor.

◆ 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. The reference to the parameter value might be preserved in this object in element texture. When this function is called, this object will drop object references it had previously in texture.

◆ 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. The reference to the parameter value might be preserved in this object in element uvMap. When this function is called, this object will drop object references it had previously in uvMap.

◆ 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. The reference to the parameter value might be preserved in this object in element xf. When this function is called, this object will drop object references it had previously in xf.

◆ 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 method MR::VertRenumber::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_VertRenumber_call()

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

return packed index (if saveValidOnly = true) or same index (if saveValidOnly = false) Generated from method MR::VertRenumber::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 constructor MR::VertRenumber::VertRenumber. Parameter validVerts can not be null. It is a single object. The reference to the parameter validVerts might be preserved in the constructed 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 constructor MR::VertRenumber::VertRenumber. 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_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. The reference to the parameter ptr might be preserved in the return value.

◆ 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. The reference to the parameter ptr might be preserved in the return value.

◆ MR_VertRenumber_saveValidOnly()

MRC_API bool MR_VertRenumber_saveValidOnly ( const MR_VertRenumber * _this)

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

◆ MR_VertRenumber_sizeVerts()

MRC_API int MR_VertRenumber_sizeVerts ( const MR_VertRenumber * _this)

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