OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
WipeTowerDialog.cpp File Reference
#include <algorithm>
#include <string>
#include <wx/dialog.h>
#include <sstream>
#include <vector>
#include <utility>
#include "slic3r/GUI/RammingChart.hpp"
#include <wx/dcclient.h>
#include "slic3r/GUI/Widgets/StateColor.hpp"
#include <wx/colour.h>
#include "slic3r/GUI/Widgets/SpinInput.hpp"
#include <cstddef>
#include "libslic3r/PrintConfig.hpp"
#include "slic3r/GUI/Plater.hpp"
#include "libslic3r/FlushVolPredictor.hpp"
#include "libslic3r/Utils.hpp"
#include <boost/log/trivial.hpp>
#include <wx/display.h>
#include <wx/gdicmn.h>
#include <wx/event.h>
#include <wx/panel.h>
#include <wx/filename.h>
#include <wx/sizer.h>
#include <wx/string.h>
#include <wx/spinctrl.h>
#include <wx/toplevel.h>
#include <wx/webview.h>
#include "libslic3r/FlushVolCalc.hpp"
#include "WipeTowerDialog.hpp"
#include "GUI.hpp"
#include "I18N.hpp"
#include "GUI_App.hpp"
#include "MsgDialog.hpp"
#include "format.hpp"
#include "Widgets/StaticLine.hpp"
#include "Widgets/DialogButtons.hpp"
#include "libslic3r/Config.hpp"
#include "Widgets/Label.hpp"
#include "MainFrame.hpp"
#include "libslic3r/PresetBundle.hpp"
#include "libslic3r/Preset.hpp"
#include "DeviceCore/DevConfigUtil.h"
#include "DeviceCore/DevDefs.h"
#include <nlohmann/json.hpp>
#include "slic3r/GUI/Jobs/SendJob.hpp"
#include "slic3r/GUI/Widgets/WebViewHostDialog.hpp"
#include <boost/filesystem.hpp>
Include dependency graph for WipeTowerDialog.cpp:

Go to the source code of this file.

Macros

#define style   wxSP_ARROW_KEYS

Functions

int scale (const int val)
static void update_ui (wxWindow *window)
bool is_flush_config_modified ()
void open_flushing_dialog (wxEvtHandler *parent, const wxEvent &event)
static std::vector< float > MatrixFlatten (const WipingDialog::VolumeMatrix &matrix)
static std::vector< double > extract_physical_sub_matrix (const std::vector< double > &full_matrix, size_t full_n, const std::vector< size_t > &indices)
static std::vector< double > expand_physical_to_full_matrix (const std::vector< double > &sub_matrix, const std::vector< size_t > &indices, size_t full_n, const std::vector< double > &original_matrix)

Variables

static const float g_min_flush_multiplier = 0.f
static const float g_max_flush_multiplier = 3.f

Macro Definition Documentation

◆ style

#define style   wxSP_ARROW_KEYS

Referenced by Slic3r::GUI::AddMachinePanel::AddMachinePanel(), Slic3r::GUI::AmsPanel::AmsPanel(), Slic3r::GUI::AMSSetting::AMSSetting(), Slic3r::GUI::AuFile::AuFile(), Slic3r::GUI::AuFolderPanel::AuFolderPanel(), Slic3r::GUI::AuxiliaryPanel::AuxiliaryPanel(), Slic3r::GUI::BitmapComboBox::BitmapComboBox(), Button::Button(), Slic3r::GUI::CalibrationCaliPage::CalibrationCaliPage(), Slic3r::GUI::CalibrationCommonSavePage::CalibrationCommonSavePage(), Slic3r::GUI::CalibrationFlowCoarseSavePage::CalibrationFlowCoarseSavePage(), Slic3r::GUI::CalibrationFlowFineSavePage::CalibrationFlowFineSavePage(), Slic3r::GUI::CalibrationFlowRateStartPage::CalibrationFlowRateStartPage(), Slic3r::GUI::CalibrationFlowX1SavePage::CalibrationFlowX1SavePage(), Slic3r::GUI::CalibrationMaxVolumetricSpeedSavePage::CalibrationMaxVolumetricSpeedSavePage(), Slic3r::GUI::CalibrationMaxVolumetricSpeedStartPage::CalibrationMaxVolumetricSpeedStartPage(), Slic3r::GUI::CalibrationPanel::CalibrationPanel(), Slic3r::GUI::CalibrationPASavePage::CalibrationPASavePage(), Slic3r::GUI::CalibrationPAStartPage::CalibrationPAStartPage(), Slic3r::GUI::CalibrationPresetPage::CalibrationPresetPage(), Slic3r::GUI::CalibrationStartPage::CalibrationStartPage(), Slic3r::GUI::CalibrationWizard::CalibrationWizard(), Slic3r::GUI::CalibrationWizardPage::CalibrationWizardPage(), Slic3r::GUI::CaliComboBox::CaliComboBox(), Slic3r::GUI::CaliPageActionPanel::CaliPageActionPanel(), Slic3r::GUI::CaliPageCaption::CaliPageCaption(), Slic3r::GUI::CaliPagePicture::CaliPagePicture(), Slic3r::GUI::CaliPageSendingPanel::CaliPageSendingPanel(), Slic3r::GUI::CaliPageStepGuide::CaliPageStepGuide(), Slic3r::GUI::CaliPASaveAutoPanel::CaliPASaveAutoPanel(), Slic3r::GUI::CaliPASaveManualPanel::CaliPASaveManualPanel(), Slic3r::GUI::CaliPASaveP1PPanel::CaliPASaveP1PPanel(), Slic3r::GUI::CaliPresetCaliStagePanel::CaliPresetCaliStagePanel(), Slic3r::GUI::CaliPresetCustomRangePanel::CaliPresetCustomRangePanel(), Slic3r::GUI::CaliPresetTipsPanel::CaliPresetTipsPanel(), Slic3r::GUI::CaliPresetWarningPanel::CaliPresetWarningPanel(), Slic3r::GUI::CaliSavePresetValuePanel::CaliSavePresetValuePanel(), CenteredStaticText::CenteredStaticText(), Slic3r::GUI::CheckboxFileDialog::CheckboxFileDialog(), ComboBox::ComboBox(), Slic3r::GUI::ConfirmBeforeSendDialog::ConfirmBeforeSendDialog(), Slic3r::GUI::ConnectPrinterDialog::ConnectPrinterDialog(), Slic3r::GUI::DataList< wxListBox, std::string >::DataList(), Slic3r::GUI::DesignerPanel::DesignerPanel(), Slic3r::GUI::DesignRowList::DesignRowList(), Slic3r::GUI::DesignTextDialog::DesignTextDialog(), Slic3r::GUI::DeviceErrorDialog::DeviceErrorDialog(), Slic3r::GUI::DiamTextCtrl::DiamTextCtrl(), Slic3r::GUI::DownloadDialog::DownloadDialog(), Slic3r::GUI::DPIAware< wxFrame >::DPIAware(), DropDown::DropDown(), Slic3r::GUI::ExportPresetBundleDialog::ExportPresetBundleDialog(), Slic3r::GUI::ExtensionPanel::ExtensionPanel(), Slic3r::GUI::ExtraAmsPanel::ExtraAmsPanel(), FanSwitchButton::FanSwitchButton(), FilamentStepIndicator::FilamentStepIndicator(), Slic3r::GUI::FlowRateWizard::FlowRateWizard(), Slic3r::GUI::GuideFrame::GuideFrame(), Slic3r::GUI::HMSPanel::HMSPanel(), Slic3r::GUI::HyperLink::HyperLink(), ImageSwitchButton::ImageSwitchButton(), Slic3r::GUI::IMSlider::IMSlider(), Slic3r::GUI::InfoDialog::InfoDialog(), Label::Label(), Label::Label(), LabeledStaticBox::LabeledStaticBox(), Slic3r::GUI::MachineInfoPanel::MachineInfoPanel(), Slic3r::GUI::MachineObjectPanel::MachineObjectPanel(), Slic3r::GUI::MaxVolumetricSpeedPresetPage::MaxVolumetricSpeedPresetPage(), Slic3r::GUI::MaxVolumetricSpeedWizard::MaxVolumetricSpeedWizard(), MenuWithSeparators::MenuWithSeparators(), MenuWithSeparators::MenuWithSeparators(), Slic3r::GUI::MessageDialog::MessageDialog(), Slic3r::GUI::MObjectPanel::MObjectPanel(), Slic3r::GUI::MonitorBasePanel::MonitorBasePanel(), Slic3r::GUI::MonitorPage::MonitorPage(), Slic3r::GUI::MonitorPanel::MonitorPanel(), Slic3r::GUI::MsgDialog::MsgDialog(), Slic3r::GUI::MultiMachinePage::MultiMachinePage(), MultiSwitchButton::MultiSwitchButton(), Slic3r::GUI::MyscrolledWindow::MyscrolledWindow(), Slic3r::GUI::NetworkTestDialog::NetworkTestDialog(), Notebook::Notebook(), Slic3r::GUI::ObjectGrid::ObjectGrid(), Slic3r::GUI::ObjectTablePanel::ObjectTablePanel(), Slic3r::GUI::PAColumnDataPanel::PAColumnDataPanel(), Slic3r::GUI::PAPageHelpPanel::PAPageHelpPanel(), Slic3r::GUI::ParamsPanel::ParamsPanel(), Slic3r::GUI::PlateNameEditDialog::PlateNameEditDialog(), Slic3r::GUI::PlateSettingsDialog::PlateSettingsDialog(), Slic3r::GUI::PluginProgressDialog::PluginProgressDialog(), Slic3r::GUI::PluginsDialog::PluginsDialog(), PopupWindow::PopupWindow(), Slic3r::GUI::PreferencesDialog::PreferencesDialog(), Slic3r::GUI::PresetBundleDialog::PresetBundleDialog(), Slic3r::GUI::PressureAdvanceWizard::PressureAdvanceWizard(), Slic3r::GUI::PrintErrorDialog::PrintErrorDialog(), Slic3r::GUI::PrivacyUpdateDialog::PrivacyUpdateDialog(), Slic3r::GUI::ProgressDialog::ProgressDialog(), Slic3r::GUI::ProjectPanel::ProjectPanel(), Slic3r::GUI::RecenterDialog::RecenterDialog(), Slic3r::GUI::RichMessageDialog::RichMessageDialog(), ScalableButton::ScalableButton(), ScalableButton::ScalableButton(), ScrolledWindow::ScrolledWindow(), Slic3r::GUI::ScrolledWindow::ScrolledWindow(), Slic3r::GUI::SecondaryCheckDialog::SecondaryCheckDialog(), Slic3r::GUI::SliceInfoPanel::SliceInfoPanel(), Slic3r::GUI::SpinCtrlDouble::SpinCtrlDouble(), SpinInput::SpinInput(), StaticBox::StaticBox(), Slic3r::GUI::StatusBasePanel::StatusBasePanel(), Slic3r::GUI::StatusPanel::StatusPanel(), StepCtrl::StepCtrl(), StepCtrlBase::StepCtrlBase(), StepIndicator::StepIndicator(), Slic3r::SupportGridPattern::SupportGridPattern(), Tabbook::Tabbook(), TabButton::TabButton(), TabCtrl::TabCtrl(), Slic3r::GUI::TaskListBasePanel::TaskListBasePanel(), TempInput::TempInput(), Slic3r::GUI::TerminalDialog::TerminalDialog(), TextInput::TextInput(), Slic3r::GUI::TipsDialog::TipsDialog(), Slic3r::GUI::uiDeviceUpdateVersion::uiDeviceUpdateVersion(), Slic3r::GUI::UpgradePanel::UpgradePanel(), Slic3r::GUI::UVEditorPanel::UVEditorPanel(), Slic3r::GUI::VideoMonitoringBasePanel::VideoMonitoringBasePanel(), Slic3r::GUI::WarningDialog::WarningDialog(), Slic3r::GUI::WebViewHostDialog::WebViewHostDialog(), Slic3r::GUI::wgtDeviceNozzleRack::wgtDeviceNozzleRack(), Slic3r::GUI::wgtDeviceNozzleRackUprade::wgtDeviceNozzleRackUprade(), Slic3r::GUI::WxFontUtils::WxFontUtils(), Slic3r::PrintObject::_generate_support_material(), Slic3r::GUI::GLCanvas3D::_render_3d_navigator(), Slic3r::GUI::GLCanvas3D::_render_section_view_panel(), Slic3r::GUI::anonymous_namespace{McpControl.cpp}::action_hole_standard(), Slic3r::GUI::anonymous_namespace{McpControl.cpp}::action_hole_styled(), Slic3r::CadDocument::add_hole_standard(), Slic3r::CadDocument::add_hole_styled(), Slic3r::GUI::Tab::add_scaled_button(), Slic3r::GUI::Emboss::StyleManager::add_style(), anonymous_namespace{GLGizmoEmboss.cpp}::add_style_for_default_text(), ComboBox::Append(), ComboBox::Append(), ComboBox::Append(), ComboBox::Append(), Slic3r::GUI::IMEXModesCtrl::apply_btn(), Slic3r::GUI::MsgDialog::apply_style(), Slic3r::GUI::ImGuiWrapper::bbl_combo_with_filter(), Slic3r::GUI::ImGuiWrapper::bbl_slider_float(), Slic3r::GUI::begin_menu(), Slic3r::GUI::GLGizmoUtils::begin_right_aligned_buttons(), Slic3r::GUI::PointCtrl::BUILD(), Slic3r::GUI::ImGuiWrapper::calc_button_size(), anonymous_namespace{GLGizmoEmboss.cpp}::can_write(), anonymous_namespace{GLGizmoSVG.cpp}::choose_svg_file(), Button::Create(), DropDown::Create(), FakeWebView::Create(), LabeledStaticBox::Create(), Notebook::Create(), PopupWindow::Create(), Slic3r::GUI::GridCellChoiceEditor::Create(), Slic3r::GUI::GridCellFilamentsEditor::Create(), Slic3r::GUI::ProgressDialog::Create(), SpinInput::Create(), StaticBox::Create(), Tabbook::Create(), TabButton::Create(), TempInput::Create(), TextInput::Create(), Slic3r::GUI::GLGizmoEmboss::create_default_styles(), Slic3r::GUI::PluginProgressDialog::create_dialog(), anonymous_namespace{GLGizmoEmboss.cpp}::create_emboss_data_base(), anonymous_namespace{GLGizmoEmboss.cpp}::create_gui_configuration(), anonymous_namespace{GLGizmoSVG.cpp}::create_gui_configuration(), anonymous_namespace{GLGizmoEmboss.cpp}::create_input(), Slic3r::GUI::KBShortcutsDialog::create_page(), Slic3r::GUI::WxFontUtils::create_wxFont(), Slic3r::GUI::Emboss::StyleManager::CreateFontStyleImagesJob, Slic3r::GUI::GizmoObjectManipulation::do_render_move_window(), Slic3r::GUI::GLGizmoEmboss::draw_advanced(), Slic3r::GUI::GLGizmoEmboss::draw_font_list_line(), Slic3r::GUI::GLGizmoEmboss::draw_style_list(), Slic3r::GUI::GLGizmoEmboss::draw_text_input(), Slic3r::GUI::ImGuiWrapper::get_item_spacing(), Slic3r::GUI::ImGuiWrapper::get_slider_float_height(), Slic3r::GUI::ImGuiWrapper::glyph_button(), Slic3r::GUI::Emboss::StyleManager::init(), Slic3r::GUI::DeviceErrorDialog::init_button(), Slic3r::GUI::PrintErrorDialog::init_button(), Slic3r::GUI::GLGizmoCut3D::init_connector_shapes(), Slic3r::GUI::GLGizmoCut3D::init_input_window_data(), Slic3r::GUI::ImGuiWrapper::init_style(), Slic3r::GUI::Emboss::StyleManager::init_style_images(), Slic3r::is_tree_slim(), Slic3r::GUI::Emboss::StyleManager::is_unique_style_name(), Slic3r::GUI::Emboss::StyleManager::load_style(), Slic3r::GUI::Emboss::StyleManager::load_style(), Slic3r::GUI::Emboss::StyleManager::load_valid_style(), Slic3r::GUI::mac_dark_mode(), Slic3r::GUI::menu_item_with_icon(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::message_style(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::new_progress_dialog(), Slic3r::GUI::GLGizmoTextureDisplacement::on_render_input_window(), Slic3r::GUI::GLGizmoTextureDisplacement::panel_tooltip(), Slic3r::GUI::GUI_App::push_notification(), Slic3r::GUI::GLGizmoEmboss::re_emboss(), Slic3r::TextConfigurationSerialization::read(), Slic3r::GUI::MixedFilamentDialog::rebuild_all_combos(), Slic3r::GUI::IMEXModesCtrl::rebuild_info_and_header(), DropDown::render(), Slic3r::GUI::GCodeViewer::SequentialView::GCodeWindow::render(), Slic3r::GUI::GCodeViewer::render_all_plates_stats(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::GUI::render_extruders_combo(), Slic3r::GUI::GCodeViewer::SequentialView::Marker::render_position_window(), Slic3r::GUI::GLGizmoCut3D::render_reset_button(), Slic3r::GUI::GLGizmoTextureDisplacement::render_texture_library_popup(), Slic3r::GUI::GLGizmoTextureDisplacement::render_tip_media(), Slic3r::GUI::detail::run_off_thread_with_progress(), Slic3r::GUI::detail::run_wait_with_progress(), Slic3r::GUI::PluginsDialog::run_with_dialog(), Slic3r::GUI::PluginsDialog::run_with_dialog_wait(), Slic3r::GUI::ImGuiWrapper::search_list(), Slic3r::GUI::selectable(), DropDown::sendDropDownEvent(), Slic3r::GUI::CalibrationWizard::set_cali_style(), Slic3r::GUI::WxFontUtils::set_italic(), Slic3r::GUI::GLGizmoEmboss::set_volume_by_selection(), Slic3r::GUI::Emboss::StyleManager::set_wx_font(), StaticBox::SetBorderStyle(), Slic3r::GUI::IMSlider::SetExtraStyle(), SideButton::SetLayoutStyle(), Slic3r::GUI::MediaPlayCtrl::SetStatus(), Button::SetStyle(), Label::SetWindowStyleFlag(), Slic3r::GUI::Sidebar::priv::show_fila_switch_msg(), anonymous_namespace{EmbossStyleManager.cpp}::store_styles(), Slic3r::GUI::Emboss::StyleManager::store_styles_to_app_config(), Slic3r::GUI::Tab::supports_printer_technology(), Slic3r::GUI::WebViewHostDialog::theme_user_script(), Slic3r::TextConfigurationSerialization::to_xml(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::ui_create_progress_dialog(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::ui_create_window(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::ui_message(), Slic3r::GUI::SecondaryCheckDialog::update_title_style(), Slic3r::GUI::UpdateVersionDialog::update_version_info(), and Slic3r::GUI::wxBEGIN_EVENT_TABLE().

Function Documentation

◆ expand_physical_to_full_matrix()

std::vector< double > expand_physical_to_full_matrix ( const std::vector< double > & sub_matrix,
const std::vector< size_t > & indices,
size_t full_n,
const std::vector< double > & original_matrix )
static
324{
325 std::vector<double> full = original_matrix;
326 if (full.size() < full_n * full_n)
327 return full;
328 size_t p = indices.size();
329 for (size_t pi = 0; pi < p; ++pi)
330 for (size_t pj = 0; pj < p; ++pj)
331 full[indices[pi] * full_n + indices[pj]] = sub_matrix[pi * p + pj];
332 return full;
333}

Referenced by WipingDialog::ExpandToFullMatrix().

Here is the caller graph for this function:

◆ extract_physical_sub_matrix()

std::vector< double > extract_physical_sub_matrix ( const std::vector< double > & full_matrix,
size_t full_n,
const std::vector< size_t > & indices )
static
307{
308 size_t p = indices.size();
309 std::vector<double> sub(p * p, 0.0);
310 if (full_matrix.size() < full_n * full_n)
311 return sub;
312 for (size_t pi = 0; pi < p; ++pi)
313 for (size_t pj = 0; pj < p; ++pj)
314 sub[pi * p + pj] = full_matrix[indices[pi] * full_n + indices[pj]];
315 return sub;
316}

Referenced by WipingDialog::BuildTableObjStr().

Here is the caller graph for this function:

◆ is_flush_config_modified()

bool is_flush_config_modified ( )
240{
241 const auto &project_config = wxGetApp().preset_bundle->project_config;
242 const std::vector<double> &config_matrix = (project_config.option<ConfigOptionFloats>("flush_volumes_matrix"))->values;
243 const std::vector<double> &config_multiplier = (project_config.option<ConfigOptionFloats>("flush_multiplier"))->values;
244 // The config matrix is N x N per nozzle over every slot, while CalcFlushingVolumes is p x p
245 // over the physical slots (mixed slots never flush): map each default cell to its config index.
246 const auto physical_indices = wxGetApp().preset_bundle->physical_filament_config_indices();
247 const size_t full_n = project_config.option<ConfigOptionStrings>("filament_colour")->values.size();
248
249 bool has_modify = false;
250 for (int i = 0; i < config_multiplier.size(); i++) {
251 if (config_multiplier[i] != 1) {
252 has_modify = true;
253 break;
254 }
255 std::vector<std::vector<double>> default_matrix = WipingDialog::CalcFlushingVolumes(i);
256 size_t p_len = default_matrix.size();
257 size_t nozzle_offset = i * full_n * full_n;
258 for (size_t m = 0; m < p_len; m++) {
259 for (size_t n = 0; n < p_len; n++) {
260 size_t cfg_idx = nozzle_offset + physical_indices[m] * full_n + physical_indices[n];
261 if (cfg_idx < config_matrix.size() && config_matrix[cfg_idx] != default_matrix[m][n] * config_multiplier[i]) {
262 has_modify = true;
263 break;
264 }
265 }
266 if (has_modify) break;
267 }
268 if (has_modify) break;
269 }
270 return has_modify;
271}
Definition Config.hpp:1190
size_t size() const override
Definition Config.hpp:722
static VolumeMatrix CalcFlushingVolumes(int extruder_id)
Definition WipeTowerDialog.cpp:620
ConfigOptionFloatsTempl< false > ConfigOptionFloats
Definition Config.hpp:1015

References WipingDialog::CalcFlushingVolumes(), and Slic3r::ConfigOptionVector< T >::size().

Referenced by Slic3r::GUI::Sidebar::Sidebar(), Slic3r::GUI::Sidebar::auto_calc_flushing_volumes(), Slic3r::GUI::Plater::load_project(), Slic3r::GUI::Sidebar::msw_rescale(), open_flushing_dialog(), and Slic3r::GUI::Sidebar::sys_color_changed().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MatrixFlatten()

std::vector< float > MatrixFlatten ( const WipingDialog::VolumeMatrix & matrix)
static
292 {
293 std::vector<float> vec;
294 for (auto row_elems : matrix) {
295 for (auto elem : row_elems)
296 vec.emplace_back(elem);
297 }
298 return vec;
299}

Referenced by WipingDialog::WipingDialog(), and WipingDialog::BuildTableObjStr().

Here is the caller graph for this function:

◆ open_flushing_dialog()

void open_flushing_dialog ( wxEvtHandler * parent,
const wxEvent & event )
274{
275 auto &project_config = wxGetApp().preset_bundle->project_config;
276
277 WipingDialog dlg(static_cast<wxWindow *>(wxGetApp().mainframe));
278 dlg.ShowModal();
279 if (dlg.GetSubmitFlag()) {
280 auto matrix = dlg.GetFlattenMatrix();
281 auto flush_multipliers = dlg.GetMultipliers();
282 (project_config.option<ConfigOptionFloats>("flush_volumes_matrix"))->values = std::vector<double>(matrix.begin(), matrix.end());
283 (project_config.option<ConfigOptionFloats>("flush_multiplier"))->values = std::vector<double>(flush_multipliers.begin(), flush_multipliers.end());
284 bool flushing_volume_modify = is_flush_config_modified();
285 wxGetApp().sidebar().set_flushing_volume_warning(flushing_volume_modify);
286 wxGetApp().preset_bundle->export_selections(*wxGetApp().app_config);
287 wxGetApp().plater()->update_project_dirty_from_presets();
288 wxPostEvent(parent, event);
289 }
290}
bool is_flush_config_modified()
Definition WipeTowerDialog.cpp:239
Definition WipeTowerDialog.hpp:54

References WipingDialog::GetFlattenMatrix(), WipingDialog::GetMultipliers(), WipingDialog::GetSubmitFlag(), and is_flush_config_modified().

Referenced by Slic3r::GUI::Sidebar::Sidebar(), and Slic3r::GUI::GLCanvas3D::_set_warning_notification().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ scale()

int scale ( const int val)
58{ return val * Slic3r::GUI::wxGetApp().em_unit() / 10; }

Referenced by Slic3r::GUI::DailyTipsPanel::DailyTipsPanel(), anonymous_namespace{NSVGUtils.cpp}::DashesParam::DashesParam(), Slic3r::GUI::PlaterPresetComboBox::PlaterPresetComboBox(), Slic3r::Emboss::ProjectScale::ProjectScale(), RammingPanel::RammingPanel(), Slic3r::GUI::GLCanvas3D::_check_and_update_toolbar_icon_scale(), Slic3r::GUI::GLCanvas3D::_render_assembly_tooltip_button(), Slic3r::GUI::Camera::apply_projection(), Slic3r::GUI::GLGizmoTextureDisplacement::apply_projection_frame(), Slic3r::GUI::GLCanvas3D::apply_retina_scale(), Slic3r::GUI::UVEditorPanel::apply_state(), Slic3r::apply_uv_transform(), Slic3r::Geometry::assemble_transform(), Slic3r::Geometry::assemble_transform(), Slic3r::Geometry::assemble_transform(), Slic3r::Geometry::assemble_transform(), Slic3r::BuildVolume::bounding_mesh(), Slic3r::GUI::TextLinesModel::calc_line_height_in_mm(), Slic3r::GUI::Bed_2D::calculate_grid_step(), Slic3r::GUI::GLGizmoEmboss::calculate_scale(), Slic3r::GUI::GLGizmoSVG::calculate_scale(), Slic3r::GUI::GizmoObjectManipulation::change_scale_value(), Slic3r::compute_patch_unwrap(), Slic3r::GUI::Emboss::StyleManager::create_imgui_font(), anonymous_namespace{GLGizmoSVG.cpp}::create_shape_warnings(), Slic3r::GUI::GLGizmoEmboss::do_mirror(), Slic3r::GUI::GizmoObjectManipulation::do_render_move_window(), Slic3r::GUI::GizmoObjectManipulation::do_render_scale_input_window(), Slic3r::GUI::GizmoObjectManipulation::do_scale(), ModeSwitchButton::doRender(), StaticBox::doRender(), Slic3r::downscale_height_texture(), Slic3r::SVG::draw(), Slic3r::SVG::draw(), Slic3r::GUI::GLGizmoMmuSegmentation::draw_color_button(), Slic3r::GUI::GLGizmoSVG::draw_filename(), anonymous_namespace{GLGizmoSVG.cpp}::draw_filled(), anonymous_namespace{GLGizmoSVG.cpp}::draw_side_outline(), Slic3r::GUI::GLGizmoEmboss::draw_text_input(), Slic3r::dump_voronoi_to_svg(), Slic3r::Geometry::extract_rotation_scale(), Slic3r::WipeTower2::extract_wipe_volumes(), Slic3r::format_memsize_MB(), Slic3r::gcode_paint_bitmap(), Slic3r::GUI::Bed_2D::generate_grid(), Slic3r::Emboss::get_align_y_offset_in_mm(), Slic3r::GUI::get_data_from_svg(), get_default_extruder_color_icon(), get_extruder_color_icon(), get_extruder_color_icon(), Slic3r::GUI::Emboss::StyleManager::get_imgui_font_size(), Slic3r::Geometry::Transformation::get_mirror(), Slic3r::Geometry::Transformation::get_mirror_matrix(), Slic3r::SVG::get_path_d(), Slic3r::Geometry::Transformation::get_scaling_factor(), Slic3r::Geometry::Transformation::get_scaling_factor_matrix(), anonymous_namespace{GLGizmoSVG.cpp}::get_tesselation_tolerance(), Slic3r::Emboss::get_text_shape_scale(), Slic3r::GUI::GLGizmoScale3D::get_tooltip(), Slic3r::GUI::TroubleshootDialog::GetMONinfo(), Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::gl_drawable_size(), gl_viewport_size(), Slic3r::grid_to_mesh(), Slic3r::GUI::IMSlider::horizontal_slider(), Slic3r::GUI::ConnectPrinterDialog::init_bitmap(), Slic3r::MachineFrameTransform::init_from_config(), anonymous_namespace{GLGizmoSVG.cpp}::init_texture(), Slic3r::Geometry::Transformation::is_scaling_uniform(), Slic3r::GUI::GLTexture::load_from_svg(), Slic3r::GUI::IMTexture::load_from_svg_file(), Slic3r::GUI::GLTexture::load_from_svg_files_as_sprites_array(), Slic3r::GUI::mac_ime_set_caret(), Slic3r::GUI::marker_scale(), Slic3r::normal(), Slic3r::GUI::GLCanvas3D::CenterOfMass::on_left_down(), Slic3r::GUI::GLCanvas3D::on_mouse(), Slic3r::GUI::UVEditorCanvas::on_mouse(), Slic3r::GUI::GLGizmoTextureDisplacement::on_mouse_adjust_texture(), Slic3r::GUI::GLCanvas3D::on_mouse_wheel(), Slic3r::GUI::GLGizmoFdmSupports::on_render_input_window(), Slic3r::GUI::GLGizmoFuzzySkin::on_render_input_window(), Slic3r::GUI::GLGizmoMmuSegmentation::on_render_input_window(), Slic3r::GUI::GLGizmoSeam::on_render_input_window(), Slic3r::GUI::GLGizmoTextureDisplacement::on_render_input_window(), wxMediaCtrl3::paintEvent(), Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::pane_icon(), Slic3r::GUI::ObjectList::part_selection_changed(), Slic3r::GUI::CreateFontImageJob::process(), Slic3r::GUI::Emboss::CreateFontStyleImagesJob::process(), Slic3r::GUI::ImGuiWrapper::push_combo_style(), Slic3r::GUI::ImGuiWrapper::push_common_window_style(), Slic3r::GUI::ImGuiWrapper::push_menu_style(), Slic3r::GUI::ImGuiWrapper::push_radio_style(), Slic3r::GUI::DailyTipsPanel::push_styles(), Slic3r::GUI::ImGuiWrapper::push_toolbar_style(), Slic3r::read_emboss_shape(), Slic3r::GUI::SkipPartCanvas::Render(), Slic3r::GUI::DailyTipsPanel::render(), Slic3r::GUI::DailyTipsWindow::render(), Slic3r::GUI::IMSlider::render(), Slic3r::GUI::NotificationManager::SlicingProgressNotification::render(), Slic3r::GUI::SketchInlineEditor::render(), Slic3r::GUI::DailyTipsPanel::render_controller_buttons(), Slic3r::GUI::NotificationManager::HintNotification::render_documentation_button(), Slic3r::GUI::NotificationManager::ExportFinishedNotification::render_eject_button(), Slic3r::GUI::GLGizmoMmuSegmentation::render_filament_remap_ui(), Slic3r::GUI::PartPlateList::render_hover_tooltip(), Slic3r::GUI::NotificationManager::HintNotification::render_preferences_button(), Slic3r::GUI::NotificationManager::SlicingProgressNotification::render_progress_text(), Slic3r::GUI::NotificationManager::HintNotification::render_right_arrow_button(), Slic3r::GUI::GLGizmoUtils::render_tooltip_button(), Slic3r::GUI::GLGizmoUtils::render_video_guide_button(), Slic3r::GUI::GLGizmoUtils::render_wiki_buttons(), Slic3r::GUI::GLGizmoUtils::render_wiki_guide_button(), SwitchButton::Rescale(), Slic3r::GUI::GizmoObjectManipulation::reset_button(), Slic3r::GUI::GizmoObjectManipulation::reset_zero_button(), Slic3r::GUI::GLGizmoEmboss::rev_input_mm(), libvgcode::round_to_bin(), Slic3r::anonymous_namespace{GCodeStatistics.cpp}::rounded(), Slic3r::Emboss::sample_slice(), Slic3r::EdgeGrid::save_png(), Slic3r::GUI::SplashScreen::scale_font(), Slic3r::ModelObject::scale_to_fit(), Slic3r::Geometry::scale_transform(), Slic3r::Geometry::scale_transform(), Slic3r::Geometry::scale_transform(), Slic3r::Geometry::scale_transform(), NppDarkMode::scaled(), Slic3r::scaled_floor(), Slic3r::GUI::GUI_App::set_auto_toolbar_icon_scale(), Slic3r::Geometry::Transformation::set_mirror(), Slic3r::Geometry::Transformation::set_mirror(), Slic3r::GUI::GLGizmosManager::set_overlay_scale(), Slic3r::Geometry::Transformation::set_rotation(), Slic3r::GUI::GCodeViewer::set_scale(), Slic3r::GUI::GLGizmoScale3D::set_scale(), Slic3r::GUI::GLToolbar::set_scale(), Slic3r::GUI::IMSlider::set_scale(), Slic3r::GUI::NotificationManager::PopNotification::set_scale(), Slic3r::GUI::NotificationManager::set_scale(), Slic3r::Geometry::Transformation::set_scaling_factor(), Slic3r::svg_to_regions(), anonymous_namespace{NSVGUtils.cpp}::to_coor(), Slic3r::GUI::GLGizmoUtils::toolbar_circular_button(), Slic3r::SketchEngine::transform_entities(), Slic3r::MassProperties::transformed(), anonymous_namespace{EmbossJob.cpp}::try_create_mesh(), Slic3r::GUI::GLGizmoCut3D::update_raycasters_for_picking_transform(), Slic3r::GUI::GizmoObjectManipulation::update_reset_buttons_visibility(), Slic3r::GUI::anonymous_namespace{GLGizmoTextureDisplacement.cpp}::upload_color_texture(), Slic3r::GUI::anonymous_namespace{GLGizmoTextureDisplacement.cpp}::upload_height_thumbnail(), Slic3r::GUI::IMSlider::vertical_slider(), Slic3r::Geometry::Transformation::volume_to_bed_transformation(), Slic3r::GUI::GLCanvas3D::volumes_bounding_box(), Slic3r::png::write_gray_to_file_scaled(), Slic3r::png::write_gray_to_file_scaled(), Slic3r::png::write_gray_to_file_scaled(), Slic3r::png::write_rgb_or_gray_to_file_scaled(), Slic3r::png::write_rgb_to_file_scaled(), Slic3r::png::write_rgb_to_file_scaled(), Slic3r::png::write_rgb_to_file_scaled(), and Slic3r::GUI::wxImage_to_wxBitmap_with_alpha().

◆ update_ui()

void update_ui ( wxWindow * window)
static
61{
62 Slic3r::GUI::wxGetApp().UpdateDarkUI(window);
63}

Referenced by RammingPanel::RammingPanel(), Slic3r::GUI::DragDropPanel::AddColorBlock(), Slic3r::GUI::SeparatedDragDropPanel::AddColorBlock(), Slic3r::GUI::FilamentMapManualPanel::OnTimer(), Slic3r::GUI::DragDropPanel::RemoveColorBlock(), and Slic3r::GUI::SeparatedDragDropPanel::RemoveColorBlock().

Here is the caller graph for this function:

Variable Documentation

◆ g_max_flush_multiplier

const float g_max_flush_multiplier = 3.f
static

◆ g_min_flush_multiplier

const float g_min_flush_multiplier = 0.f
static