Public Member Functions | |
| auto | assign_from_another (_other:&meshlib::DecimateSettings) -> &mut meshlib::DecimateSettings |
| auto | strategy () const -> &meshlib::DecimateStrategy |
| auto | strategy_mut () -> &mut meshlib::DecimateStrategy |
| void | set_strategy (value:meshlib::DecimateStrategy) |
| auto | max_error () const -> &f32 |
| auto | max_error_mut () -> &mut f32 |
| void | set_max_error (value:f32) |
| auto | max_edge_len () const -> &f32 |
| auto | max_edge_len_mut () -> &mut f32 |
| void | set_max_edge_len (value:f32) |
| auto | max_bd_shift () const -> &f32 |
| auto | max_bd_shift_mut () -> &mut f32 |
| void | set_max_bd_shift (value:f32) |
| auto | max_triangle_aspect_ratio () const -> &f32 |
| auto | max_triangle_aspect_ratio_mut () -> &mut f32 |
| void | set_max_triangle_aspect_ratio (value:f32) |
| auto | critical_tri_aspect_ratio () const -> &f32 |
| auto | critical_tri_aspect_ratio_mut () -> &mut f32 |
| void | set_critical_tri_aspect_ratio (value:f32) |
| auto | prevent_normal_flips () const -> &bool |
| auto | prevent_normal_flips_mut () -> &mut bool |
| void | set_prevent_normal_flips (value:bool) |
| auto | tiny_edge_length () const -> &f32 |
| auto | tiny_edge_length_mut () -> &mut f32 |
| void | set_tiny_edge_length (value:f32) |
| auto | stabilizer () const -> &f32 |
| auto | stabilizer_mut () -> &mut f32 |
| void | set_stabilizer (value:f32) |
| auto | angle_weighted_dist_to_plane () const -> &bool |
| auto | angle_weighted_dist_to_plane_mut () -> &mut bool |
| void | set_angle_weighted_dist_to_plane (value:bool) |
| auto | optimize_vertex_pos () const -> &bool |
| auto | optimize_vertex_pos_mut () -> &mut bool |
| void | set_optimize_vertex_pos (value:bool) |
| auto | max_deleted_vertices () const -> &core::ffi::c_int |
| auto | max_deleted_vertices_mut () -> &mut core::ffi::c_int |
| void | set_max_deleted_vertices (value:core::ffi::c_int) |
| auto | max_deleted_faces () const -> &core::ffi::c_int |
| auto | max_deleted_faces_mut () -> &mut core::ffi::c_int |
| void | set_max_deleted_faces (value:core::ffi::c_int) |
| auto | region () const -> *const *mut meshlib::ffi::MR_FaceBitSet |
| auto | region_mut () -> *mut *mut meshlib::ffi::MR_FaceBitSet |
| void | set_region (value:Option<&mut meshlib::FaceBitSet >) |
| auto | not_flippable () const -> *const *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
| auto | not_flippable_mut () -> *mut *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
| void | set_not_flippable (value:Option<&mut meshlib::UndirectedEdgeBitSet >) |
| auto | collapse_near_not_flippable () const -> &bool |
| auto | collapse_near_not_flippable_mut () -> &mut bool |
| void | set_collapse_near_not_flippable (value:bool) |
| auto | edges_to_collapse () const -> *const *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
| auto | edges_to_collapse_mut () -> *mut *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
| void | set_edges_to_collapse (value:Option<&mut meshlib::UndirectedEdgeBitSet >) |
| auto | twin_map () const -> *const *mut meshlib::ffi::MR_phmap_flat_hash_map_MR_UndirectedEdgeId_MR_UndirectedEdgeId_phmap_Hash_MR_UndirectedEdgeId_phmap_EqualTo_MR_UndirectedEdgeId_MR_Allocator_std_pair_const_MR_UndirectedEdgeId_MR_UndirectedEdgeId |
| auto | twin_map_mut () -> *mut *mut meshlib::ffi::MR_phmap_flat_hash_map_MR_UndirectedEdgeId_MR_UndirectedEdgeId_phmap_Hash_MR_UndirectedEdgeId_phmap_EqualTo_MR_UndirectedEdgeId_MR_Allocator_std_pair_const_MR_UndirectedEdgeId_MR_UndirectedEdgeId |
| void | set_twin_map (value:Option<&mut meshlib::phmap::phmap_flat_hash_map_MR_UndirectedEdgeId_MR_UndirectedEdgeId_phmap_Hash_MR_UndirectedEdgeId_phmap_EqualTo_MR_UndirectedEdgeId_MR_Allocator_std_pair_const_MR_UndirectedEdgeId_MR_UndirectedEdgeId >) |
| auto | touch_near_bd_edges () const -> &bool |
| auto | touch_near_bd_edges_mut () -> &mut bool |
| void | set_touch_near_bd_edges (value:bool) |
| auto | touch_bd_verts () const -> &bool |
| auto | touch_bd_verts_mut () -> &mut bool |
| void | set_touch_bd_verts (value:bool) |
| auto | bd_verts () const -> *const *mut meshlib::ffi::MR_VertBitSet |
| auto | bd_verts_mut () -> *mut *mut meshlib::ffi::MR_VertBitSet |
| void | set_bd_verts (value:Option<&mut meshlib::VertBitSet >) |
| auto | region_edges () const -> *const *const meshlib::ffi::MR_UndirectedEdgeBitSet |
| auto | region_edges_mut () -> *mut *const meshlib::ffi::MR_UndirectedEdgeBitSet |
| void | set_region_edges (value:Option<&meshlib::UndirectedEdgeBitSet >) |
| auto | max_angle_change () const -> &f32 |
| auto | max_angle_change_mut () -> &mut f32 |
| void | set_max_angle_change (value:f32) |
| auto | pre_collapse () const -> &meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref |
| The user can provide this optional callback that is invoked immediately before edge collapse;. | |
| auto | pre_collapse_mut () -> &mut meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref |
| The user can provide this optional callback that is invoked immediately before edge collapse;. | |
| void | set_pre_collapse (value:&meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref) |
| The user can provide this optional callback that is invoked immediately before edge collapse;. | |
| auto | adjust_collapse () const -> &meshlib::std_function_void_from_MR_UndirectedEdgeId_float_ref_MR_Vector3f_ref |
| The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position. | |
| auto | adjust_collapse_mut () -> &mut meshlib::std_function_void_from_MR_UndirectedEdgeId_float_ref_MR_Vector3f_ref |
| The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position. | |
| void | set_adjust_collapse (value:&meshlib::std_function_void_from_MR_UndirectedEdgeId_float_ref_MR_Vector3f_ref) |
| The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position. | |
| auto | on_edge_del () const -> &meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId |
| auto | on_edge_del_mut () -> &mut meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId |
| void | set_on_edge_del (value:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId) |
| auto | vert_forms () const -> *const *mut meshlib::ffi::MR_Vector_MR_QuadraticForm3f_MR_VertId |
| If not null, then vertex quadratic forms are stored there; if on input the vector is not empty then initialization is skipped in favor of values from there; on output: quadratic form for each remaining vertex is returned there. | |
| auto | vert_forms_mut () -> *mut *mut meshlib::ffi::MR_Vector_MR_QuadraticForm3f_MR_VertId |
| If not null, then vertex quadratic forms are stored there; if on input the vector is not empty then initialization is skipped in favor of values from there; on output: quadratic form for each remaining vertex is returned there. | |
| void | set_vert_forms (value:Option<&mut meshlib::Vector_MR_QuadraticForm3f_MR_VertId >) |
| If not null, then vertex quadratic forms are stored there; if on input the vector is not empty then initialization is skipped in favor of values from there; on output: quadratic form for each remaining vertex is returned there. | |
| auto | pack_mesh () const -> &bool |
| auto | pack_mesh_mut () -> &mut bool |
| void | set_pack_mesh (value:bool) |
| auto | progress_callback () const -> &meshlib::std_function_bool_from_float |
| auto | progress_callback_mut () -> &mut meshlib::std_function_bool_from_float |
| void | set_progress_callback (value:&meshlib::std_function_bool_from_float) |
| auto | subdivide_parts () const -> &core::ffi::c_int |
| auto | subdivide_parts_mut () -> &mut core::ffi::c_int |
| void | set_subdivide_parts (value:core::ffi::c_int) |
| auto | parts_mode () const -> &meshlib::DecimatePartsMode |
| auto | parts_mode_mut () -> &mut meshlib::DecimatePartsMode |
| void | set_parts_mode (value:meshlib::DecimatePartsMode) |
| auto | decimate_between_parts () const -> &bool |
| auto | decimate_between_parts_mut () -> &mut bool |
| void | set_decimate_between_parts (value:bool) |
| auto | part_faces () const -> *const *mut meshlib::ffi::MR_std_vector_MR_FaceBitSet |
| auto | part_faces_mut () -> *mut *mut meshlib::ffi::MR_std_vector_MR_FaceBitSet |
| void | set_part_faces (value:Option<&mut meshlib::std_vector_MR_FaceBitSet >) |
| auto | min_faces_in_part () const -> &core::ffi::c_int |
| auto | min_faces_in_part_mut () -> &mut core::ffi::c_int |
| void | set_min_faces_in_part (value:core::ffi::c_int) |
Static Public Member Functions | |
| static auto | new () -> meshlib::Owned< meshlib::DecimateSettings > |
| static auto | construct_from (strategy:meshlib::DecimateStrategy, maxError:f32, maxEdgeLen:f32, maxBdShift:f32, maxTriangleAspectRatio:f32, criticalTriAspectRatio:f32, preventNormalFlips:bool, tinyEdgeLength:f32, stabilizer:f32, angleWeightedDistToPlane:bool, optimizeVertexPos:bool, maxDeletedVertices:core::ffi::c_int, maxDeletedFaces:core::ffi::c_int, region:Option<&mut meshlib::FaceBitSet >, notFlippable:Option<&mut meshlib::UndirectedEdgeBitSet >, collapseNearNotFlippable:bool, edgesToCollapse:Option<&mut meshlib::UndirectedEdgeBitSet >, twinMap:Option<&mut meshlib::phmap::phmap_flat_hash_map_MR_UndirectedEdgeId_MR_UndirectedEdgeId_phmap_Hash_MR_UndirectedEdgeId_phmap_EqualTo_MR_UndirectedEdgeId_MR_Allocator_std_pair_const_MR_UndirectedEdgeId_MR_UndirectedEdgeId >, touchNearBdEdges:bool, touchBdVerts:bool, bdVerts:Option<&mut meshlib::VertBitSet >, regionEdges:Option<&meshlib::UndirectedEdgeBitSet >, maxAngleChange:f32, preCollapse:&meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref, adjustCollapse:&meshlib::std_function_void_from_MR_UndirectedEdgeId_float_ref_MR_Vector3f_ref, onEdgeDel:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId, vertForms:Option<&mut meshlib::Vector_MR_QuadraticForm3f_MR_VertId >, packMesh:bool, progressCallback:&meshlib::std_function_bool_from_float, subdivideParts:core::ffi::c_int, partsMode:meshlib::DecimatePartsMode, decimateBetweenParts:bool, partFaces:Option<&mut meshlib::std_vector_MR_FaceBitSet >, minFacesInPart:core::ffi::c_int) -> meshlib::Owned< meshlib::DecimateSettings > |
| static auto | construct_from_another (_other:&meshlib::DecimateSettings) -> meshlib::Owned< meshlib::DecimateSettings > |
| Static Public Member Functions inherited from meshlib::CppClass | |
| static void | destroy (ptr:*mut Self) |
| Static Public Member Functions inherited from meshlib::CppCopy | |
| static auto | copy (ptr:*const Self) -> *mut Self |
| auto meshlib::DecimateSettings::adjust_collapse | ( | ) | const -> &meshlib::std_function_void_from_MR_UndirectedEdgeId_float_ref_MR_Vector3f_ref |
The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position.
On input the callback gets the squared error and position computed by standard means, and callback can modify any of them. The larger the error, the later this edge will be collapsed. This callback can be called from many threads in parallel and must be thread-safe. This callback can be called many times for each edge before real collapsing, and it is important to make the same adjustment.
Returns a pointer to a member variable of class MR::DecimateSettings named adjustCollapse.
Calls MR_DecimateSettings_Get_adjustCollapse(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::adjust_collapse_mut | ( | ) | -> &mut meshlib::std_function_void_from_MR_UndirectedEdgeId_float_ref_MR_Vector3f_ref |
The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position.
On input the callback gets the squared error and position computed by standard means, and callback can modify any of them. The larger the error, the later this edge will be collapsed. This callback can be called from many threads in parallel and must be thread-safe. This callback can be called many times for each edge before real collapsing, and it is important to make the same adjustment.
Returns a mutable pointer to a member variable of class MR::DecimateSettings named adjustCollapse.
Calls MR_DecimateSettings_GetMutable_adjustCollapse(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::angle_weighted_dist_to_plane | ( | ) | const -> &bool |
if false, then quadratic error metric is equal to the sum of distances to the planes of original mesh triangles; if true, then the sum is weighted, and the weight is equal to the angle of adjacent triangle at the vertex divided on PI (to get one after summing all 3 vertices of the triangle) Returns a pointer to a member variable of class MR::DecimateSettings named angleWeightedDistToPlane.
Calls MR_DecimateSettings_Get_angleWeightedDistToPlane(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::angle_weighted_dist_to_plane_mut | ( | ) | -> &mut bool |
if false, then quadratic error metric is equal to the sum of distances to the planes of original mesh triangles; if true, then the sum is weighted, and the weight is equal to the angle of adjacent triangle at the vertex divided on PI (to get one after summing all 3 vertices of the triangle) Returns a mutable pointer to a member variable of class MR::DecimateSettings named angleWeightedDistToPlane.
Calls MR_DecimateSettings_GetMutable_angleWeightedDistToPlane(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::assign_from_another | ( | _other:&meshlib::DecimateSettings | ) | -> &mut meshlib::DecimateSettings |
Generated from method MR::DecimateSettings::operator=.
Calls MR_DecimateSettings_AssignFromAnother(). The reference to things referred to by the parameter _other (if any) might be preserved in this object.
| auto meshlib::DecimateSettings::bd_verts | ( | ) | const -> *const *mut meshlib::ffi::MR_VertBitSet |
if touchNearBdEdges=false or touchBdVerts=false then the algorithm needs to know about all boundary vertices; if the pointer is not null then boundary vertices detection is replaced with testing values in this bit-set; the algorithm updates this set if it packs the mesh Returns a pointer to a member variable of class MR::DecimateSettings named bdVerts.
Calls MR_DecimateSettings_Get_bdVerts(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::bd_verts_mut | ( | ) | -> *mut *mut meshlib::ffi::MR_VertBitSet |
if touchNearBdEdges=false or touchBdVerts=false then the algorithm needs to know about all boundary vertices; if the pointer is not null then boundary vertices detection is replaced with testing values in this bit-set; the algorithm updates this set if it packs the mesh Returns a mutable pointer to a member variable of class MR::DecimateSettings named bdVerts.
Calls MR_DecimateSettings_GetMutable_bdVerts(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::collapse_near_not_flippable | ( | ) | const -> &bool |
Whether to allow collapse of edges incident to notFlippable edges, which can move vertices of notFlippable edges unless they are fixed Returns a pointer to a member variable of class MR::DecimateSettings named collapseNearNotFlippable.
Calls MR_DecimateSettings_Get_collapseNearNotFlippable(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::collapse_near_not_flippable_mut | ( | ) | -> &mut bool |
Whether to allow collapse of edges incident to notFlippable edges, which can move vertices of notFlippable edges unless they are fixed Returns a mutable pointer to a member variable of class MR::DecimateSettings named collapseNearNotFlippable.
Calls MR_DecimateSettings_GetMutable_collapseNearNotFlippable(). The reference to this object might be preserved as the return value.
|
static |
Constructs MR::DecimateSettings elementwise.
Calls MR_DecimateSettings_ConstructFrom(). The reference to the parameter strategy might be preserved in the constructed object. The reference to the parameter region might be preserved in the constructed object. The reference to the parameter notFlippable might be preserved in the constructed object. The reference to the parameter edgesToCollapse might be preserved in the constructed object. The reference to the parameter twinMap might be preserved in the constructed object. The reference to the parameter bdVerts might be preserved in the constructed object. The reference to the parameter regionEdges might be preserved in the constructed object. The reference to the parameter preCollapse might be preserved in the constructed object. The reference to the parameter adjustCollapse might be preserved in the constructed object. The reference to the parameter onEdgeDel might be preserved in the constructed object. The reference to the parameter vertForms might be preserved in the constructed object. The reference to the parameter progressCallback might be preserved in the constructed object. The reference to the parameter partsMode might be preserved in the constructed object. The reference to the parameter partFaces might be preserved in the constructed object.
|
static |
Generated from constructor MR::DecimateSettings::DecimateSettings.
Calls MR_DecimateSettings_ConstructFromAnother(). The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object.
| auto meshlib::DecimateSettings::critical_tri_aspect_ratio | ( | ) | const -> &f32 |
the algorithm will ignore dihedral angle check if one of triangles had aspect ratio equal or more than this value; and the algorithm will permit temporary increase in aspect ratio after collapse, if before collapse one of the triangles had larger aspect ratio Returns a pointer to a member variable of class MR::DecimateSettings named criticalTriAspectRatio.
Calls MR_DecimateSettings_Get_criticalTriAspectRatio(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::critical_tri_aspect_ratio_mut | ( | ) | -> &mut f32 |
the algorithm will ignore dihedral angle check if one of triangles had aspect ratio equal or more than this value; and the algorithm will permit temporary increase in aspect ratio after collapse, if before collapse one of the triangles had larger aspect ratio Returns a mutable pointer to a member variable of class MR::DecimateSettings named criticalTriAspectRatio.
Calls MR_DecimateSettings_GetMutable_criticalTriAspectRatio(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::decimate_between_parts | ( | ) | const -> &bool |
Whether to decimate near the borders of individual parts to eliminate small edges there: as soon as two sibling nodes in the binary tree of parts are decimated, their union is decimated in parallel with other nodes, and only the border between two halves of the mesh remains for the final decimation of whole mesh region Returns a pointer to a member variable of class MR::DecimateSettings named decimateBetweenParts.
Calls MR_DecimateSettings_Get_decimateBetweenParts(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::decimate_between_parts_mut | ( | ) | -> &mut bool |
Whether to decimate near the borders of individual parts to eliminate small edges there: as soon as two sibling nodes in the binary tree of parts are decimated, their union is decimated in parallel with other nodes, and only the border between two halves of the mesh remains for the final decimation of whole mesh region Returns a mutable pointer to a member variable of class MR::DecimateSettings named decimateBetweenParts.
Calls MR_DecimateSettings_GetMutable_decimateBetweenParts(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::edges_to_collapse | ( | ) | const -> *const *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
If pointer is not null, then only edges from here can be collapsed (and some nearby edges can disappear); the algorithm updates this map during collapses, removing or replacing elements Returns a pointer to a member variable of class MR::DecimateSettings named edgesToCollapse.
Calls MR_DecimateSettings_Get_edgesToCollapse(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::edges_to_collapse_mut | ( | ) | -> *mut *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
If pointer is not null, then only edges from here can be collapsed (and some nearby edges can disappear); the algorithm updates this map during collapses, removing or replacing elements Returns a mutable pointer to a member variable of class MR::DecimateSettings named edgesToCollapse.
Calls MR_DecimateSettings_GetMutable_edgesToCollapse(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_angle_change | ( | ) | const -> &f32 |
Permit edge flips (in addition to collapsing) to improve Delone quality of the mesh if it does not change dihedral angle more than on this value (negative value prohibits any edge flips) Returns a pointer to a member variable of class MR::DecimateSettings named maxAngleChange.
Calls MR_DecimateSettings_Get_maxAngleChange(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_angle_change_mut | ( | ) | -> &mut f32 |
Permit edge flips (in addition to collapsing) to improve Delone quality of the mesh if it does not change dihedral angle more than on this value (negative value prohibits any edge flips) Returns a mutable pointer to a member variable of class MR::DecimateSettings named maxAngleChange.
Calls MR_DecimateSettings_GetMutable_maxAngleChange(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_bd_shift | ( | ) | const -> &f32 |
Maximal shift of a boundary during one edge collapse Returns a pointer to a member variable of class MR::DecimateSettings named maxBdShift.
Calls MR_DecimateSettings_Get_maxBdShift(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_bd_shift_mut | ( | ) | -> &mut f32 |
Maximal shift of a boundary during one edge collapse Returns a mutable pointer to a member variable of class MR::DecimateSettings named maxBdShift.
Calls MR_DecimateSettings_GetMutable_maxBdShift(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_deleted_faces | ( | ) | const -> &core::ffi::c_int |
Limit on the number of deleted faces Returns a pointer to a member variable of class MR::DecimateSettings named maxDeletedFaces.
Calls MR_DecimateSettings_Get_maxDeletedFaces(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_deleted_faces_mut | ( | ) | -> &mut core::ffi::c_int |
Limit on the number of deleted faces Returns a mutable pointer to a member variable of class MR::DecimateSettings named maxDeletedFaces.
Calls MR_DecimateSettings_GetMutable_maxDeletedFaces(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_deleted_vertices | ( | ) | const -> &core::ffi::c_int |
Limit on the number of deleted vertices Returns a pointer to a member variable of class MR::DecimateSettings named maxDeletedVertices.
Calls MR_DecimateSettings_Get_maxDeletedVertices(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_deleted_vertices_mut | ( | ) | -> &mut core::ffi::c_int |
Limit on the number of deleted vertices Returns a mutable pointer to a member variable of class MR::DecimateSettings named maxDeletedVertices.
Calls MR_DecimateSettings_GetMutable_maxDeletedVertices(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_edge_len | ( | ) | const -> &f32 |
Maximal possible edge length created during decimation Returns a pointer to a member variable of class MR::DecimateSettings named maxEdgeLen.
Calls MR_DecimateSettings_Get_maxEdgeLen(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_edge_len_mut | ( | ) | -> &mut f32 |
Maximal possible edge length created during decimation Returns a mutable pointer to a member variable of class MR::DecimateSettings named maxEdgeLen.
Calls MR_DecimateSettings_GetMutable_maxEdgeLen(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_error | ( | ) | const -> &f32 |
for DecimateStrategy::MinimizeError: stop the decimation as soon as the estimated distance deviation from the original mesh is more than this value for DecimateStrategy::ShortestEdgeFirst only: stop the decimation as soon as the shortest edge in the mesh is greater than this value Returns a pointer to a member variable of class MR::DecimateSettings named maxError.
Calls MR_DecimateSettings_Get_maxError(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_error_mut | ( | ) | -> &mut f32 |
for DecimateStrategy::MinimizeError: stop the decimation as soon as the estimated distance deviation from the original mesh is more than this value for DecimateStrategy::ShortestEdgeFirst only: stop the decimation as soon as the shortest edge in the mesh is greater than this value Returns a mutable pointer to a member variable of class MR::DecimateSettings named maxError.
Calls MR_DecimateSettings_GetMutable_maxError(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_triangle_aspect_ratio | ( | ) | const -> &f32 |
Maximal possible aspect ratio of a triangle introduced during decimation Returns a pointer to a member variable of class MR::DecimateSettings named maxTriangleAspectRatio.
Calls MR_DecimateSettings_Get_maxTriangleAspectRatio(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::max_triangle_aspect_ratio_mut | ( | ) | -> &mut f32 |
Maximal possible aspect ratio of a triangle introduced during decimation Returns a mutable pointer to a member variable of class MR::DecimateSettings named maxTriangleAspectRatio.
Calls MR_DecimateSettings_GetMutable_maxTriangleAspectRatio(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::min_faces_in_part | ( | ) | const -> &core::ffi::c_int |
minimum number of faces in one subdivision part for ( subdivideParts > 1 ) mode Returns a pointer to a member variable of class MR::DecimateSettings named minFacesInPart.
Calls MR_DecimateSettings_Get_minFacesInPart(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::min_faces_in_part_mut | ( | ) | -> &mut core::ffi::c_int |
minimum number of faces in one subdivision part for ( subdivideParts > 1 ) mode Returns a mutable pointer to a member variable of class MR::DecimateSettings named minFacesInPart.
Calls MR_DecimateSettings_GetMutable_minFacesInPart(). The reference to this object might be preserved as the return value.
|
static |
Constructs an empty (default-constructed) instance.
Calls MR_DecimateSettings_DefaultConstruct().
| auto meshlib::DecimateSettings::not_flippable | ( | ) | const -> *const *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
Edges specified by this bit-set will never be flipped, but they can be collapsed or replaced during collapse of nearby edges so it is updated during the operation Returns a pointer to a member variable of class MR::DecimateSettings named notFlippable.
Calls MR_DecimateSettings_Get_notFlippable(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::not_flippable_mut | ( | ) | -> *mut *mut meshlib::ffi::MR_UndirectedEdgeBitSet |
Edges specified by this bit-set will never be flipped, but they can be collapsed or replaced during collapse of nearby edges so it is updated during the operation Returns a mutable pointer to a member variable of class MR::DecimateSettings named notFlippable.
Calls MR_DecimateSettings_GetMutable_notFlippable(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::on_edge_del | ( | ) | const -> &meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId |
this function is called each time edge (del) is deleted; if valid (rem) is given then dest(del) = dest(rem) and their origins are in different ends of collapsing edge, (rem) shall take the place of (del) Returns a pointer to a member variable of class MR::DecimateSettings named onEdgeDel.
Calls MR_DecimateSettings_Get_onEdgeDel(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::on_edge_del_mut | ( | ) | -> &mut meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId |
this function is called each time edge (del) is deleted; if valid (rem) is given then dest(del) = dest(rem) and their origins are in different ends of collapsing edge, (rem) shall take the place of (del) Returns a mutable pointer to a member variable of class MR::DecimateSettings named onEdgeDel.
Calls MR_DecimateSettings_GetMutable_onEdgeDel(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::optimize_vertex_pos | ( | ) | const -> &bool |
if true then after each edge collapse the position of remaining vertex is optimized to minimize local shape change, if false then the edge is collapsed in one of its vertices, which keeps its position Returns a pointer to a member variable of class MR::DecimateSettings named optimizeVertexPos.
Calls MR_DecimateSettings_Get_optimizeVertexPos(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::optimize_vertex_pos_mut | ( | ) | -> &mut bool |
if true then after each edge collapse the position of remaining vertex is optimized to minimize local shape change, if false then the edge is collapsed in one of its vertices, which keeps its position Returns a mutable pointer to a member variable of class MR::DecimateSettings named optimizeVertexPos.
Calls MR_DecimateSettings_GetMutable_optimizeVertexPos(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::pack_mesh | ( | ) | const -> &bool |
whether to pack mesh at the end Returns a pointer to a member variable of class MR::DecimateSettings named packMesh.
Calls MR_DecimateSettings_Get_packMesh(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::pack_mesh_mut | ( | ) | -> &mut bool |
whether to pack mesh at the end Returns a mutable pointer to a member variable of class MR::DecimateSettings named packMesh.
Calls MR_DecimateSettings_GetMutable_packMesh(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::part_faces | ( | ) | const -> *const *mut meshlib::ffi::MR_std_vector_MR_FaceBitSet |
if not null, then it contains the faces of each subdivision part on input, which must not overlap, and after decimation of all parts, the region inside each part is put here; decimateBetweenParts=true or packMesh=true are not compatible with this option Returns a pointer to a member variable of class MR::DecimateSettings named partFaces.
Calls MR_DecimateSettings_Get_partFaces(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::part_faces_mut | ( | ) | -> *mut *mut meshlib::ffi::MR_std_vector_MR_FaceBitSet |
if not null, then it contains the faces of each subdivision part on input, which must not overlap, and after decimation of all parts, the region inside each part is put here; decimateBetweenParts=true or packMesh=true are not compatible with this option Returns a mutable pointer to a member variable of class MR::DecimateSettings named partFaces.
Calls MR_DecimateSettings_GetMutable_partFaces(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::parts_mode | ( | ) | const -> &meshlib::DecimatePartsMode |
how the parts are found for subdivideParts > 1; ignored if partFaces is given Returns a pointer to a member variable of class MR::DecimateSettings named partsMode.
Calls MR_DecimateSettings_Get_partsMode(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::parts_mode_mut | ( | ) | -> &mut meshlib::DecimatePartsMode |
how the parts are found for subdivideParts > 1; ignored if partFaces is given Returns a mutable pointer to a member variable of class MR::DecimateSettings named partsMode.
Calls MR_DecimateSettings_GetMutable_partsMode(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::pre_collapse | ( | ) | const -> &meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref |
The user can provide this optional callback that is invoked immediately before edge collapse;.
It receives the edge being collapsed: its destination vertex will disappear, and its origin vertex will get new position (provided as the second argument) after collapse; If the callback returns false, then the collapse is prohibited
Returns a pointer to a member variable of class MR::DecimateSettings named preCollapse.
Calls MR_DecimateSettings_Get_preCollapse(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::pre_collapse_mut | ( | ) | -> &mut meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref |
The user can provide this optional callback that is invoked immediately before edge collapse;.
It receives the edge being collapsed: its destination vertex will disappear, and its origin vertex will get new position (provided as the second argument) after collapse; If the callback returns false, then the collapse is prohibited
Returns a mutable pointer to a member variable of class MR::DecimateSettings named preCollapse.
Calls MR_DecimateSettings_GetMutable_preCollapse(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::prevent_normal_flips | ( | ) | const -> &bool |
whether to prohibit a collapse if it inverts the normal of a remaining triangle, or folds two triangles onto each other; turning it off (together with maxTriangleAspectRatio = FLT_MAX) makes decimation faster, but some triangles may appear inverted Returns a pointer to a member variable of class MR::DecimateSettings named preventNormalFlips.
Calls MR_DecimateSettings_Get_preventNormalFlips(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::prevent_normal_flips_mut | ( | ) | -> &mut bool |
whether to prohibit a collapse if it inverts the normal of a remaining triangle, or folds two triangles onto each other; turning it off (together with maxTriangleAspectRatio = FLT_MAX) makes decimation faster, but some triangles may appear inverted Returns a mutable pointer to a member variable of class MR::DecimateSettings named preventNormalFlips.
Calls MR_DecimateSettings_GetMutable_preventNormalFlips(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::progress_callback | ( | ) | const -> &meshlib::std_function_bool_from_float |
callback to report algorithm progress and cancel it by user request Returns a pointer to a member variable of class MR::DecimateSettings named progressCallback.
Calls MR_DecimateSettings_Get_progressCallback(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::progress_callback_mut | ( | ) | -> &mut meshlib::std_function_bool_from_float |
callback to report algorithm progress and cancel it by user request Returns a mutable pointer to a member variable of class MR::DecimateSettings named progressCallback.
Calls MR_DecimateSettings_GetMutable_progressCallback(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::region | ( | ) | const -> *const *mut meshlib::ffi::MR_FaceBitSet |
Region on mesh to be decimated, it is updated during the operation Returns a pointer to a member variable of class MR::DecimateSettings named region.
Calls MR_DecimateSettings_Get_region(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::region_edges | ( | ) | const -> *const *const meshlib::ffi::MR_UndirectedEdgeBitSet |
if region is not null and this pointer is not null, then it shall contain all edges incident to region faces (as returned by getIncidentEdges( topology, *region )), and the algorithm does not compute them itself Returns a pointer to a member variable of class MR::DecimateSettings named regionEdges.
Calls MR_DecimateSettings_Get_regionEdges(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::region_edges_mut | ( | ) | -> *mut *const meshlib::ffi::MR_UndirectedEdgeBitSet |
if region is not null and this pointer is not null, then it shall contain all edges incident to region faces (as returned by getIncidentEdges( topology, *region )), and the algorithm does not compute them itself Returns a mutable pointer to a member variable of class MR::DecimateSettings named regionEdges.
Calls MR_DecimateSettings_GetMutable_regionEdges(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::region_mut | ( | ) | -> *mut *mut meshlib::ffi::MR_FaceBitSet |
Region on mesh to be decimated, it is updated during the operation Returns a mutable pointer to a member variable of class MR::DecimateSettings named region.
Calls MR_DecimateSettings_GetMutable_region(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| void meshlib::DecimateSettings::set_adjust_collapse | ( | value:&meshlib::std_function_void_from_MR_UndirectedEdgeId_float_ref_MR_Vector3f_ref | ) |
The user can provide this optional callback for adjusting error introduced by this edge collapse and the collapse position.
On input the callback gets the squared error and position computed by standard means, and callback can modify any of them. The larger the error, the later this edge will be collapsed. This callback can be called from many threads in parallel and must be thread-safe. This callback can be called many times for each edge before real collapsing, and it is important to make the same adjustment.
Modifies a member variable of class MR::DecimateSettings named adjustCollapse.
Calls MR_DecimateSettings_Set_adjustCollapse(). The reference to the parameter value might be preserved in this object in element adjustCollapse.
| void meshlib::DecimateSettings::set_angle_weighted_dist_to_plane | ( | value:bool | ) |
if false, then quadratic error metric is equal to the sum of distances to the planes of original mesh triangles; if true, then the sum is weighted, and the weight is equal to the angle of adjacent triangle at the vertex divided on PI (to get one after summing all 3 vertices of the triangle) Modifies a member variable of class MR::DecimateSettings named angleWeightedDistToPlane.
Calls MR_DecimateSettings_Set_angleWeightedDistToPlane().
| void meshlib::DecimateSettings::set_bd_verts | ( | value:Option<&mut meshlib::VertBitSet > | ) |
if touchNearBdEdges=false or touchBdVerts=false then the algorithm needs to know about all boundary vertices; if the pointer is not null then boundary vertices detection is replaced with testing values in this bit-set; the algorithm updates this set if it packs the mesh Modifies a member variable of class MR::DecimateSettings named bdVerts.
Calls MR_DecimateSettings_Set_bdVerts(). The reference to the parameter value might be preserved in this object in element bdVerts.
| void meshlib::DecimateSettings::set_collapse_near_not_flippable | ( | value:bool | ) |
Whether to allow collapse of edges incident to notFlippable edges, which can move vertices of notFlippable edges unless they are fixed Modifies a member variable of class MR::DecimateSettings named collapseNearNotFlippable.
Calls MR_DecimateSettings_Set_collapseNearNotFlippable().
| void meshlib::DecimateSettings::set_critical_tri_aspect_ratio | ( | value:f32 | ) |
the algorithm will ignore dihedral angle check if one of triangles had aspect ratio equal or more than this value; and the algorithm will permit temporary increase in aspect ratio after collapse, if before collapse one of the triangles had larger aspect ratio Modifies a member variable of class MR::DecimateSettings named criticalTriAspectRatio.
Calls MR_DecimateSettings_Set_criticalTriAspectRatio().
| void meshlib::DecimateSettings::set_decimate_between_parts | ( | value:bool | ) |
Whether to decimate near the borders of individual parts to eliminate small edges there: as soon as two sibling nodes in the binary tree of parts are decimated, their union is decimated in parallel with other nodes, and only the border between two halves of the mesh remains for the final decimation of whole mesh region Modifies a member variable of class MR::DecimateSettings named decimateBetweenParts.
Calls MR_DecimateSettings_Set_decimateBetweenParts().
| void meshlib::DecimateSettings::set_edges_to_collapse | ( | value:Option<&mut meshlib::UndirectedEdgeBitSet > | ) |
If pointer is not null, then only edges from here can be collapsed (and some nearby edges can disappear); the algorithm updates this map during collapses, removing or replacing elements Modifies a member variable of class MR::DecimateSettings named edgesToCollapse.
Calls MR_DecimateSettings_Set_edgesToCollapse(). The reference to the parameter value might be preserved in this object in element edgesToCollapse.
| void meshlib::DecimateSettings::set_max_angle_change | ( | value:f32 | ) |
Permit edge flips (in addition to collapsing) to improve Delone quality of the mesh if it does not change dihedral angle more than on this value (negative value prohibits any edge flips) Modifies a member variable of class MR::DecimateSettings named maxAngleChange.
Calls MR_DecimateSettings_Set_maxAngleChange().
| void meshlib::DecimateSettings::set_max_bd_shift | ( | value:f32 | ) |
Maximal shift of a boundary during one edge collapse Modifies a member variable of class MR::DecimateSettings named maxBdShift.
Calls MR_DecimateSettings_Set_maxBdShift().
| void meshlib::DecimateSettings::set_max_deleted_faces | ( | value:core::ffi::c_int | ) |
Limit on the number of deleted faces Modifies a member variable of class MR::DecimateSettings named maxDeletedFaces.
Calls MR_DecimateSettings_Set_maxDeletedFaces().
| void meshlib::DecimateSettings::set_max_deleted_vertices | ( | value:core::ffi::c_int | ) |
Limit on the number of deleted vertices Modifies a member variable of class MR::DecimateSettings named maxDeletedVertices.
Calls MR_DecimateSettings_Set_maxDeletedVertices().
| void meshlib::DecimateSettings::set_max_edge_len | ( | value:f32 | ) |
Maximal possible edge length created during decimation Modifies a member variable of class MR::DecimateSettings named maxEdgeLen.
Calls MR_DecimateSettings_Set_maxEdgeLen().
| void meshlib::DecimateSettings::set_max_error | ( | value:f32 | ) |
for DecimateStrategy::MinimizeError: stop the decimation as soon as the estimated distance deviation from the original mesh is more than this value for DecimateStrategy::ShortestEdgeFirst only: stop the decimation as soon as the shortest edge in the mesh is greater than this value Modifies a member variable of class MR::DecimateSettings named maxError.
Calls MR_DecimateSettings_Set_maxError().
| void meshlib::DecimateSettings::set_max_triangle_aspect_ratio | ( | value:f32 | ) |
Maximal possible aspect ratio of a triangle introduced during decimation Modifies a member variable of class MR::DecimateSettings named maxTriangleAspectRatio.
Calls MR_DecimateSettings_Set_maxTriangleAspectRatio().
| void meshlib::DecimateSettings::set_min_faces_in_part | ( | value:core::ffi::c_int | ) |
minimum number of faces in one subdivision part for ( subdivideParts > 1 ) mode Modifies a member variable of class MR::DecimateSettings named minFacesInPart.
Calls MR_DecimateSettings_Set_minFacesInPart().
| void meshlib::DecimateSettings::set_not_flippable | ( | value:Option<&mut meshlib::UndirectedEdgeBitSet > | ) |
Edges specified by this bit-set will never be flipped, but they can be collapsed or replaced during collapse of nearby edges so it is updated during the operation Modifies a member variable of class MR::DecimateSettings named notFlippable.
Calls MR_DecimateSettings_Set_notFlippable(). The reference to the parameter value might be preserved in this object in element notFlippable.
| void meshlib::DecimateSettings::set_on_edge_del | ( | value:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId | ) |
this function is called each time edge (del) is deleted; if valid (rem) is given then dest(del) = dest(rem) and their origins are in different ends of collapsing edge, (rem) shall take the place of (del) Modifies a member variable of class MR::DecimateSettings named onEdgeDel.
Calls MR_DecimateSettings_Set_onEdgeDel(). The reference to the parameter value might be preserved in this object in element onEdgeDel.
| void meshlib::DecimateSettings::set_optimize_vertex_pos | ( | value:bool | ) |
if true then after each edge collapse the position of remaining vertex is optimized to minimize local shape change, if false then the edge is collapsed in one of its vertices, which keeps its position Modifies a member variable of class MR::DecimateSettings named optimizeVertexPos.
Calls MR_DecimateSettings_Set_optimizeVertexPos().
| void meshlib::DecimateSettings::set_pack_mesh | ( | value:bool | ) |
whether to pack mesh at the end Modifies a member variable of class MR::DecimateSettings named packMesh.
Calls MR_DecimateSettings_Set_packMesh().
| void meshlib::DecimateSettings::set_part_faces | ( | value:Option<&mut meshlib::std_vector_MR_FaceBitSet > | ) |
if not null, then it contains the faces of each subdivision part on input, which must not overlap, and after decimation of all parts, the region inside each part is put here; decimateBetweenParts=true or packMesh=true are not compatible with this option Modifies a member variable of class MR::DecimateSettings named partFaces.
Calls MR_DecimateSettings_Set_partFaces(). The reference to the parameter value might be preserved in this object in element partFaces.
| void meshlib::DecimateSettings::set_parts_mode | ( | value:meshlib::DecimatePartsMode | ) |
how the parts are found for subdivideParts > 1; ignored if partFaces is given Modifies a member variable of class MR::DecimateSettings named partsMode.
Calls MR_DecimateSettings_Set_partsMode(). The reference to the parameter value might be preserved in this object in element partsMode.
| void meshlib::DecimateSettings::set_pre_collapse | ( | value:&meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref | ) |
The user can provide this optional callback that is invoked immediately before edge collapse;.
It receives the edge being collapsed: its destination vertex will disappear, and its origin vertex will get new position (provided as the second argument) after collapse; If the callback returns false, then the collapse is prohibited
Modifies a member variable of class MR::DecimateSettings named preCollapse.
Calls MR_DecimateSettings_Set_preCollapse(). The reference to the parameter value might be preserved in this object in element preCollapse.
| void meshlib::DecimateSettings::set_prevent_normal_flips | ( | value:bool | ) |
whether to prohibit a collapse if it inverts the normal of a remaining triangle, or folds two triangles onto each other; turning it off (together with maxTriangleAspectRatio = FLT_MAX) makes decimation faster, but some triangles may appear inverted Modifies a member variable of class MR::DecimateSettings named preventNormalFlips.
Calls MR_DecimateSettings_Set_preventNormalFlips().
| void meshlib::DecimateSettings::set_progress_callback | ( | value:&meshlib::std_function_bool_from_float | ) |
callback to report algorithm progress and cancel it by user request Modifies a member variable of class MR::DecimateSettings named progressCallback.
Calls MR_DecimateSettings_Set_progressCallback(). The reference to the parameter value might be preserved in this object in element progressCallback.
| void meshlib::DecimateSettings::set_region | ( | value:Option<&mut meshlib::FaceBitSet > | ) |
Region on mesh to be decimated, it is updated during the operation Modifies a member variable of class MR::DecimateSettings named region.
Calls MR_DecimateSettings_Set_region(). The reference to the parameter value might be preserved in this object in element region.
| void meshlib::DecimateSettings::set_region_edges | ( | value:Option<&meshlib::UndirectedEdgeBitSet > | ) |
if region is not null and this pointer is not null, then it shall contain all edges incident to region faces (as returned by getIncidentEdges( topology, *region )), and the algorithm does not compute them itself Modifies a member variable of class MR::DecimateSettings named regionEdges.
Calls MR_DecimateSettings_Set_regionEdges(). The reference to the parameter value might be preserved in this object in element regionEdges.
| void meshlib::DecimateSettings::set_stabilizer | ( | value:f32 | ) |
Small stabilizer is important to achieve good results on completely planar mesh parts, if your mesh is not-planer everywhere, then you can set it to zero Modifies a member variable of class MR::DecimateSettings named stabilizer.
Calls MR_DecimateSettings_Set_stabilizer().
| void meshlib::DecimateSettings::set_strategy | ( | value:meshlib::DecimateStrategy | ) |
Modifies a member variable of class MR::DecimateSettings named strategy.
Calls MR_DecimateSettings_Set_strategy(). The reference to the parameter value might be preserved in this object in element strategy.
| void meshlib::DecimateSettings::set_subdivide_parts | ( | value:core::ffi::c_int | ) |
If this value is more than 1, then virtually subdivides the mesh on given number of parts to process them in parallel (using many threads); IMPORTANT: with default partsMode, please call mesh.packOptimally() before calling decimating with subdivideParts > 1, otherwise performance will be bad Modifies a member variable of class MR::DecimateSettings named subdivideParts.
Calls MR_DecimateSettings_Set_subdivideParts().
| void meshlib::DecimateSettings::set_tiny_edge_length | ( | value:f32 | ) |
edges not longer than this value will be collapsed even if it results in appearance of a triangle with high aspect ratio Modifies a member variable of class MR::DecimateSettings named tinyEdgeLength.
Calls MR_DecimateSettings_Set_tinyEdgeLength().
| void meshlib::DecimateSettings::set_touch_bd_verts | ( | value:bool | ) |
touchBdVerts=true: allow moving and eliminating boundary vertices during edge collapses; touchBdVerts=false: allow only collapsing an edge having only one boundary vertex in that vertex, so position and count of boundary vertices do not change; this setting is ignored if touchNearBdEdges=false Modifies a member variable of class MR::DecimateSettings named touchBdVerts.
Calls MR_DecimateSettings_Set_touchBdVerts().
| void meshlib::DecimateSettings::set_touch_near_bd_edges | ( | value:bool | ) |
Whether to allow collapsing or flipping edges having at least one vertex on (region) boundary Modifies a member variable of class MR::DecimateSettings named touchNearBdEdges.
Calls MR_DecimateSettings_Set_touchNearBdEdges().
| void meshlib::DecimateSettings::set_twin_map | ( | value:Option<&mut meshlib::phmap::phmap_flat_hash_map_MR_UndirectedEdgeId_MR_UndirectedEdgeId_phmap_Hash_MR_UndirectedEdgeId_phmap_EqualTo_MR_UndirectedEdgeId_MR_Allocator_std_pair_const_MR_UndirectedEdgeId_MR_UndirectedEdgeId > | ) |
if an edge present as a key in this map is flipped or collapsed, then same happens to the value-edge (with same collapse position); the algorithm updates this map during collapses, removing or replacing elements Modifies a member variable of class MR::DecimateSettings named twinMap.
Calls MR_DecimateSettings_Set_twinMap(). The reference to the parameter value might be preserved in this object in element twinMap.
| void meshlib::DecimateSettings::set_vert_forms | ( | value:Option<&mut meshlib::Vector_MR_QuadraticForm3f_MR_VertId > | ) |
If not null, then vertex quadratic forms are stored there; if on input the vector is not empty then initialization is skipped in favor of values from there; on output: quadratic form for each remaining vertex is returned there.
Modifies a member variable of class MR::DecimateSettings named vertForms.
Calls MR_DecimateSettings_Set_vertForms(). The reference to the parameter value might be preserved in this object in element vertForms.
| auto meshlib::DecimateSettings::stabilizer | ( | ) | const -> &f32 |
Small stabilizer is important to achieve good results on completely planar mesh parts, if your mesh is not-planer everywhere, then you can set it to zero Returns a pointer to a member variable of class MR::DecimateSettings named stabilizer.
Calls MR_DecimateSettings_Get_stabilizer(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::stabilizer_mut | ( | ) | -> &mut f32 |
Small stabilizer is important to achieve good results on completely planar mesh parts, if your mesh is not-planer everywhere, then you can set it to zero Returns a mutable pointer to a member variable of class MR::DecimateSettings named stabilizer.
Calls MR_DecimateSettings_GetMutable_stabilizer(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::strategy | ( | ) | const -> &meshlib::DecimateStrategy |
Returns a pointer to a member variable of class MR::DecimateSettings named strategy.
Calls MR_DecimateSettings_Get_strategy(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::strategy_mut | ( | ) | -> &mut meshlib::DecimateStrategy |
Returns a mutable pointer to a member variable of class MR::DecimateSettings named strategy.
Calls MR_DecimateSettings_GetMutable_strategy(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::subdivide_parts | ( | ) | const -> &core::ffi::c_int |
If this value is more than 1, then virtually subdivides the mesh on given number of parts to process them in parallel (using many threads); IMPORTANT: with default partsMode, please call mesh.packOptimally() before calling decimating with subdivideParts > 1, otherwise performance will be bad Returns a pointer to a member variable of class MR::DecimateSettings named subdivideParts.
Calls MR_DecimateSettings_Get_subdivideParts(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::subdivide_parts_mut | ( | ) | -> &mut core::ffi::c_int |
If this value is more than 1, then virtually subdivides the mesh on given number of parts to process them in parallel (using many threads); IMPORTANT: with default partsMode, please call mesh.packOptimally() before calling decimating with subdivideParts > 1, otherwise performance will be bad Returns a mutable pointer to a member variable of class MR::DecimateSettings named subdivideParts.
Calls MR_DecimateSettings_GetMutable_subdivideParts(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::tiny_edge_length | ( | ) | const -> &f32 |
edges not longer than this value will be collapsed even if it results in appearance of a triangle with high aspect ratio Returns a pointer to a member variable of class MR::DecimateSettings named tinyEdgeLength.
Calls MR_DecimateSettings_Get_tinyEdgeLength(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::tiny_edge_length_mut | ( | ) | -> &mut f32 |
edges not longer than this value will be collapsed even if it results in appearance of a triangle with high aspect ratio Returns a mutable pointer to a member variable of class MR::DecimateSettings named tinyEdgeLength.
Calls MR_DecimateSettings_GetMutable_tinyEdgeLength(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::touch_bd_verts | ( | ) | const -> &bool |
touchBdVerts=true: allow moving and eliminating boundary vertices during edge collapses; touchBdVerts=false: allow only collapsing an edge having only one boundary vertex in that vertex, so position and count of boundary vertices do not change; this setting is ignored if touchNearBdEdges=false Returns a pointer to a member variable of class MR::DecimateSettings named touchBdVerts.
Calls MR_DecimateSettings_Get_touchBdVerts(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::touch_bd_verts_mut | ( | ) | -> &mut bool |
touchBdVerts=true: allow moving and eliminating boundary vertices during edge collapses; touchBdVerts=false: allow only collapsing an edge having only one boundary vertex in that vertex, so position and count of boundary vertices do not change; this setting is ignored if touchNearBdEdges=false Returns a mutable pointer to a member variable of class MR::DecimateSettings named touchBdVerts.
Calls MR_DecimateSettings_GetMutable_touchBdVerts(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::touch_near_bd_edges | ( | ) | const -> &bool |
Whether to allow collapsing or flipping edges having at least one vertex on (region) boundary Returns a pointer to a member variable of class MR::DecimateSettings named touchNearBdEdges.
Calls MR_DecimateSettings_Get_touchNearBdEdges(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::touch_near_bd_edges_mut | ( | ) | -> &mut bool |
Whether to allow collapsing or flipping edges having at least one vertex on (region) boundary Returns a mutable pointer to a member variable of class MR::DecimateSettings named touchNearBdEdges.
Calls MR_DecimateSettings_GetMutable_touchNearBdEdges(). The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::twin_map | ( | ) | const -> *const *mut meshlib::ffi::MR_phmap_flat_hash_map_MR_UndirectedEdgeId_MR_UndirectedEdgeId_phmap_Hash_MR_UndirectedEdgeId_phmap_EqualTo_MR_UndirectedEdgeId_MR_Allocator_std_pair_const_MR_UndirectedEdgeId_MR_UndirectedEdgeId |
if an edge present as a key in this map is flipped or collapsed, then same happens to the value-edge (with same collapse position); the algorithm updates this map during collapses, removing or replacing elements Returns a pointer to a member variable of class MR::DecimateSettings named twinMap.
Calls MR_DecimateSettings_Get_twinMap(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::twin_map_mut | ( | ) | -> *mut *mut meshlib::ffi::MR_phmap_flat_hash_map_MR_UndirectedEdgeId_MR_UndirectedEdgeId_phmap_Hash_MR_UndirectedEdgeId_phmap_EqualTo_MR_UndirectedEdgeId_MR_Allocator_std_pair_const_MR_UndirectedEdgeId_MR_UndirectedEdgeId |
if an edge present as a key in this map is flipped or collapsed, then same happens to the value-edge (with same collapse position); the algorithm updates this map during collapses, removing or replacing elements Returns a mutable pointer to a member variable of class MR::DecimateSettings named twinMap.
Calls MR_DecimateSettings_GetMutable_twinMap(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::vert_forms | ( | ) | const -> *const *mut meshlib::ffi::MR_Vector_MR_QuadraticForm3f_MR_VertId |
If not null, then vertex quadratic forms are stored there; if on input the vector is not empty then initialization is skipped in favor of values from there; on output: quadratic form for each remaining vertex is returned there.
Returns a pointer to a member variable of class MR::DecimateSettings named vertForms.
Calls MR_DecimateSettings_Get_vertForms(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.
| auto meshlib::DecimateSettings::vert_forms_mut | ( | ) | -> *mut *mut meshlib::ffi::MR_Vector_MR_QuadraticForm3f_MR_VertId |
If not null, then vertex quadratic forms are stored there; if on input the vector is not empty then initialization is skipped in favor of values from there; on output: quadratic form for each remaining vertex is returned there.
Returns a mutable pointer to a member variable of class MR::DecimateSettings named vertForms.
Calls MR_DecimateSettings_GetMutable_vertForms(). Some types are raw C types, see the C bindings for the details. The reference to this object might be preserved as the return value.