#include <MRCMesh/MRVector3.h>#include <MRCMisc/common.h>#include <MRCMisc/exports.h>#include <stddef.h>Go to the source code of this file.
Enumerations | |
| enum | MR_CutMeshParameters_ForceFill { MR_CutMeshParameters_ForceFill_None = 0 , MR_CutMeshParameters_ForceFill_Good = 1 , MR_CutMeshParameters_ForceFill_All = 2 } |
| typedef struct MR_AffineXf3f MR_AffineXf3f |
| typedef struct MR_CutByProjectionSettings MR_CutByProjectionSettings |
Settings structurer for cutMeshByProjection function Generated from class MR::CutByProjectionSettings. 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).
| typedef struct MR_CutMeshParameters MR_CutMeshParameters |
Generated from class MR::CutMeshParameters. 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).
This enum defines the MR::cutMesh behaviour in case of bad faces acure basicaly MR::cutMesh removes all faces which contours pass through, adds new edges to topology and fills all removed parts
| typedef struct MR_CutMeshResult MR_CutMeshResult |
Generated from class MR::CutMeshResult. 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).
| typedef struct MR_expected_std_vector_MR_OneMeshContour_std_string MR_expected_std_vector_MR_OneMeshContour_std_string |
| typedef struct MR_expected_std_vector_std_vector_MR_EdgeId_std_string MR_expected_std_vector_std_vector_MR_EdgeId_std_string |
| typedef struct MR_FaceBitSet MR_FaceBitSet |
| typedef struct MR_FaceMap MR_FaceMap |
| typedef struct MR_NewEdgesMap MR_NewEdgesMap |
Map structure to find primitives of old topology by edges introduced in cutMesh Generated from class MR::NewEdgesMap. 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).
| typedef struct MR_phmap_flat_hash_map_MR_UndirectedEdgeId_int MR_phmap_flat_hash_map_MR_UndirectedEdgeId_int |
| typedef struct MR_SearchPathSettings MR_SearchPathSettings |
| typedef struct MR_SortIntersectionsData MR_SortIntersectionsData |
| typedef struct MR_std_function_float_from_int MR_std_function_float_from_int |
| typedef struct MR_std_vector_MR_MeshTriPoint MR_std_vector_MR_MeshTriPoint |
| typedef struct MR_std_vector_MR_OneMeshContour MR_std_vector_MR_OneMeshContour |
| typedef struct MR_std_vector_MR_Vector3f MR_std_vector_MR_Vector3f |
| typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet |
This enum defines the MR::cutMesh behaviour in case of bad faces acure basicaly MR::cutMesh removes all faces which contours pass through, adds new edges to topology and fills all removed parts
| Enumerator | |
|---|---|
| MR_CutMeshParameters_ForceFill_None | |
| MR_CutMeshParameters_ForceFill_Good | |
| MR_CutMeshParameters_ForceFill_All | |
| MRC_API MR_expected_std_vector_MR_OneMeshContour_std_string * MR_convertMeshTriPointsSurfaceOffsetToMeshContours_float | ( | const MR_Mesh * | mesh, |
| const MR_std_vector_MR_MeshTriPoint * | surfaceLine, | ||
| float | offset, | ||
| const MR_SearchPathSettings * | searchSettings ) |
Makes continuous contour by iso-line from mesh tri points, if first and last meshTriPoint is the same, makes closed contour.
Finds shortest paths between neighbor surfaceLine and build offset contour on surface for MR::cutMesh input
| offset | amount of offset form given point, note that absolute value is used and isoline in both direction returned |
| searchSettings | settings for search geodesic path Generated from function MR::convertMeshTriPointsSurfaceOffsetToMeshContours. Parameter mesh can not be null. It is a single object. Parameter surfaceLine can not be null. It is a single object. Parameter searchSettings is a single object. Parameter searchSettings has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_std_vector_MR_OneMeshContour_std_string_Destroy() to free it when you're done using it. |
| MRC_API MR_expected_std_vector_MR_OneMeshContour_std_string * MR_convertMeshTriPointsSurfaceOffsetToMeshContours_std_function_float_func_from_int | ( | const MR_Mesh * | mesh, |
| const MR_std_vector_MR_MeshTriPoint * | surfaceLine, | ||
| const MR_std_function_float_from_int * | offsetAtPoint, | ||
| const MR_SearchPathSettings * | searchSettings ) |
Makes continuous contour by iso-line from mesh tri points, if first and last meshTriPoint is the same, makes closed contour.
Finds shortest paths between neighbor surfaceLine and build offset contour on surface for MR::cutMesh input
| offsetAtPoint | functor that returns amount of offset form arg point, note that absolute value is used and isoline in both direction returned |
| searchSettings | settings for search geodesic path Generated from function MR::convertMeshTriPointsSurfaceOffsetToMeshContours. Parameter mesh can not be null. It is a single object. Parameter surfaceLine can not be null. It is a single object. Parameter offsetAtPoint can not be null. It is a single object. Parameter searchSettings is a single object. Parameter searchSettings has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_std_vector_MR_OneMeshContour_std_string_Destroy() to free it when you're done using it. |
| MRC_API MR_CutByProjectionSettings * MR_CutByProjectionSettings_AssignFromAnother | ( | MR_CutByProjectionSettings * | _this, |
| const MR_CutByProjectionSettings * | _other ) |
Generated from method MR::CutByProjectionSettings::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.
| MRC_API MR_CutByProjectionSettings * MR_CutByProjectionSettings_ConstructFrom | ( | MR_Vector3f | direction, |
| const MR_AffineXf3f * | cont2mesh ) |
Constructs MR::CutByProjectionSettings elementwise. The reference to the parameter direction might be preserved in the constructed object. The reference to the parameter cont2mesh might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_CutByProjectionSettings_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.
| MRC_API MR_CutByProjectionSettings * MR_CutByProjectionSettings_ConstructFromAnother | ( | const MR_CutByProjectionSettings * | _other | ) |
Generated from constructor MR::CutByProjectionSettings::CutByProjectionSettings. 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_CutByProjectionSettings_Destroy() to free it when you're done using it.
| MRC_API MR_CutByProjectionSettings * MR_CutByProjectionSettings_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_CutByProjectionSettings_Destroy() to free it when you're done using it.
| MRC_API MR_CutByProjectionSettings * MR_CutByProjectionSettings_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_CutByProjectionSettings_DestroyArray(). Use MR_CutByProjectionSettings_OffsetMutablePtr() and MR_CutByProjectionSettings_OffsetPtr() to access the array elements.
| MRC_API void MR_CutByProjectionSettings_Destroy | ( | const MR_CutByProjectionSettings * | _this | ) |
Destroys a heap-allocated instance of MR_CutByProjectionSettings. Does nothing if the pointer is null.
| MRC_API void MR_CutByProjectionSettings_DestroyArray | ( | const MR_CutByProjectionSettings * | _this | ) |
Destroys a heap-allocated array of MR_CutByProjectionSettings. Does nothing if the pointer is null.
| MRC_API const MR_AffineXf3f *const * MR_CutByProjectionSettings_Get_cont2mesh | ( | const MR_CutByProjectionSettings * | _this | ) |
if set - used to transform contours form its local space to mesh local space Returns a pointer to a member variable of class MR::CutByProjectionSettings named cont2mesh. 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.
| MRC_API const MR_Vector3f * MR_CutByProjectionSettings_Get_direction | ( | const MR_CutByProjectionSettings * | _this | ) |
direction of projection (in mesh space) Returns a pointer to a member variable of class MR::CutByProjectionSettings named direction. 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.
| MRC_API const MR_AffineXf3f ** MR_CutByProjectionSettings_GetMutable_cont2mesh | ( | MR_CutByProjectionSettings * | _this | ) |
if set - used to transform contours form its local space to mesh local space Returns a mutable pointer to a member variable of class MR::CutByProjectionSettings named cont2mesh. 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.
| MRC_API MR_Vector3f * MR_CutByProjectionSettings_GetMutable_direction | ( | MR_CutByProjectionSettings * | _this | ) |
direction of projection (in mesh space) Returns a mutable pointer to a member variable of class MR::CutByProjectionSettings named direction. 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.
| MRC_API MR_CutByProjectionSettings * MR_CutByProjectionSettings_OffsetMutablePtr | ( | MR_CutByProjectionSettings * | 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.
| MRC_API const MR_CutByProjectionSettings * MR_CutByProjectionSettings_OffsetPtr | ( | const MR_CutByProjectionSettings * | 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.
| MRC_API void MR_CutByProjectionSettings_Set_cont2mesh | ( | MR_CutByProjectionSettings * | _this, |
| const MR_AffineXf3f * | value ) |
if set - used to transform contours form its local space to mesh local space Modifies a member variable of class MR::CutByProjectionSettings named cont2mesh. 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 cont2mesh. When this function is called, this object will drop object references it had previously in cont2mesh.
| MRC_API void MR_CutByProjectionSettings_Set_direction | ( | MR_CutByProjectionSettings * | _this, |
| MR_Vector3f | value ) |
direction of projection (in mesh space) Modifies a member variable of class MR::CutByProjectionSettings named direction. 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 direction. When this function is called, this object will drop object references it had previously in direction.
| MRC_API MR_CutMeshResult * MR_cutMesh | ( | MR_Mesh * | mesh, |
| const MR_std_vector_MR_OneMeshContour * | contours, | ||
| const MR_CutMeshParameters * | params ) |
Cuts mesh by given contours.
This function cuts mesh making new edges paths on place of input contours
| mesh | Input mesh that will be cut |
| contours | Input contours to cut mesh with, find more MR::OneMeshContours |
| params | Parameters describing some cut options, find more MR::CutMeshParameters |
bad faces) will not be allowed for fill bad faces are in mesh, mesh will be spoiled, Generated from function MR::cutMesh. Parameter mesh can not be null. It is a single object. Parameter contours can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_CutMeshResult_Destroy() to free it when you're done using it.
| MRC_API MR_expected_MR_FaceBitSet_std_string * MR_cutMeshByContour | ( | MR_Mesh * | mesh, |
| const MR_std_vector_MR_Vector3f * | contour, | ||
| const MR_AffineXf3f * | xf ) |
Cuts mesh by contour by projecting all the points
| xf | transformation from the CSYS of contour to the CSYS of mesh |
mesh is modified, see cutMesh for info MR::cutMeshByContour. Parameter mesh can not be null. It is a single object. Parameter contour can not be null. It is a single object. Parameter xf is a single object. Parameter xf has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_FaceBitSet_std_string_Destroy() to free it when you're done using it. | MRC_API MR_expected_MR_FaceBitSet_std_string * MR_cutMeshByContours | ( | MR_Mesh * | mesh, |
| const MR_std_vector_std_vector_MR_Vector3f * | contours, | ||
| const MR_AffineXf3f * | xf ) |
Cuts mesh by contours by projecting all the points
| xf | transformation from the CSYS of contour to the CSYS of mesh |
mesh is modified, see cutMesh for info MR::cutMeshByContours. Parameter mesh can not be null. It is a single object. Parameter contours can not be null. It is a single object. Parameter xf is a single object. Parameter xf has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_FaceBitSet_std_string_Destroy() to free it when you're done using it. | MRC_API MR_expected_std_vector_std_vector_MR_EdgeId_std_string * MR_cutMeshByProjection | ( | MR_Mesh * | mesh, |
| const MR_std_vector_std_vector_MR_Vector3f * | contours, | ||
| const MR_CutByProjectionSettings * | settings ) |
Performs orthographic projection with of given contours to mesh and cut result lines, fails if any point of contours has missed mesh on projection stage or cut contours contains self-intersections.
| mesh | for cutting, it will be changed |
| contours | for projection onto mesh |
| settings | to specify direction and contours to mesh space transformation |
Generated from function MR::cutMeshByProjection. Parameter mesh can not be null. It is a single object. Parameter contours can not be null. It is a single object. Parameter settings can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_std_vector_std_vector_MR_EdgeId_std_string_Destroy() to free it when you're done using it.
| MRC_API MR_CutMeshParameters * MR_CutMeshParameters_AssignFromAnother | ( | MR_CutMeshParameters * | _this, |
| const MR_CutMeshParameters * | _other ) |
Generated from method MR::CutMeshParameters::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.
| MRC_API MR_CutMeshParameters * MR_CutMeshParameters_ConstructFrom | ( | const MR_SortIntersectionsData * | sortData, |
| MR_FaceMap * | new2OldMap, | ||
| MR_CutMeshParameters_ForceFill | forceFillMode, | ||
| MR_NewEdgesMap * | new2oldEdgesMap ) |
Constructs MR::CutMeshParameters elementwise. The reference to the parameter sortData might be preserved in the constructed object. The reference to the parameter new2OldMap might be preserved in the constructed object. The reference to the parameter forceFillMode might be preserved in the constructed object. The reference to the parameter new2oldEdgesMap might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_CutMeshParameters_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.
| MRC_API MR_CutMeshParameters * MR_CutMeshParameters_ConstructFromAnother | ( | const MR_CutMeshParameters * | _other | ) |
Generated from constructor MR::CutMeshParameters::CutMeshParameters. 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_CutMeshParameters_Destroy() to free it when you're done using it.
| MRC_API MR_CutMeshParameters * MR_CutMeshParameters_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_CutMeshParameters_Destroy() to free it when you're done using it.
| MRC_API MR_CutMeshParameters * MR_CutMeshParameters_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_CutMeshParameters_DestroyArray(). Use MR_CutMeshParameters_OffsetMutablePtr() and MR_CutMeshParameters_OffsetPtr() to access the array elements.
| MRC_API void MR_CutMeshParameters_Destroy | ( | const MR_CutMeshParameters * | _this | ) |
Destroys a heap-allocated instance of MR_CutMeshParameters. Does nothing if the pointer is null.
| MRC_API void MR_CutMeshParameters_DestroyArray | ( | const MR_CutMeshParameters * | _this | ) |
Destroys a heap-allocated array of MR_CutMeshParameters. Does nothing if the pointer is null.
| MRC_API const MR_CutMeshParameters_ForceFill * MR_CutMeshParameters_Get_forceFillMode | ( | const MR_CutMeshParameters * | _this | ) |
Returns a pointer to a member variable of class MR::CutMeshParameters named forceFillMode. 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.
| MRC_API MR_NewEdgesMap *const * MR_CutMeshParameters_Get_new2oldEdgesMap | ( | const MR_CutMeshParameters * | _this | ) |
Optional output map for each new edge introduced after cut maps edge from old topology or old face Returns a pointer to a member variable of class MR::CutMeshParameters named new2oldEdgesMap. 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.
| MRC_API MR_FaceMap *const * MR_CutMeshParameters_Get_new2OldMap | ( | const MR_CutMeshParameters * | _this | ) |
This is optional output - map from newly generated faces to old faces (N-1) Returns a pointer to a member variable of class MR::CutMeshParameters named new2OldMap. 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.
| MRC_API const MR_SortIntersectionsData *const * MR_CutMeshParameters_Get_sortData | ( | const MR_CutMeshParameters * | _this | ) |
This is optional input for better contours resolving
it provides additional info from other mesh used in boolean operation, useful to solve some degeneration
MR::CutMeshParameters named sortData. 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. | MRC_API MR_CutMeshParameters_ForceFill * MR_CutMeshParameters_GetMutable_forceFillMode | ( | MR_CutMeshParameters * | _this | ) |
Returns a mutable pointer to a member variable of class MR::CutMeshParameters named forceFillMode. 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.
| MRC_API MR_NewEdgesMap ** MR_CutMeshParameters_GetMutable_new2oldEdgesMap | ( | MR_CutMeshParameters * | _this | ) |
Optional output map for each new edge introduced after cut maps edge from old topology or old face Returns a mutable pointer to a member variable of class MR::CutMeshParameters named new2oldEdgesMap. 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.
| MRC_API MR_FaceMap ** MR_CutMeshParameters_GetMutable_new2OldMap | ( | MR_CutMeshParameters * | _this | ) |
This is optional output - map from newly generated faces to old faces (N-1) Returns a mutable pointer to a member variable of class MR::CutMeshParameters named new2OldMap. 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.
| MRC_API const MR_SortIntersectionsData ** MR_CutMeshParameters_GetMutable_sortData | ( | MR_CutMeshParameters * | _this | ) |
This is optional input for better contours resolving
it provides additional info from other mesh used in boolean operation, useful to solve some degeneration
MR::CutMeshParameters named sortData. 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. | MRC_API MR_CutMeshParameters * MR_CutMeshParameters_OffsetMutablePtr | ( | MR_CutMeshParameters * | 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.
| MRC_API const MR_CutMeshParameters * MR_CutMeshParameters_OffsetPtr | ( | const MR_CutMeshParameters * | 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.
| MRC_API void MR_CutMeshParameters_Set_forceFillMode | ( | MR_CutMeshParameters * | _this, |
| MR_CutMeshParameters_ForceFill | value ) |
Modifies a member variable of class MR::CutMeshParameters named forceFillMode. 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 forceFillMode. When this function is called, this object will drop object references it had previously in forceFillMode.
| MRC_API void MR_CutMeshParameters_Set_new2oldEdgesMap | ( | MR_CutMeshParameters * | _this, |
| MR_NewEdgesMap * | value ) |
Optional output map for each new edge introduced after cut maps edge from old topology or old face Modifies a member variable of class MR::CutMeshParameters named new2oldEdgesMap. 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 new2oldEdgesMap. When this function is called, this object will drop object references it had previously in new2oldEdgesMap.
| MRC_API void MR_CutMeshParameters_Set_new2OldMap | ( | MR_CutMeshParameters * | _this, |
| MR_FaceMap * | value ) |
This is optional output - map from newly generated faces to old faces (N-1) Modifies a member variable of class MR::CutMeshParameters named new2OldMap. 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 new2OldMap. When this function is called, this object will drop object references it had previously in new2OldMap.
| MRC_API void MR_CutMeshParameters_Set_sortData | ( | MR_CutMeshParameters * | _this, |
| const MR_SortIntersectionsData * | value ) |
This is optional input for better contours resolving
it provides additional info from other mesh used in boolean operation, useful to solve some degeneration
MR::CutMeshParameters named sortData. 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 sortData. When this function is called, this object will drop object references it had previously in sortData. | MRC_API MR_CutMeshResult * MR_CutMeshResult_AssignFromAnother | ( | MR_CutMeshResult * | _this, |
| MR_PassBy | _other_pass_by, | ||
| MR_CutMeshResult * | _other ) |
Generated from method MR::CutMeshResult::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.
| MRC_API MR_CutMeshResult * MR_CutMeshResult_ConstructFrom | ( | MR_PassBy | resultCut_pass_by, |
| MR_std_vector_std_vector_MR_EdgeId * | resultCut, | ||
| MR_PassBy | fbsWithContourIntersections_pass_by, | ||
| MR_FaceBitSet * | fbsWithContourIntersections ) |
Constructs MR::CutMeshResult elementwise. The reference to the parameter resultCut might be preserved in the constructed object. The reference to the parameter fbsWithContourIntersections might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_CutMeshResult_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.
| MRC_API MR_CutMeshResult * MR_CutMeshResult_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, |
| MR_CutMeshResult * | _other ) |
Generated from constructor MR::CutMeshResult::CutMeshResult. 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_CutMeshResult_Destroy() to free it when you're done using it.
| MRC_API MR_CutMeshResult * MR_CutMeshResult_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_CutMeshResult_Destroy() to free it when you're done using it.
| MRC_API MR_CutMeshResult * MR_CutMeshResult_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_CutMeshResult_DestroyArray(). Use MR_CutMeshResult_OffsetMutablePtr() and MR_CutMeshResult_OffsetPtr() to access the array elements.
| MRC_API void MR_CutMeshResult_Destroy | ( | const MR_CutMeshResult * | _this | ) |
Destroys a heap-allocated instance of MR_CutMeshResult. Does nothing if the pointer is null.
| MRC_API void MR_CutMeshResult_DestroyArray | ( | const MR_CutMeshResult * | _this | ) |
Destroys a heap-allocated array of MR_CutMeshResult. Does nothing if the pointer is null.
| MRC_API const MR_FaceBitSet * MR_CutMeshResult_Get_fbsWithContourIntersections | ( | const MR_CutMeshResult * | _this | ) |
Bitset of bad triangles - triangles where input contours have intersections and cannot be cut and filled in a good way
MR::CutMeshResult named fbsWithContourIntersections. 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. | MRC_API const MR_std_vector_std_vector_MR_EdgeId * MR_CutMeshResult_Get_resultCut | ( | const MR_CutMeshResult * | _this | ) |
Paths of new edges on mesh, they represent same contours as input, but already cut Returns a pointer to a member variable of class MR::CutMeshResult named resultCut. 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.
| MRC_API MR_FaceBitSet * MR_CutMeshResult_GetMutable_fbsWithContourIntersections | ( | MR_CutMeshResult * | _this | ) |
Bitset of bad triangles - triangles where input contours have intersections and cannot be cut and filled in a good way
MR::CutMeshResult named fbsWithContourIntersections. 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. | MRC_API MR_std_vector_std_vector_MR_EdgeId * MR_CutMeshResult_GetMutable_resultCut | ( | MR_CutMeshResult * | _this | ) |
Paths of new edges on mesh, they represent same contours as input, but already cut Returns a mutable pointer to a member variable of class MR::CutMeshResult named resultCut. 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.
| MRC_API MR_CutMeshResult * MR_CutMeshResult_OffsetMutablePtr | ( | MR_CutMeshResult * | 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.
| MRC_API const MR_CutMeshResult * MR_CutMeshResult_OffsetPtr | ( | const MR_CutMeshResult * | 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.
| MRC_API void MR_CutMeshResult_Set_fbsWithContourIntersections | ( | MR_CutMeshResult * | _this, |
| MR_PassBy | value_pass_by, | ||
| MR_FaceBitSet * | value ) |
Bitset of bad triangles - triangles where input contours have intersections and cannot be cut and filled in a good way
MR::CutMeshResult named fbsWithContourIntersections. 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 fbsWithContourIntersections. When this function is called, this object will drop object references it had previously in fbsWithContourIntersections. | MRC_API void MR_CutMeshResult_Set_resultCut | ( | MR_CutMeshResult * | _this, |
| MR_PassBy | value_pass_by, | ||
| MR_std_vector_std_vector_MR_EdgeId * | value ) |
Paths of new edges on mesh, they represent same contours as input, but already cut Modifies a member variable of class MR::CutMeshResult named resultCut. 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 resultCut. When this function is called, this object will drop object references it had previously in resultCut.
| MRC_API MR_NewEdgesMap * MR_NewEdgesMap_AssignFromAnother | ( | MR_NewEdgesMap * | _this, |
| MR_PassBy | _other_pass_by, | ||
| MR_NewEdgesMap * | _other ) |
Generated from method MR::NewEdgesMap::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.
| MRC_API MR_NewEdgesMap * MR_NewEdgesMap_ConstructFrom | ( | MR_PassBy | splitEdges_pass_by, |
| MR_UndirectedEdgeBitSet * | splitEdges, | ||
| MR_PassBy | map_pass_by, | ||
| MR_phmap_flat_hash_map_MR_UndirectedEdgeId_int * | map ) |
Constructs MR::NewEdgesMap elementwise. The reference to the parameter splitEdges might be preserved in the constructed object. The reference to the parameter map might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_NewEdgesMap_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.
| MRC_API MR_NewEdgesMap * MR_NewEdgesMap_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, |
| MR_NewEdgesMap * | _other ) |
Generated from constructor MR::NewEdgesMap::NewEdgesMap. 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_NewEdgesMap_Destroy() to free it when you're done using it.
| MRC_API MR_NewEdgesMap * MR_NewEdgesMap_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_NewEdgesMap_Destroy() to free it when you're done using it.
| MRC_API MR_NewEdgesMap * MR_NewEdgesMap_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_NewEdgesMap_DestroyArray(). Use MR_NewEdgesMap_OffsetMutablePtr() and MR_NewEdgesMap_OffsetPtr() to access the array elements.
| MRC_API void MR_NewEdgesMap_Destroy | ( | const MR_NewEdgesMap * | _this | ) |
Destroys a heap-allocated instance of MR_NewEdgesMap. Does nothing if the pointer is null.
| MRC_API void MR_NewEdgesMap_DestroyArray | ( | const MR_NewEdgesMap * | _this | ) |
Destroys a heap-allocated array of MR_NewEdgesMap. Does nothing if the pointer is null.
| MRC_API const MR_phmap_flat_hash_map_MR_UndirectedEdgeId_int * MR_NewEdgesMap_Get_map | ( | const MR_NewEdgesMap * | _this | ) |
maps every edge appeared during subdivision to an original edge before mesh subdivision; for splitEdges[key]=true, the value is arbitrary oriented original edge, for which key-edge is its part; for splitEdges[key]=false, the value is an original triangle Returns a pointer to a member variable of class MR::NewEdgesMap named map. 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.
| MRC_API const MR_UndirectedEdgeBitSet * MR_NewEdgesMap_Get_splitEdges | ( | const MR_NewEdgesMap * | _this | ) |
true here means that a subdivided edge is a part of some original edge edge before mesh subdivision; false here is both for unmodified edges and for new edges introduced within original triangles Returns a pointer to a member variable of class MR::NewEdgesMap named splitEdges. 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.
| MRC_API MR_phmap_flat_hash_map_MR_UndirectedEdgeId_int * MR_NewEdgesMap_GetMutable_map | ( | MR_NewEdgesMap * | _this | ) |
maps every edge appeared during subdivision to an original edge before mesh subdivision; for splitEdges[key]=true, the value is arbitrary oriented original edge, for which key-edge is its part; for splitEdges[key]=false, the value is an original triangle Returns a mutable pointer to a member variable of class MR::NewEdgesMap named map. 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.
| MRC_API MR_UndirectedEdgeBitSet * MR_NewEdgesMap_GetMutable_splitEdges | ( | MR_NewEdgesMap * | _this | ) |
true here means that a subdivided edge is a part of some original edge edge before mesh subdivision; false here is both for unmodified edges and for new edges introduced within original triangles Returns a mutable pointer to a member variable of class MR::NewEdgesMap named splitEdges. 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.
| MRC_API MR_NewEdgesMap * MR_NewEdgesMap_OffsetMutablePtr | ( | MR_NewEdgesMap * | 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.
| MRC_API const MR_NewEdgesMap * MR_NewEdgesMap_OffsetPtr | ( | const MR_NewEdgesMap * | 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.
| MRC_API void MR_NewEdgesMap_Set_map | ( | MR_NewEdgesMap * | _this, |
| MR_PassBy | value_pass_by, | ||
| MR_phmap_flat_hash_map_MR_UndirectedEdgeId_int * | value ) |
maps every edge appeared during subdivision to an original edge before mesh subdivision; for splitEdges[key]=true, the value is arbitrary oriented original edge, for which key-edge is its part; for splitEdges[key]=false, the value is an original triangle Modifies a member variable of class MR::NewEdgesMap named map. 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 map. When this function is called, this object will drop object references it had previously in map.
| MRC_API void MR_NewEdgesMap_Set_splitEdges | ( | MR_NewEdgesMap * | _this, |
| MR_PassBy | value_pass_by, | ||
| MR_UndirectedEdgeBitSet * | value ) |
true here means that a subdivided edge is a part of some original edge edge before mesh subdivision; false here is both for unmodified edges and for new edges introduced within original triangles Modifies a member variable of class MR::NewEdgesMap named splitEdges. 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 splitEdges. When this function is called, this object will drop object references it had previously in splitEdges.