mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-16 19:28:14 -06:00
Merge remote-tracking branch 'remote/master' into feature/merge_upstream
# Conflicts: # bbl/i18n/OrcaSlicer.pot # bbl/i18n/de/OrcaSlicer_de.po # bbl/i18n/en/OrcaSlicer_en.po # bbl/i18n/es/OrcaSlicer_es.po # bbl/i18n/fr/OrcaSlicer_fr.po # bbl/i18n/hu/OrcaSlicer_hu.po # bbl/i18n/it/OrcaSlicer_it.po # bbl/i18n/ja/OrcaSlicer_ja.po # bbl/i18n/nl/OrcaSlicer_nl.po # bbl/i18n/sv/OrcaSlicer_sv.po # bbl/i18n/zh_cn/OrcaSlicer_zh_CN.po # resources/config.json # resources/i18n/de/BambuStudio.mo # resources/i18n/en/BambuStudio.mo # resources/i18n/es/BambuStudio.mo # resources/i18n/fr/BambuStudio.mo # resources/i18n/hu/BambuStudio.mo # resources/i18n/it/BambuStudio.mo # resources/i18n/ja/OrcaSlicer.mo # resources/i18n/nl/BambuStudio.mo # resources/i18n/sv/BambuStudio.mo # resources/i18n/zh_cn/BambuStudio.mo # resources/images/ams_humidity_2.svg # resources/images/ams_humidity_3.svg # resources/images/ams_humidity_4.svg # resources/images/ams_humidity_tips.svg # resources/images/monitor_state_on.svg # resources/images/sdcard_state_normal.svg # resources/profiles/BBL.json # resources/profiles/BBL/filament/Bambu PETG-CF @base.json # resources/profiles/BBL/filament/Generic PETG-CF @base.json # resources/profiles/BBL/machine/Bambu Lab P1P 0.4 nozzle.json # resources/web/data/text.js # resources/web/guide/3/index.html # resources/web/guide/31/index.html # src/BambuStudio.cpp # src/libslic3r/AABBTreeLines.hpp # src/libslic3r/Brim.cpp # src/libslic3r/CMakeLists.txt # src/libslic3r/ExPolygon.hpp # src/libslic3r/Fill/FillBase.hpp # src/libslic3r/Format/bbs_3mf.cpp # src/libslic3r/GCodeWriter.cpp # src/libslic3r/Line.hpp # src/libslic3r/PerimeterGenerator.cpp # src/libslic3r/Preset.cpp # src/libslic3r/Print.cpp # src/libslic3r/Print.hpp # src/libslic3r/PrintConfig.cpp # src/libslic3r/PrintConfig.hpp # src/libslic3r/TreeSupport.cpp # src/slic3r/GUI/AmsMappingPopup.cpp # src/slic3r/GUI/BackgroundSlicingProcess.cpp # src/slic3r/GUI/ConfigManipulation.cpp # src/slic3r/GUI/GCodeViewer.cpp # src/slic3r/GUI/GCodeViewer.hpp # src/slic3r/GUI/GLCanvas3D.cpp # src/slic3r/GUI/GUI_App.cpp # src/slic3r/GUI/MainFrame.cpp # src/slic3r/GUI/PartPlate.cpp # src/slic3r/GUI/Plater.cpp # src/slic3r/GUI/Preferences.cpp # src/slic3r/GUI/SelectMachine.cpp # src/slic3r/GUI/Widgets/AMSControl.cpp # src/slic3r/GUI/wxMediaCtrl2.cpp # src/slic3r/Utils/Process.cpp # version.inc
This commit is contained in:
commit
9f598046d1
658 changed files with 70312 additions and 4877 deletions
|
@ -1468,7 +1468,7 @@ void Tab::on_value_change(const std::string& opt_key, const boost::any& value)
|
|||
if (is_support_filament(interface_filament_id) && !(m_config->opt_float("support_top_z_distance") == 0 && m_config->opt_float("support_interface_spacing") == 0 &&
|
||||
m_config->opt_enum<SupportMaterialInterfacePattern>("support_interface_pattern") == SupportMaterialInterfacePattern::smipConcentric)) {
|
||||
wxString msg_text = _L("When using support material for the support interface, We recommend the following settings:\n"
|
||||
"0 top z distance, 0 interface spacing, concentric pattern.");
|
||||
"0 top z distance, 0 interface spacing, concentric pattern and disable independent support layer height");
|
||||
msg_text += "\n\n" + _L("Change these settings automatically? \n"
|
||||
"Yes - Change these settings automatically\n"
|
||||
"No - Do not change these settings for me");
|
||||
|
@ -1478,6 +1478,7 @@ void Tab::on_value_change(const std::string& opt_key, const boost::any& value)
|
|||
new_conf.set_key_value("support_top_z_distance", new ConfigOptionFloat(0));
|
||||
new_conf.set_key_value("support_interface_spacing", new ConfigOptionFloat(0));
|
||||
new_conf.set_key_value("support_interface_pattern", new ConfigOptionEnum<SupportMaterialInterfacePattern>(SupportMaterialInterfacePattern::smipConcentric));
|
||||
new_conf.set_key_value("independent_support_layer_height", new ConfigOptionBool(false));
|
||||
m_config_manipulation.apply(m_config, &new_conf);
|
||||
}
|
||||
wxGetApp().plater()->update();
|
||||
|
@ -2018,10 +2019,10 @@ void TabPrint::build()
|
|||
optgroup->append_single_option_line("support_expansion", "support#base-pattern");
|
||||
//optgroup->append_single_option_line("support_interface_loop_pattern");
|
||||
|
||||
optgroup->append_single_option_line("support_object_xy_distance", "support#supportobject-xy-distance");
|
||||
optgroup->append_single_option_line("support_object_xy_distance", "support");
|
||||
optgroup->append_single_option_line("bridge_no_support", "support#base-pattern");
|
||||
optgroup->append_single_option_line("max_bridge_length", "support#base-pattern");
|
||||
//optgroup->append_single_option_line("independent_support_layer_height");
|
||||
optgroup->append_single_option_line("independent_support_layer_height", "support");
|
||||
|
||||
page = add_options_page(L("Others"), "advanced");
|
||||
optgroup = page->new_optgroup(L("Bed adhension"), L"param_adhension");
|
||||
|
@ -2075,6 +2076,13 @@ void TabPrint::build()
|
|||
option.opt.height = 15;
|
||||
optgroup->append_single_option_line(option);
|
||||
|
||||
optgroup = page->new_optgroup(L("Post-processing scripts"), L"param_gcode", 0);
|
||||
option = optgroup->get_option("post_process");
|
||||
option.opt.full_width = true;
|
||||
option.opt.is_code = true;
|
||||
option.opt.height = 15;
|
||||
optgroup->append_single_option_line(option);
|
||||
|
||||
#if 0
|
||||
//page = add_options_page(L("Dependencies"), "advanced.png");
|
||||
// optgroup = page->new_optgroup(L("Profile dependencies"));
|
||||
|
@ -2328,8 +2336,9 @@ void TabPrintModel::reset_model_config()
|
|||
wxGetApp().plater()->take_snapshot(std::string("Reset Options"));
|
||||
for (auto config : m_object_configs) {
|
||||
auto rmkeys = intersect(m_keys, config.second->keys());
|
||||
for (auto & k : rmkeys)
|
||||
for (auto& k : rmkeys) {
|
||||
config.second->erase(k);
|
||||
}
|
||||
notify_changed(config.first);
|
||||
}
|
||||
update_model_config();
|
||||
|
@ -2450,6 +2459,44 @@ void TabPrintPart::notify_changed(ObjectBase * object)
|
|||
wxGetApp().obj_list()->object_config_options_changed({vol->get_object(), vol});
|
||||
}
|
||||
|
||||
static std::string layer_height = "layer_height";
|
||||
TabPrintLayer::TabPrintLayer(ParamsPanel* parent) :
|
||||
TabPrintModel(parent, concat({ layer_height }, PrintRegionConfig().keys()))
|
||||
{
|
||||
m_parent_tab = wxGetApp().get_model_tab();
|
||||
}
|
||||
|
||||
void TabPrintLayer::notify_changed(ObjectBase * object)
|
||||
{
|
||||
for (auto config : m_object_configs) {
|
||||
if (!config.second->has(layer_height)) {
|
||||
auto option = m_parent_tab->get_config()->option(layer_height);
|
||||
config.second->set_key_value(layer_height, option->clone());
|
||||
}
|
||||
auto objects_list = wxGetApp().obj_list();
|
||||
wxDataViewItemArray items;
|
||||
objects_list->GetSelections(items);
|
||||
for (auto item : items)
|
||||
objects_list->add_settings_item(item, &config.second->get());
|
||||
}
|
||||
}
|
||||
|
||||
void TabPrintLayer::update_custom_dirty()
|
||||
{
|
||||
for (auto k : m_null_keys) m_options_list[k] = 0;
|
||||
for (auto k : m_all_keys) m_options_list[k] &= ~osSystemValue;
|
||||
|
||||
auto option = m_parent_tab->get_config()->option(layer_height);
|
||||
for (auto config : m_object_configs) {
|
||||
if (!config.second->has(layer_height)) {
|
||||
config.second->set_key_value(layer_height, option->clone());
|
||||
m_options_list[layer_height] = osInitValue | osSystemValue;
|
||||
}
|
||||
else if (config.second->opt_float(layer_height) == option->getFloat())
|
||||
m_options_list[layer_height] = osInitValue | osSystemValue;
|
||||
}
|
||||
}
|
||||
|
||||
bool Tab::validate_custom_gcode(const wxString& title, const std::string& gcode)
|
||||
{
|
||||
std::vector<std::string> tags;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue