MeshLib Rust Docs
Loading...
Searching...
No Matches
meshlib::nesting Namespace Reference

Classes

struct  BoxNestingCorner
struct  BoxNestingOptions
struct  BoxNestingParams
struct  IBoxNestingPriority
struct  MeshXf
struct  Nesting3mfParams
struct  NestingBaseParams
struct  NestingResult
struct  SequentialNester
struct  TetrisDensifyOptions
struct  TetrisDensifyParams

Functions

auto export_nesting3mf (path:&str, params:&meshlib::nesting::Nesting3mfParams) -> meshlib::Owned< meshlib::expected_void_std_string >
auto get_nest_postion_min_priority_metric (nest:&meshlib::Box3f) -> meshlib::Owned< meshlib::std_shared_ptr_MR_Nesting_IBoxNestingPriority >
auto get_neighborig_density_priority_metric (nest:&meshlib::Box3f, neighborhood:f32) -> meshlib::Owned< meshlib::std_shared_ptr_MR_Nesting_IBoxNestingPriority >
auto fill_nesting_socket_corneres (nestedBoxes:&meshlib::std_vector_MR_Box3f, outCorners:&mut meshlib::std_vector_MR_Nesting_BoxNestingCorner, cb:Option<&meshlib::std_function_bool_from_float >) -> meshlib::Owned< meshlib::expected_void_std_string >
auto box_nesting (meshes:&meshlib::Vector_MR_Nesting_MeshXf_MR_ObjId, params:&meshlib::nesting::BoxNestingParams) -> meshlib::Owned< meshlib::expected_MR_Vector_MR_Nesting_NestingResult_MR_ObjId_std_string >
auto tetris_nesting_densify (meshes:&meshlib::Vector_MR_Nesting_MeshXf_MR_ObjId, params:&meshlib::nesting::TetrisDensifyParams) -> meshlib::Owned< meshlib::expected_MR_Vector_MR_AffineXf3f_MR_ObjId_std_string >

Function Documentation

◆ box_nesting()

finds best positions of input meshes to fit the nest (checks them by contacting box corners) Generated from function MR::Nesting::boxNesting.

Calls MR_Nesting_boxNesting().

◆ export_nesting3mf()

auto meshlib::nesting::export_nesting3mf ( path:& str,
params:&meshlib::nesting::Nesting3mfParams  ) -> meshlib::Owned< meshlib::expected_void_std_string >

exports slicestack 3mf file based on placed meshes Generated from function MR::Nesting::exportNesting3mf.

Calls MR_Nesting_exportNesting3mf().

◆ fill_nesting_socket_corneres()

auto meshlib::nesting::fill_nesting_socket_corneres ( nestedBoxes:&meshlib::std_vector_MR_Box3f ,
outCorners:&mut meshlib::std_vector_MR_Nesting_BoxNestingCorner ,
cb:Option<&meshlib::std_function_bool_from_float >  ) -> meshlib::Owned< meshlib::expected_void_std_string >

fills outCorners based on nestedBoxes corners
also adding corners in intersections of nestedBoxes Generated from function MR::Nesting::fillNestingSocketCorneres.

Calls MR_Nesting_fillNestingSocketCorneres().

◆ get_neighborig_density_priority_metric()

auto meshlib::nesting::get_neighborig_density_priority_metric ( nest:&meshlib::Box3f ,
neighborhood:f32  ) -> meshlib::Owned< meshlib::std_shared_ptr_MR_Nesting_IBoxNestingPriority >

priority metric that maximizes density of placement in local neighborhood Generated from function MR::Nesting::getNeighborigDensityPriorityMetric.

Calls MR_Nesting_getNeighborigDensityPriorityMetric().

◆ get_nest_postion_min_priority_metric()

auto meshlib::nesting::get_nest_postion_min_priority_metric ( nest:&meshlib::Box3f ) -> meshlib::Owned< meshlib::std_shared_ptr_MR_Nesting_IBoxNestingPriority >

priority metric that minimizes position of new object by Z->Y->X coordinate in nest Generated from function MR::Nesting::getNestPostionMinPriorityMetric.

Calls MR_Nesting_getNestPostionMinPriorityMetric().

◆ tetris_nesting_densify()

make nested meshes more compact by representing them via voxels and pushing to nest zero Generated from function MR::Nesting::tetrisNestingDensify.

Calls MR_Nesting_tetrisNestingDensify().