Compare commits

...

5 Commits

Author SHA1 Message Date
yw4z
cf0dfd12ce Clarify Create nozzle for existing printer (#11773)
* Update CreatePresetsDialog.cpp

* add information for existing nozzles
2026-05-15 10:03:17 +08:00
Eldenroot
40888242c6 CLI: add layer_height and sparse_infill_density and wall_loops into result (#13001)
* CLI: add layer_height into result

cherry pick 0b857b4c77

* add sparse_infill_density and wall_loops

cherry pick ea9b20593c
2026-05-15 09:58:45 +08:00
Ocraftyone
23e6d8440d Bump Devcontainer Ubuntu Version (#12252)
Bump ver
2026-05-15 09:57:41 +08:00
yw4z
3471b24362 Fix: Font rendering pixelated when cleartype disabled (#12201)
init
2026-05-15 09:57:12 +08:00
SoftFever
6852845e0f fixed an logic error when adjust logging level 2026-05-15 09:52:19 +08:00
6 changed files with 38 additions and 5 deletions

View File

@@ -4,7 +4,7 @@
"dockerfile": "Dockerfile",
"args": {
"PLATFORM": "linux/amd64",
"BASE_IMAGE": "mcr.microsoft.com/devcontainers/cpp:ubuntu-22.04"
"BASE_IMAGE": "mcr.microsoft.com/devcontainers/cpp:ubuntu-24.04"
},
"options": ["--platform=linux/amd64"]
},

View File

@@ -172,6 +172,9 @@ typedef struct _sliced_info {
std::vector<sliced_plate_info_t> sliced_plates;
size_t prepare_time;
size_t export_time;
float layer_height{0.f};
float sparse_infill_density{0.f};
int wall_loops{0};
std::vector<std::string> upward_machines;
std::vector<std::string> downward_machines;
}sliced_info_t;
@@ -431,6 +434,9 @@ void record_exit_reson(std::string outputdir, int code, int plate_id, std::strin
j["error_string"] = error_message;
j["prepare_time"] = sliced_info.prepare_time;
j["export_time"] = sliced_info.export_time;
j["layer_height"] = sliced_info.layer_height;
j["wall_loops"] = sliced_info.wall_loops;
j["sparse_infill_density"] = sliced_info.sparse_infill_density;
for (size_t index = 0; index < sliced_info.sliced_plates.size(); index++)
{
json plate_json;
@@ -5898,6 +5904,12 @@ int CLI::run(int argc, char **argv)
DynamicPrintConfig new_print_config = m_print_config;
new_print_config.apply(*part_plate->config());
new_print_config.apply(m_extra_config, true);
if (m_print_config.option<ConfigOptionFloat>("layer_height"))
sliced_info.layer_height = m_print_config.option<ConfigOptionFloat>("layer_height")->value;
if (m_print_config.option<ConfigOptionInt>("wall_loops"))
sliced_info.wall_loops = m_print_config.option<ConfigOptionInt>("wall_loops")->value;
if (m_print_config.option<ConfigOptionPercent>("sparse_infill_density"))
sliced_info.sparse_infill_density = m_print_config.option<ConfigOptionPercent>("sparse_infill_density")->value;
if (new_extruder_count > 1) {
FilamentMapMode map_mode = fmmAutoForFlush;
if (new_print_config.option<ConfigOptionEnum<FilamentMapMode>>("filament_map_mode"))

View File

@@ -117,7 +117,7 @@ void set_logging_level(unsigned int level)
// Orca: force at info or lower level logging for pre-release builds.
// Note: not setting to debug or trace as they might affect long time usage especially with BBL printers.
const std::string version = SoftFever_VERSION;
if (level > (unsigned int) boost::log::trivial::info &&
if (level < (unsigned int) boost::log::trivial::info &&
(boost::algorithm::icontains(version, "dev") || boost::algorithm::icontains(version, "alpha") ||
boost::algorithm::icontains(version, "beta"))) {
logSeverity = boost::log::trivial::info;

View File

@@ -3378,9 +3378,30 @@ bool CreatePrinterPresetDialog::validate_input_valid()
if (auto preset = wxGetApp().preset_bundle->printers.find_preset(custom_printer_name)) {
if (preset->is_system) {
MessageDialog dlg(this, _L("The system preset does not allow creation. \nPlease re-enter the printer model or nozzle diameter."), wxString(SLIC3R_APP_FULL_NAME) + " - " + _L("Info"),
wxYES | wxYES_DEFAULT | wxCENTRE);
dlg.ShowModal();
// ORCA offer switcing to existing preset to reduce confusion
std::string diameters;
auto printer_model = preset->config.opt_string("printer_model");
for (auto &preset : wxGetApp().preset_bundle->printers) {
if (preset.config.opt_string("printer_model") == printer_model)
diameters += preset.config.opt_string("printer_variant") + " ";
}
MessageDialog dlg(this, _L("The system preset does not allow creation. \nPlease re-enter the printer model or nozzle diameter.")
+ _L("\n\nAvailable nozzle profiles for this printer:")
+ "\n" + diameters
+ _L("\n\nChoose YES to switch existing preset:")
+ "\n" + preset->name
, wxString(SLIC3R_APP_FULL_NAME) + " - " + _L("Info")
, wxYES | wxYES_DEFAULT | wxNO | wxCENTRE);
if (dlg.ShowModal() == wxID_YES){
auto bundle = wxGetApp().preset_bundle;
bundle->printers.select_preset_by_name(preset->name, true);
bundle->update_compatible(PresetSelectCompatibleType::Always);
wxGetApp().load_current_presets();
wxGetApp().mainframe->update_side_preset_ui();
wxGetApp().sidebar().update_ui_from_settings();
wxGetApp().sidebar().update_all_preset_comboboxes();
EndModal(wxID_CANCEL);
}
return false;
}
}