MeshLib Rust Docs
Loading...
Searching...
No Matches
meshlib::RemeshSettings Struct Reference
Inheritance diagram for meshlib::RemeshSettings:

Public Member Functions

auto assign_from_another (_other:&meshlib::RemeshSettings) -> &mut meshlib::RemeshSettings
auto target_edge_len () const -> &f32
auto target_edge_len_mut () -> &mut f32
void set_target_edge_len (value:f32)
auto max_edge_splits () const -> &core::ffi::c_int
auto max_edge_splits_mut () -> &mut core::ffi::c_int
void set_max_edge_splits (value:core::ffi::c_int)
auto max_angle_change_after_flip () const -> &f32
auto max_angle_change_after_flip_mut () -> &mut f32
void set_max_angle_change_after_flip (value:f32)
auto frozen_boundary () const -> &bool
auto frozen_boundary_mut () -> &mut bool
void set_frozen_boundary (value:bool)
auto max_bd_shift () const -> &f32
auto max_bd_shift_mut () -> &mut f32
void set_max_bd_shift (value:f32)
auto use_curvature () const -> &bool
auto use_curvature_mut () -> &mut bool
void set_use_curvature (value:bool)
auto max_splittable_tri_aspect_ratio () const -> &f32
auto max_splittable_tri_aspect_ratio_mut () -> &mut f32
void set_max_splittable_tri_aspect_ratio (value:f32)
auto final_relax_iters () const -> &core::ffi::c_int
auto final_relax_iters_mut () -> &mut core::ffi::c_int
void set_final_relax_iters (value:core::ffi::c_int)
auto final_relax_no_shrinkage () const -> &bool
auto final_relax_no_shrinkage_mut () -> &mut bool
void set_final_relax_no_shrinkage (value:bool)
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 pack_mesh () const -> &bool
auto pack_mesh_mut () -> &mut bool
void set_pack_mesh (value:bool)
auto project_on_original_mesh () const -> &bool
auto project_on_original_mesh_mut () -> &mut bool
void set_project_on_original_mesh (value:bool)
auto on_edge_split () const -> &meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId
auto on_edge_split_mut () -> &mut meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId
void set_on_edge_split (value:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId)
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 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 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)

Static Public Member Functions

static auto new () -> meshlib::Owned< meshlib::RemeshSettings >
static auto construct_from (targetEdgeLen:f32, maxEdgeSplits:core::ffi::c_int, maxAngleChangeAfterFlip:f32, frozenBoundary:bool, maxBdShift:f32, useCurvature:bool, maxSplittableTriAspectRatio:f32, finalRelaxIters:core::ffi::c_int, finalRelaxNoShrinkage:bool, region:Option<&mut meshlib::FaceBitSet >, notFlippable:Option<&mut meshlib::UndirectedEdgeBitSet >, packMesh:bool, projectOnOriginalMesh:bool, onEdgeSplit:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId, onEdgeDel:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId, preCollapse:&meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref, progressCallback:&meshlib::std_function_bool_from_float) -> meshlib::Owned< meshlib::RemeshSettings >
static auto construct_from_another (_other:&meshlib::RemeshSettings) -> meshlib::Owned< meshlib::RemeshSettings >
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

Detailed Description

Generated from class MR::RemeshSettings.

Generated from class MR::RemeshSettings. Heap-allocated instances are held in Owned<RemeshSettings>.

Member Function Documentation

◆ assign_from_another()

auto meshlib::RemeshSettings::assign_from_another ( _other:&meshlib::RemeshSettings ) -> &mut meshlib::RemeshSettings

Generated from method MR::RemeshSettings::operator=.

Calls MR_RemeshSettings_AssignFromAnother(). The reference to things referred to by the parameter _other (if any) might be preserved in this object.

◆ construct_from()

auto meshlib::RemeshSettings::construct_from ( targetEdgeLen:f32 ,
maxEdgeSplits:core::ffi::c_int ,
maxAngleChangeAfterFlip:f32 ,
frozenBoundary:bool ,
maxBdShift:f32 ,
useCurvature:bool ,
maxSplittableTriAspectRatio:f32 ,
finalRelaxIters:core::ffi::c_int ,
finalRelaxNoShrinkage:bool ,
region:Option<&mut meshlib::FaceBitSet > ,
notFlippable:Option<&mut meshlib::UndirectedEdgeBitSet > ,
packMesh:bool ,
projectOnOriginalMesh:bool ,
onEdgeSplit:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId ,
onEdgeDel:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId ,
preCollapse:&meshlib::std_function_bool_from_MR_EdgeId_const_MR_Vector3f_ref ,
progressCallback:&meshlib::std_function_bool_from_float  ) -> meshlib::Owned< meshlib::RemeshSettings >
static

Constructs MR::RemeshSettings elementwise.

Calls MR_RemeshSettings_ConstructFrom(). 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 onEdgeSplit 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 preCollapse might be preserved in the constructed object. The reference to the parameter progressCallback might be preserved in the constructed object.

◆ construct_from_another()

auto meshlib::RemeshSettings::construct_from_another ( _other:&meshlib::RemeshSettings ) -> meshlib::Owned< meshlib::RemeshSettings >
static

Generated from constructor MR::RemeshSettings::RemeshSettings.

Calls MR_RemeshSettings_ConstructFromAnother(). The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object.

◆ final_relax_iters()

auto meshlib::RemeshSettings::final_relax_iters ( ) const -> &core::ffi::c_int

the number of iterations of final relaxation of mesh vertices; few iterations can give almost perfect uniformity of the vertices and edge lengths but deviate from the original surface Returns a pointer to a member variable of class MR::RemeshSettings named finalRelaxIters.

Calls MR_RemeshSettings_Get_finalRelaxIters(). The reference to this object might be preserved as the return value.

◆ final_relax_iters_mut()

auto meshlib::RemeshSettings::final_relax_iters_mut ( ) -> &mut core::ffi::c_int

the number of iterations of final relaxation of mesh vertices; few iterations can give almost perfect uniformity of the vertices and edge lengths but deviate from the original surface Returns a mutable pointer to a member variable of class MR::RemeshSettings named finalRelaxIters.

Calls MR_RemeshSettings_GetMutable_finalRelaxIters(). The reference to this object might be preserved as the return value.

◆ final_relax_no_shrinkage()

auto meshlib::RemeshSettings::final_relax_no_shrinkage ( ) const -> &bool

if true prevents the surface from shrinkage after many iterations Returns a pointer to a member variable of class MR::RemeshSettings named finalRelaxNoShrinkage.

Calls MR_RemeshSettings_Get_finalRelaxNoShrinkage(). The reference to this object might be preserved as the return value.

◆ final_relax_no_shrinkage_mut()

auto meshlib::RemeshSettings::final_relax_no_shrinkage_mut ( ) -> &mut bool

if true prevents the surface from shrinkage after many iterations Returns a mutable pointer to a member variable of class MR::RemeshSettings named finalRelaxNoShrinkage.

Calls MR_RemeshSettings_GetMutable_finalRelaxNoShrinkage(). The reference to this object might be preserved as the return value.

◆ frozen_boundary()

auto meshlib::RemeshSettings::frozen_boundary ( ) const -> &bool

Allows or prohibits splitting and/or collapse boundary edges it recommended to keep default value here for better quality Returns a pointer to a member variable of class MR::RemeshSettings named frozenBoundary.

Calls MR_RemeshSettings_Get_frozenBoundary(). The reference to this object might be preserved as the return value.

◆ frozen_boundary_mut()

auto meshlib::RemeshSettings::frozen_boundary_mut ( ) -> &mut bool

Allows or prohibits splitting and/or collapse boundary edges it recommended to keep default value here for better quality Returns a mutable pointer to a member variable of class MR::RemeshSettings named frozenBoundary.

Calls MR_RemeshSettings_GetMutable_frozenBoundary(). The reference to this object might be preserved as the return value.

◆ max_angle_change_after_flip()

auto meshlib::RemeshSettings::max_angle_change_after_flip ( ) const -> &f32

Improves local mesh triangulation by doing edge flips if it does not change dihedral angle more than on this value Returns a pointer to a member variable of class MR::RemeshSettings named maxAngleChangeAfterFlip.

Calls MR_RemeshSettings_Get_maxAngleChangeAfterFlip(). The reference to this object might be preserved as the return value.

◆ max_angle_change_after_flip_mut()

auto meshlib::RemeshSettings::max_angle_change_after_flip_mut ( ) -> &mut f32

Improves local mesh triangulation by doing edge flips if it does not change dihedral angle more than on this value Returns a mutable pointer to a member variable of class MR::RemeshSettings named maxAngleChangeAfterFlip.

Calls MR_RemeshSettings_GetMutable_maxAngleChangeAfterFlip(). The reference to this object might be preserved as the return value.

◆ max_bd_shift()

auto meshlib::RemeshSettings::max_bd_shift ( ) const -> &f32

Maximal shift of a boundary during one edge collapse only makes sense if frozenBoundary=false Returns a pointer to a member variable of class MR::RemeshSettings named maxBdShift.

Calls MR_RemeshSettings_Get_maxBdShift(). The reference to this object might be preserved as the return value.

◆ max_bd_shift_mut()

auto meshlib::RemeshSettings::max_bd_shift_mut ( ) -> &mut f32

Maximal shift of a boundary during one edge collapse only makes sense if frozenBoundary=false Returns a mutable pointer to a member variable of class MR::RemeshSettings named maxBdShift.

Calls MR_RemeshSettings_GetMutable_maxBdShift(). The reference to this object might be preserved as the return value.

◆ max_edge_splits()

auto meshlib::RemeshSettings::max_edge_splits ( ) const -> &core::ffi::c_int

Maximum number of edge splits allowed during subdivision Returns a pointer to a member variable of class MR::RemeshSettings named maxEdgeSplits.

Calls MR_RemeshSettings_Get_maxEdgeSplits(). The reference to this object might be preserved as the return value.

◆ max_edge_splits_mut()

auto meshlib::RemeshSettings::max_edge_splits_mut ( ) -> &mut core::ffi::c_int

Maximum number of edge splits allowed during subdivision Returns a mutable pointer to a member variable of class MR::RemeshSettings named maxEdgeSplits.

Calls MR_RemeshSettings_GetMutable_maxEdgeSplits(). The reference to this object might be preserved as the return value.

◆ max_splittable_tri_aspect_ratio()

auto meshlib::RemeshSettings::max_splittable_tri_aspect_ratio ( ) const -> &f32

An edge is subdivided only if both its left and right triangles have aspect ratio below or equal to this value. So this is a maximum aspect ratio of a triangle that can be split on two before Delone optimization. Please set it to a smaller value only if frozenBoundary==true, otherwise many narrow triangles can appear near border Returns a pointer to a member variable of class MR::RemeshSettings named maxSplittableTriAspectRatio.

Calls MR_RemeshSettings_Get_maxSplittableTriAspectRatio(). The reference to this object might be preserved as the return value.

◆ max_splittable_tri_aspect_ratio_mut()

auto meshlib::RemeshSettings::max_splittable_tri_aspect_ratio_mut ( ) -> &mut f32

An edge is subdivided only if both its left and right triangles have aspect ratio below or equal to this value. So this is a maximum aspect ratio of a triangle that can be split on two before Delone optimization. Please set it to a smaller value only if frozenBoundary==true, otherwise many narrow triangles can appear near border Returns a mutable pointer to a member variable of class MR::RemeshSettings named maxSplittableTriAspectRatio.

Calls MR_RemeshSettings_GetMutable_maxSplittableTriAspectRatio(). The reference to this object might be preserved as the return value.

◆ new()

auto meshlib::RemeshSettings::new ( ) -> meshlib::Owned< meshlib::RemeshSettings >
static

Constructs an empty (default-constructed) instance.

Calls MR_RemeshSettings_DefaultConstruct().

◆ not_flippable()

auto meshlib::RemeshSettings::not_flippable ( ) const -> *const *mut meshlib::ffi::MR_UndirectedEdgeBitSet

Edges specified by this bit-set will never be flipped or collapsed, but they can be replaced during collapse of nearby edges so it is updated during the operation; also the vertices incident to these edges are excluded from relaxation Returns a pointer to a member variable of class MR::RemeshSettings named notFlippable.

Calls MR_RemeshSettings_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.

◆ not_flippable_mut()

auto meshlib::RemeshSettings::not_flippable_mut ( ) -> *mut *mut meshlib::ffi::MR_UndirectedEdgeBitSet

Edges specified by this bit-set will never be flipped or collapsed, but they can be replaced during collapse of nearby edges so it is updated during the operation; also the vertices incident to these edges are excluded from relaxation Returns a mutable pointer to a member variable of class MR::RemeshSettings named notFlippable.

Calls MR_RemeshSettings_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.

◆ on_edge_del()

auto meshlib::RemeshSettings::on_edge_del ( ) const -> &meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId

if valid (e1) is given then dest(e) = dest(e1) and their origins are in different ends of collapsing edge, e1 shall take the place of e Returns a pointer to a member variable of class MR::RemeshSettings named onEdgeDel.

Calls MR_RemeshSettings_Get_onEdgeDel(). The reference to this object might be preserved as the return value.

◆ on_edge_del_mut()

auto meshlib::RemeshSettings::on_edge_del_mut ( ) -> &mut meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId

if valid (e1) is given then dest(e) = dest(e1) and their origins are in different ends of collapsing edge, e1 shall take the place of e Returns a mutable pointer to a member variable of class MR::RemeshSettings named onEdgeDel.

Calls MR_RemeshSettings_GetMutable_onEdgeDel(). The reference to this object might be preserved as the return value.

◆ on_edge_split()

auto meshlib::RemeshSettings::on_edge_split ( ) const -> &meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId

this function is called each time edge (e) is split into (e1->e), but before the ring is made Delone Returns a pointer to a member variable of class MR::RemeshSettings named onEdgeSplit.

Calls MR_RemeshSettings_Get_onEdgeSplit(). The reference to this object might be preserved as the return value.

◆ on_edge_split_mut()

auto meshlib::RemeshSettings::on_edge_split_mut ( ) -> &mut meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId

this function is called each time edge (e) is split into (e1->e), but before the ring is made Delone Returns a mutable pointer to a member variable of class MR::RemeshSettings named onEdgeSplit.

Calls MR_RemeshSettings_GetMutable_onEdgeSplit(). The reference to this object might be preserved as the return value.

◆ pack_mesh()

auto meshlib::RemeshSettings::pack_mesh ( ) const -> &bool

whether to pack mesh at the end Returns a pointer to a member variable of class MR::RemeshSettings named packMesh.

Calls MR_RemeshSettings_Get_packMesh(). The reference to this object might be preserved as the return value.

◆ pack_mesh_mut()

auto meshlib::RemeshSettings::pack_mesh_mut ( ) -> &mut bool

whether to pack mesh at the end Returns a mutable pointer to a member variable of class MR::RemeshSettings named packMesh.

Calls MR_RemeshSettings_GetMutable_packMesh(). The reference to this object might be preserved as the return value.

◆ pre_collapse()

auto meshlib::RemeshSettings::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::RemeshSettings named preCollapse.

Calls MR_RemeshSettings_Get_preCollapse(). The reference to this object might be preserved as the return value.

◆ pre_collapse_mut()

auto meshlib::RemeshSettings::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::RemeshSettings named preCollapse.

Calls MR_RemeshSettings_GetMutable_preCollapse(). The reference to this object might be preserved as the return value.

◆ progress_callback()

auto meshlib::RemeshSettings::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::RemeshSettings named progressCallback.

Calls MR_RemeshSettings_Get_progressCallback(). The reference to this object might be preserved as the return value.

◆ progress_callback_mut()

auto meshlib::RemeshSettings::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::RemeshSettings named progressCallback.

Calls MR_RemeshSettings_GetMutable_progressCallback(). The reference to this object might be preserved as the return value.

◆ project_on_original_mesh()

auto meshlib::RemeshSettings::project_on_original_mesh ( ) const -> &bool

if true, then every new vertex after subdivision will be projected on the original mesh (before smoothing); this does not affect the vertices moved on other stages of the processing Returns a pointer to a member variable of class MR::RemeshSettings named projectOnOriginalMesh.

Calls MR_RemeshSettings_Get_projectOnOriginalMesh(). The reference to this object might be preserved as the return value.

◆ project_on_original_mesh_mut()

auto meshlib::RemeshSettings::project_on_original_mesh_mut ( ) -> &mut bool

if true, then every new vertex after subdivision will be projected on the original mesh (before smoothing); this does not affect the vertices moved on other stages of the processing Returns a mutable pointer to a member variable of class MR::RemeshSettings named projectOnOriginalMesh.

Calls MR_RemeshSettings_GetMutable_projectOnOriginalMesh(). The reference to this object might be preserved as the return value.

◆ region()

auto meshlib::RemeshSettings::region ( ) const -> *const *mut meshlib::ffi::MR_FaceBitSet

Region on mesh to be changed, it is updated during the operation Returns a pointer to a member variable of class MR::RemeshSettings named region.

Calls MR_RemeshSettings_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.

◆ region_mut()

auto meshlib::RemeshSettings::region_mut ( ) -> *mut *mut meshlib::ffi::MR_FaceBitSet

Region on mesh to be changed, it is updated during the operation Returns a mutable pointer to a member variable of class MR::RemeshSettings named region.

Calls MR_RemeshSettings_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.

◆ set_final_relax_iters()

void meshlib::RemeshSettings::set_final_relax_iters ( value:core::ffi::c_int )

the number of iterations of final relaxation of mesh vertices; few iterations can give almost perfect uniformity of the vertices and edge lengths but deviate from the original surface Modifies a member variable of class MR::RemeshSettings named finalRelaxIters.

Calls MR_RemeshSettings_Set_finalRelaxIters().

◆ set_final_relax_no_shrinkage()

void meshlib::RemeshSettings::set_final_relax_no_shrinkage ( value:bool )

if true prevents the surface from shrinkage after many iterations Modifies a member variable of class MR::RemeshSettings named finalRelaxNoShrinkage.

Calls MR_RemeshSettings_Set_finalRelaxNoShrinkage().

◆ set_frozen_boundary()

void meshlib::RemeshSettings::set_frozen_boundary ( value:bool )

Allows or prohibits splitting and/or collapse boundary edges it recommended to keep default value here for better quality Modifies a member variable of class MR::RemeshSettings named frozenBoundary.

Calls MR_RemeshSettings_Set_frozenBoundary().

◆ set_max_angle_change_after_flip()

void meshlib::RemeshSettings::set_max_angle_change_after_flip ( value:f32 )

Improves local mesh triangulation by doing edge flips if it does not change dihedral angle more than on this value Modifies a member variable of class MR::RemeshSettings named maxAngleChangeAfterFlip.

Calls MR_RemeshSettings_Set_maxAngleChangeAfterFlip().

◆ set_max_bd_shift()

void meshlib::RemeshSettings::set_max_bd_shift ( value:f32 )

Maximal shift of a boundary during one edge collapse only makes sense if frozenBoundary=false Modifies a member variable of class MR::RemeshSettings named maxBdShift.

Calls MR_RemeshSettings_Set_maxBdShift().

◆ set_max_edge_splits()

void meshlib::RemeshSettings::set_max_edge_splits ( value:core::ffi::c_int )

Maximum number of edge splits allowed during subdivision Modifies a member variable of class MR::RemeshSettings named maxEdgeSplits.

Calls MR_RemeshSettings_Set_maxEdgeSplits().

◆ set_max_splittable_tri_aspect_ratio()

void meshlib::RemeshSettings::set_max_splittable_tri_aspect_ratio ( value:f32 )

An edge is subdivided only if both its left and right triangles have aspect ratio below or equal to this value. So this is a maximum aspect ratio of a triangle that can be split on two before Delone optimization. Please set it to a smaller value only if frozenBoundary==true, otherwise many narrow triangles can appear near border Modifies a member variable of class MR::RemeshSettings named maxSplittableTriAspectRatio.

Calls MR_RemeshSettings_Set_maxSplittableTriAspectRatio().

◆ set_not_flippable()

void meshlib::RemeshSettings::set_not_flippable ( value:Option<&mut meshlib::UndirectedEdgeBitSet > )

Edges specified by this bit-set will never be flipped or collapsed, but they can be replaced during collapse of nearby edges so it is updated during the operation; also the vertices incident to these edges are excluded from relaxation Modifies a member variable of class MR::RemeshSettings named notFlippable.

Calls MR_RemeshSettings_Set_notFlippable(). The reference to the parameter value might be preserved in this object in element notFlippable.

◆ set_on_edge_del()

void meshlib::RemeshSettings::set_on_edge_del ( value:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId )

if valid (e1) is given then dest(e) = dest(e1) and their origins are in different ends of collapsing edge, e1 shall take the place of e Modifies a member variable of class MR::RemeshSettings named onEdgeDel.

Calls MR_RemeshSettings_Set_onEdgeDel(). The reference to the parameter value might be preserved in this object in element onEdgeDel.

◆ set_on_edge_split()

void meshlib::RemeshSettings::set_on_edge_split ( value:&meshlib::std_function_void_from_MR_EdgeId_MR_EdgeId )

this function is called each time edge (e) is split into (e1->e), but before the ring is made Delone Modifies a member variable of class MR::RemeshSettings named onEdgeSplit.

Calls MR_RemeshSettings_Set_onEdgeSplit(). The reference to the parameter value might be preserved in this object in element onEdgeSplit.

◆ set_pack_mesh()

void meshlib::RemeshSettings::set_pack_mesh ( value:bool )

whether to pack mesh at the end Modifies a member variable of class MR::RemeshSettings named packMesh.

Calls MR_RemeshSettings_Set_packMesh().

◆ set_pre_collapse()

void meshlib::RemeshSettings::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::RemeshSettings named preCollapse.

Calls MR_RemeshSettings_Set_preCollapse(). The reference to the parameter value might be preserved in this object in element preCollapse.

◆ set_progress_callback()

void meshlib::RemeshSettings::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::RemeshSettings named progressCallback.

Calls MR_RemeshSettings_Set_progressCallback(). The reference to the parameter value might be preserved in this object in element progressCallback.

◆ set_project_on_original_mesh()

void meshlib::RemeshSettings::set_project_on_original_mesh ( value:bool )

if true, then every new vertex after subdivision will be projected on the original mesh (before smoothing); this does not affect the vertices moved on other stages of the processing Modifies a member variable of class MR::RemeshSettings named projectOnOriginalMesh.

Calls MR_RemeshSettings_Set_projectOnOriginalMesh().

◆ set_region()

void meshlib::RemeshSettings::set_region ( value:Option<&mut meshlib::FaceBitSet > )

Region on mesh to be changed, it is updated during the operation Modifies a member variable of class MR::RemeshSettings named region.

Calls MR_RemeshSettings_Set_region(). The reference to the parameter value might be preserved in this object in element region.

◆ set_target_edge_len()

void meshlib::RemeshSettings::set_target_edge_len ( value:f32 )

the algorithm will try to keep the length of all edges close to this value, splitting the edges longer than targetEdgeLen, and then eliminating the edges shorter than targetEdgeLen Modifies a member variable of class MR::RemeshSettings named targetEdgeLen.

Calls MR_RemeshSettings_Set_targetEdgeLen().

◆ set_use_curvature()

void meshlib::RemeshSettings::set_use_curvature ( value:bool )

This option in subdivision works best for natural surfaces, where all triangles are close to equilateral and have similar area, and no sharp edges in between Modifies a member variable of class MR::RemeshSettings named useCurvature.

Calls MR_RemeshSettings_Set_useCurvature().

◆ target_edge_len()

auto meshlib::RemeshSettings::target_edge_len ( ) const -> &f32

the algorithm will try to keep the length of all edges close to this value, splitting the edges longer than targetEdgeLen, and then eliminating the edges shorter than targetEdgeLen Returns a pointer to a member variable of class MR::RemeshSettings named targetEdgeLen.

Calls MR_RemeshSettings_Get_targetEdgeLen(). The reference to this object might be preserved as the return value.

◆ target_edge_len_mut()

auto meshlib::RemeshSettings::target_edge_len_mut ( ) -> &mut f32

the algorithm will try to keep the length of all edges close to this value, splitting the edges longer than targetEdgeLen, and then eliminating the edges shorter than targetEdgeLen Returns a mutable pointer to a member variable of class MR::RemeshSettings named targetEdgeLen.

Calls MR_RemeshSettings_GetMutable_targetEdgeLen(). The reference to this object might be preserved as the return value.

◆ use_curvature()

auto meshlib::RemeshSettings::use_curvature ( ) const -> &bool

This option in subdivision works best for natural surfaces, where all triangles are close to equilateral and have similar area, and no sharp edges in between Returns a pointer to a member variable of class MR::RemeshSettings named useCurvature.

Calls MR_RemeshSettings_Get_useCurvature(). The reference to this object might be preserved as the return value.

◆ use_curvature_mut()

auto meshlib::RemeshSettings::use_curvature_mut ( ) -> &mut bool

This option in subdivision works best for natural surfaces, where all triangles are close to equilateral and have similar area, and no sharp edges in between Returns a mutable pointer to a member variable of class MR::RemeshSettings named useCurvature.

Calls MR_RemeshSettings_GetMutable_useCurvature(). The reference to this object might be preserved as the return value.


The documentation for this struct was generated from the following file: