Go to the source code of this file.
Typedefs | |
typedef struct MR_FaceBitSet | MR_FaceBitSet |
typedef struct MR_Mesh | MR_Mesh |
typedef struct MR_Plane3f | MR_Plane3f |
typedef struct MR_UndirectedEdgeBitSet | MR_UndirectedEdgeBitSet |
typedef struct MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId | MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId |
typedef struct MR_std_function_void_from_MR_EdgeId_MR_EdgeId_float | MR_std_function_void_from_MR_EdgeId_MR_EdgeId_float |
typedef struct MR_std_vector_std_vector_MR_EdgeId | MR_std_vector_std_vector_MR_EdgeId |
typedef struct MR_TrimWithPlaneParams | MR_TrimWithPlaneParams |
Generated from class MR::TrimWithPlaneParams . | |
typedef struct MR_TrimOptionalOutput | MR_TrimOptionalOutput |
Generated from class MR::TrimOptionalOutput . | |
typedef struct MR_FaceBitSet MR_FaceBitSet |
typedef struct MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId |
typedef struct MR_Plane3f MR_Plane3f |
typedef struct MR_std_function_void_from_MR_EdgeId_MR_EdgeId_float MR_std_function_void_from_MR_EdgeId_MR_EdgeId_float |
typedef struct MR_TrimOptionalOutput MR_TrimOptionalOutput |
Generated from class MR::TrimOptionalOutput
.
typedef struct MR_TrimWithPlaneParams MR_TrimWithPlaneParams |
Generated from class MR::TrimWithPlaneParams
.
typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet |
MRC_API MR_FaceBitSet * MR_subdivideWithPlane_5 | ( | MR_Mesh * | mesh, |
const MR_Plane3f * | plane, | ||
MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId * | new2Old, | ||
const float * | eps, | ||
MR_PassBy | onEdgeSplitCallback_pass_by, | ||
MR_std_function_void_from_MR_EdgeId_MR_EdgeId_float * | onEdgeSplitCallback ) |
subdivides all triangles intersected by given plane, leaving smaller triangles that only touch the plane;
new2Old | receive mapping from newly appeared triangle to its original triangle (part to full) |
eps | if existing vertex is within eps distance from the plane, then move the vertex not introducing new ones |
onEdgeSplitCallback | is invoked each time when an edge is split. Receives edge ID before split, edge ID after split, and weight of the origin vertex Generated from function MR::subdivideWithPlane . Parameter mesh can not be null. It is a single object. Parameter plane can not be null. It is a single object. Parameter new2Old defaults to a null pointer in C++. Parameter eps has a default argument: 0 , pass a null pointer to use it. Parameter onEdgeSplitCallback has a default argument: nullptr , pass MR_PassBy_DefaultArgument and a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_FaceBitSet_Destroy() to free it when you're done using it. |
MRC_API MR_TrimOptionalOutput * MR_TrimOptionalOutput_AssignFromAnother | ( | MR_TrimOptionalOutput * | _this, |
const MR_TrimOptionalOutput * | _other ) |
Generated from a method of class MR::TrimOptionalOutput
named operator=
. Parameter _this
can not be null. It is a single object. Parameter _other
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_TrimOptionalOutput * MR_TrimOptionalOutput_ConstructFrom | ( | MR_UndirectedEdgeBitSet * | outCutEdges, |
MR_std_vector_std_vector_MR_EdgeId * | outCutContours, | ||
MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId * | new2Old, | ||
MR_Mesh * | otherPart, | ||
MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId * | otherNew2Old, | ||
MR_std_vector_std_vector_MR_EdgeId * | otherOutCutContours ) |
Constructs MR::TrimOptionalOutput
elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_TrimOptionalOutput_Destroy()
to free it when you're done using it.
MRC_API MR_TrimOptionalOutput * MR_TrimOptionalOutput_ConstructFromAnother | ( | const MR_TrimOptionalOutput * | _other | ) |
Generated from a constructor of class MR::TrimOptionalOutput
. Parameter _other
can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_TrimOptionalOutput_Destroy()
to free it when you're done using it.
MRC_API MR_TrimOptionalOutput * MR_TrimOptionalOutput_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_TrimOptionalOutput_Destroy()
to free it when you're done using it.
MRC_API MR_TrimOptionalOutput * MR_TrimOptionalOutput_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_TrimOptionalOutput_DestroyArray()
. Use MR_TrimOptionalOutput_OffsetMutablePtr()
and MR_TrimOptionalOutput_OffsetPtr()
to access the array elements.
MRC_API void MR_TrimOptionalOutput_Destroy | ( | const MR_TrimOptionalOutput * | _this | ) |
Destroys a heap-allocated instance of MR_TrimOptionalOutput
. Does nothing if the pointer is null.
MRC_API void MR_TrimOptionalOutput_DestroyArray | ( | const MR_TrimOptionalOutput * | _this | ) |
Destroys a heap-allocated array of MR_TrimOptionalOutput
. Does nothing if the pointer is null.
MRC_API MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId *const * MR_TrimOptionalOutput_Get_new2Old | ( | const MR_TrimOptionalOutput * | _this | ) |
Returns a pointer to a member variable of class MR::TrimOptionalOutput
named new2Old
. 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_FaceId_MR_FaceId *const * MR_TrimOptionalOutput_Get_otherNew2Old | ( | const MR_TrimOptionalOutput * | _this | ) |
Returns a pointer to a member variable of class MR::TrimOptionalOutput
named otherNew2Old
. 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 *const * MR_TrimOptionalOutput_Get_otherOutCutContours | ( | const MR_TrimOptionalOutput * | _this | ) |
Returns a pointer to a member variable of class MR::TrimOptionalOutput
named otherOutCutContours
. 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_Mesh *const * MR_TrimOptionalOutput_Get_otherPart | ( | const MR_TrimOptionalOutput * | _this | ) |
Returns a pointer to a member variable of class MR::TrimOptionalOutput
named otherPart
. 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 *const * MR_TrimOptionalOutput_Get_outCutContours | ( | const MR_TrimOptionalOutput * | _this | ) |
Returns a pointer to a member variable of class MR::TrimOptionalOutput
named outCutContours
. 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 *const * MR_TrimOptionalOutput_Get_outCutEdges | ( | const MR_TrimOptionalOutput * | _this | ) |
Returns a pointer to a member variable of class MR::TrimOptionalOutput
named outCutEdges
. 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_FaceId_MR_FaceId ** MR_TrimOptionalOutput_GetMutable_new2Old | ( | MR_TrimOptionalOutput * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimOptionalOutput
named new2Old
. 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_FaceId_MR_FaceId ** MR_TrimOptionalOutput_GetMutable_otherNew2Old | ( | MR_TrimOptionalOutput * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimOptionalOutput
named otherNew2Old
. 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_TrimOptionalOutput_GetMutable_otherOutCutContours | ( | MR_TrimOptionalOutput * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimOptionalOutput
named otherOutCutContours
. 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_Mesh ** MR_TrimOptionalOutput_GetMutable_otherPart | ( | MR_TrimOptionalOutput * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimOptionalOutput
named otherPart
. 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_TrimOptionalOutput_GetMutable_outCutContours | ( | MR_TrimOptionalOutput * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimOptionalOutput
named outCutContours
. 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_TrimOptionalOutput_GetMutable_outCutEdges | ( | MR_TrimOptionalOutput * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimOptionalOutput
named outCutEdges
. 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_TrimOptionalOutput * MR_TrimOptionalOutput_OffsetMutablePtr | ( | MR_TrimOptionalOutput * | 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_TrimOptionalOutput * MR_TrimOptionalOutput_OffsetPtr | ( | const MR_TrimOptionalOutput * | 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 void MR_TrimOptionalOutput_Set_new2Old | ( | MR_TrimOptionalOutput * | _this, |
MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId * | value ) |
Modifies a member variable of class MR::TrimOptionalOutput
named new2Old
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_TrimOptionalOutput_Set_otherNew2Old | ( | MR_TrimOptionalOutput * | _this, |
MR_phmap_flat_hash_map_MR_FaceId_MR_FaceId * | value ) |
Modifies a member variable of class MR::TrimOptionalOutput
named otherNew2Old
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_TrimOptionalOutput_Set_otherOutCutContours | ( | MR_TrimOptionalOutput * | _this, |
MR_std_vector_std_vector_MR_EdgeId * | value ) |
Modifies a member variable of class MR::TrimOptionalOutput
named otherOutCutContours
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_TrimOptionalOutput_Set_otherPart | ( | MR_TrimOptionalOutput * | _this, |
MR_Mesh * | value ) |
Modifies a member variable of class MR::TrimOptionalOutput
named otherPart
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_TrimOptionalOutput_Set_outCutContours | ( | MR_TrimOptionalOutput * | _this, |
MR_std_vector_std_vector_MR_EdgeId * | value ) |
Modifies a member variable of class MR::TrimOptionalOutput
named outCutContours
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_TrimOptionalOutput_Set_outCutEdges | ( | MR_TrimOptionalOutput * | _this, |
MR_UndirectedEdgeBitSet * | value ) |
Modifies a member variable of class MR::TrimOptionalOutput
named outCutEdges
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_trimWithPlane_MR_Mesh | ( | MR_Mesh * | mesh, |
const MR_TrimWithPlaneParams * | params, | ||
const MR_TrimOptionalOutput * | optOut ) |
trim mesh by plane
This function cuts mesh with plane, leaving only part of mesh that lay in positive direction of normal
mesh | Input mesh that will be cut |
params | stores basic params for trimWithPlane function |
optOut | stores optional output params for trimWithPlane function Generated from function MR::trimWithPlane . Parameter mesh can not be null. It is a single object. Parameter params can not be null. It is a single object. Parameter optOut is a single object. Parameter optOut has a default argument: {} , pass a null pointer to use it. |
MRC_API MR_TrimWithPlaneParams * MR_TrimWithPlaneParams_AssignFromAnother | ( | MR_TrimWithPlaneParams * | _this, |
MR_PassBy | _other_pass_by, | ||
MR_TrimWithPlaneParams * | _other ) |
Generated from a method of class MR::TrimWithPlaneParams
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.
MRC_API MR_TrimWithPlaneParams * MR_TrimWithPlaneParams_ConstructFrom | ( | const MR_Plane3f * | plane, |
float | eps, | ||
MR_PassBy | onEdgeSplitCallback_pass_by, | ||
MR_std_function_void_from_MR_EdgeId_MR_EdgeId_float * | onEdgeSplitCallback ) |
Constructs MR::TrimWithPlaneParams
elementwise. Parameter plane
can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_TrimWithPlaneParams_Destroy()
to free it when you're done using it.
MRC_API MR_TrimWithPlaneParams * MR_TrimWithPlaneParams_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, |
MR_TrimWithPlaneParams * | _other ) |
Generated from a constructor of class MR::TrimWithPlaneParams
. Never returns null. Returns an instance allocated on the heap! Must call MR_TrimWithPlaneParams_Destroy()
to free it when you're done using it.
MRC_API MR_TrimWithPlaneParams * MR_TrimWithPlaneParams_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_TrimWithPlaneParams_Destroy()
to free it when you're done using it.
MRC_API MR_TrimWithPlaneParams * MR_TrimWithPlaneParams_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_TrimWithPlaneParams_DestroyArray()
. Use MR_TrimWithPlaneParams_OffsetMutablePtr()
and MR_TrimWithPlaneParams_OffsetPtr()
to access the array elements.
MRC_API void MR_TrimWithPlaneParams_Destroy | ( | const MR_TrimWithPlaneParams * | _this | ) |
Destroys a heap-allocated instance of MR_TrimWithPlaneParams
. Does nothing if the pointer is null.
MRC_API void MR_TrimWithPlaneParams_DestroyArray | ( | const MR_TrimWithPlaneParams * | _this | ) |
Destroys a heap-allocated array of MR_TrimWithPlaneParams
. Does nothing if the pointer is null.
MRC_API const float * MR_TrimWithPlaneParams_Get_eps | ( | const MR_TrimWithPlaneParams * | _this | ) |
Returns a pointer to a member variable of class MR::TrimWithPlaneParams
named eps
. 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_function_void_from_MR_EdgeId_MR_EdgeId_float * MR_TrimWithPlaneParams_Get_onEdgeSplitCallback | ( | const MR_TrimWithPlaneParams * | _this | ) |
Returns a pointer to a member variable of class MR::TrimWithPlaneParams
named onEdgeSplitCallback
. 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_Plane3f * MR_TrimWithPlaneParams_Get_plane | ( | const MR_TrimWithPlaneParams * | _this | ) |
Returns a pointer to a member variable of class MR::TrimWithPlaneParams
named plane
. 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 float * MR_TrimWithPlaneParams_GetMutable_eps | ( | MR_TrimWithPlaneParams * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimWithPlaneParams
named eps
. 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_function_void_from_MR_EdgeId_MR_EdgeId_float * MR_TrimWithPlaneParams_GetMutable_onEdgeSplitCallback | ( | MR_TrimWithPlaneParams * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimWithPlaneParams
named onEdgeSplitCallback
. 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_Plane3f * MR_TrimWithPlaneParams_GetMutable_plane | ( | MR_TrimWithPlaneParams * | _this | ) |
Returns a mutable pointer to a member variable of class MR::TrimWithPlaneParams
named plane
. 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_TrimWithPlaneParams * MR_TrimWithPlaneParams_OffsetMutablePtr | ( | MR_TrimWithPlaneParams * | 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_TrimWithPlaneParams * MR_TrimWithPlaneParams_OffsetPtr | ( | const MR_TrimWithPlaneParams * | 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 void MR_TrimWithPlaneParams_Set_eps | ( | MR_TrimWithPlaneParams * | _this, |
float | value ) |
Modifies a member variable of class MR::TrimWithPlaneParams
named eps
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_TrimWithPlaneParams_Set_onEdgeSplitCallback | ( | MR_TrimWithPlaneParams * | _this, |
MR_PassBy | value_pass_by, | ||
MR_std_function_void_from_MR_EdgeId_MR_EdgeId_float * | value ) |
Modifies a member variable of class MR::TrimWithPlaneParams
named onEdgeSplitCallback
. Parameter _this
can not be null. It is a single object.
MRC_API void MR_TrimWithPlaneParams_Set_plane | ( | MR_TrimWithPlaneParams * | _this, |
const MR_Plane3f * | value ) |
Modifies a member variable of class MR::TrimWithPlaneParams
named plane
. Parameter _this
can not be null. It is a single object. Parameter value
can not be null. It is a single object.