Classes | |
| struct | FlushTimeMachine |
| struct | MemoryedGroup |
| struct | Color |
| struct | FilamentInfo |
| struct | MachineFilamentInfo |
| class | FilamentGroupException |
Typedefs | |
| using | MemoryedGroupHeap = std::priority_queue<MemoryedGroup, std::vector<MemoryedGroup>, std::greater<MemoryedGroup>> |
Functions | |
| void | update_memoryed_groups (const MemoryedGroup &item, const double gap_threshold, MemoryedGroupHeap &groups) |
| std::vector< int > | calc_max_group_size (const std::vector< std::map< int, int > > &ams_counts, bool ignore_ext_filament) |
| static std::vector< std::vector< MachineFilamentInfo > > | build_full_machine_filaments (const std::vector< std::vector< DynamicPrintConfig > > &filament_configs) |
| std::vector< std::vector< MachineFilamentInfo > > | build_machine_filaments (const std::vector< std::vector< DynamicPrintConfig > > &filament_configs, const std::vector< std::map< int, int > > &ams_counts, bool ignore_ext_filament) |
| bool | collect_unprintable_limits (const std::vector< std::set< int > > &physical_unprintables, const std::vector< std::set< int > > &geometric_unprintables, std::vector< std::set< int > > &unprintable_limits) |
| bool | remove_intersection (std::set< int > &a, std::set< int > &b) |
| void | extract_indices (const std::vector< unsigned int > &used_filaments, const std::vector< std::set< int > > &unprintable_elems, std::vector< std::set< int > > &unprintable_idxs) |
| void | extract_unprintable_limit_indices (const std::vector< std::set< int > > &unprintable_elems, const std::vector< unsigned int > &used_filaments, std::map< int, int > &unplaceable_limits) |
| void | extract_unprintable_limit_indices (const std::vector< std::set< int > > &unprintable_elems, const std::vector< unsigned int > &used_filaments, std::unordered_map< int, std::vector< int > > &unplaceable_limits) |
| bool | check_printable (const std::vector< std::set< int > > &groups, const std::map< int, int > &unprintable) |
| int | get_estimate_extruder_change_count (const std::vector< std::vector< unsigned int > > &layer_filaments, const MultiNozzleUtils::LayeredNozzleGroupResult &extruder_nozzle_info) |
| int | get_estimate_nozzle_change_count (const std::vector< std::vector< unsigned int > > &layer_filaments, const MultiNozzleUtils::LayeredNozzleGroupResult &extruder_nozzle_info) |
| std::pair< int, int > | get_estimate_extruder_filament_change_count (const MultiNozzleUtils::LayeredNozzleGroupResult &extruder_nozzle_info) |
| std::map< int, std::vector< int > > | build_extruder_nozzle_list (const std::vector< MultiNozzleUtils::NozzleInfo > &nozzle_list) |
| std::vector< int > | update_used_filament_values (const std::vector< int > &old_values, const std::vector< int > &new_values, const std::vector< unsigned int > &used_filaments) |
| using Slic3r::FilamentGroupUtils::MemoryedGroupHeap = std::priority_queue<MemoryedGroup, std::vector<MemoryedGroup>, std::greater<MemoryedGroup>> |
| std::map< int, std::vector< int > > Slic3r::FilamentGroupUtils::build_extruder_nozzle_list | ( | const std::vector< MultiNozzleUtils::NozzleInfo > & | nozzle_list | ) |
Referenced by Slic3r::build_filament_group_context().
|
static |
References Slic3r::FilamentGroupUtils::FilamentInfo::color, Slic3r::FilamentGroupUtils::MachineFilamentInfo::extruder_id, Slic3r::FilamentGroupUtils::MachineFilamentInfo::is_extended, Slic3r::FilamentGroupUtils::FilamentInfo::is_support, and Slic3r::FilamentGroupUtils::FilamentInfo::type.
Referenced by build_machine_filaments().
| std::vector< std::vector< MachineFilamentInfo > > Slic3r::FilamentGroupUtils::build_machine_filaments | ( | const std::vector< std::vector< DynamicPrintConfig > > & | filament_configs, |
| const std::vector< std::map< int, int > > & | ams_counts, | ||
| bool | ignore_ext_filament ) |
References build_full_machine_filaments().
Referenced by Slic3r::build_filament_group_context().
| std::vector< int > Slic3r::FilamentGroupUtils::calc_max_group_size | ( | const std::vector< std::map< int, int > > & | ams_counts, |
| bool | ignore_ext_filament ) |
Referenced by Slic3r::build_filament_group_context().
| bool Slic3r::FilamentGroupUtils::check_printable | ( | const std::vector< std::set< int > > & | groups, |
| const std::map< int, int > & | unprintable ) |
| bool Slic3r::FilamentGroupUtils::collect_unprintable_limits | ( | const std::vector< std::set< int > > & | physical_unprintables, |
| const std::vector< std::set< int > > & | geometric_unprintables, | ||
| std::vector< std::set< int > > & | unprintable_limits ) |
References remove_intersection().
Referenced by Slic3r::build_filament_group_context().
| void Slic3r::FilamentGroupUtils::extract_indices | ( | const std::vector< unsigned int > & | used_filaments, |
| const std::vector< std::set< int > > & | unprintable_elems, | ||
| std::vector< std::set< int > > & | unprintable_idxs ) |
References Slic3r::f().
Referenced by extract_unprintable_limit_indices(), and extract_unprintable_limit_indices().
| void Slic3r::FilamentGroupUtils::extract_unprintable_limit_indices | ( | const std::vector< std::set< int > > & | unprintable_elems, |
| const std::vector< unsigned int > & | used_filaments, | ||
| std::map< int, int > & | unplaceable_limits ) |
References extract_indices(), Slic3r::f(), and remove_intersection().
Referenced by Slic3r::FilamentGroup::calc_filament_group_for_match(), Slic3r::FilamentGroup::calc_filament_group_for_tpu(), and Slic3r::FilamentGroup::calc_min_flush_group().
| void Slic3r::FilamentGroupUtils::extract_unprintable_limit_indices | ( | const std::vector< std::set< int > > & | unprintable_elems, |
| const std::vector< unsigned int > & | used_filaments, | ||
| std::unordered_map< int, std::vector< int > > & | unplaceable_limits ) |
References extract_indices(), Slic3r::f(), Slic3r::group_id(), remove_intersection(), and Slic3r::sort_remove_duplicates().
| int Slic3r::FilamentGroupUtils::get_estimate_extruder_change_count | ( | const std::vector< std::vector< unsigned int > > & | layer_filaments, |
| const MultiNozzleUtils::LayeredNozzleGroupResult & | extruder_nozzle_info ) |
References Slic3r::MultiNozzleUtils::LayeredNozzleGroupResult::get_used_extruders().
| std::pair< int, int > Slic3r::FilamentGroupUtils::get_estimate_extruder_filament_change_count | ( | const MultiNozzleUtils::LayeredNozzleGroupResult & | extruder_nozzle_info | ) |
References Slic3r::MultiNozzleUtils::LayeredNozzleGroupResult::get_layer_filament_sequences(), Slic3r::MultiNozzleUtils::LayeredNozzleGroupResult::get_used_extruders(), and Slic3r::MultiNozzleUtils::LayeredNozzleGroupResult::get_used_nozzles_in_extruder().
| int Slic3r::FilamentGroupUtils::get_estimate_nozzle_change_count | ( | const std::vector< std::vector< unsigned int > > & | layer_filaments, |
| const MultiNozzleUtils::LayeredNozzleGroupResult & | extruder_nozzle_info ) |
References Slic3r::MultiNozzleUtils::LayeredNozzleGroupResult::get_used_extruders(), and Slic3r::MultiNozzleUtils::LayeredNozzleGroupResult::get_used_nozzles_in_extruder().
| bool Slic3r::FilamentGroupUtils::remove_intersection | ( | std::set< int > & | a, |
| std::set< int > & | b ) |
References Slic3r::intersection().
Referenced by Slic3r::can_swap_extruder_groups(), collect_unprintable_limits(), extract_unprintable_limit_indices(), and extract_unprintable_limit_indices().
| void Slic3r::FilamentGroupUtils::update_memoryed_groups | ( | const MemoryedGroup & | item, |
| const double | gap_threshold, | ||
| MemoryedGroupHeap & | groups ) |
References ABSOLUTE_FLUSH_GAP_TOLERANCE, Slic3r::FilamentGroupUtils::MemoryedGroup::cost, and Slic3r::FilamentGroupUtils::MemoryedGroup::prefer_level.
Referenced by Slic3r::FilamentGroup::calc_group_by_enum(), and Slic3r::KMediods::do_clustering().
| std::vector< int > Slic3r::FilamentGroupUtils::update_used_filament_values | ( | const std::vector< int > & | old_values, |
| const std::vector< int > & | new_values, | ||
| const std::vector< unsigned int > & | used_filaments ) |
Referenced by Slic3r::Print::update_to_config_by_nozzle_group_result().