Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/prusa3d/PrusaSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Matena <lukasmatena@seznam.cz>2021-01-15 20:29:19 +0300
committerVojtech Bubnik <bubnikv@gmail.com>2021-01-19 12:29:35 +0300
commita5dc3c4b66c4f0b642780460928d31c64075704a (patch)
tree0322f846e2f82acba44ca3478b670c2b9e534467 /src/PrusaSlicer.cpp
parent5294a48ee8bdbf808ed4b9570778657b3c2e15ab (diff)
Bugfix: CLI slicer should slice in FDM mode when no printer_technology is provided.
This was broken between 2.2.0 and 2.3.0 (1bffc2b) and changed the CLI behaviour. Also related to 5029.
Diffstat (limited to 'src/PrusaSlicer.cpp')
-rw-r--r--src/PrusaSlicer.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/PrusaSlicer.cpp b/src/PrusaSlicer.cpp
index 277bf1250..a990620f5 100644
--- a/src/PrusaSlicer.cpp
+++ b/src/PrusaSlicer.cpp
@@ -197,6 +197,9 @@ int CLI::run(int argc, char **argv)
// Normalizing after importing the 3MFs / AMFs
m_print_config.normalize_fdm();
+ if (printer_technology == ptUnknown)
+ printer_technology = std::find(m_actions.begin(), m_actions.end(), "export_sla") == m_actions.end() ? ptFFF : ptSLA;
+
// Initialize full print configs for both the FFF and SLA technologies.
FullPrintConfig fff_print_config;
SLAFullPrintConfig sla_print_config;
@@ -205,7 +208,8 @@ int CLI::run(int argc, char **argv)
if (printer_technology == ptFFF) {
fff_print_config.apply(m_print_config, true);
m_print_config.apply(fff_print_config, true);
- } else if (printer_technology == ptSLA) {
+ } else {
+ assert(printer_technology == ptSLA);
// The default value has to be different from the one in fff mode.
sla_print_config.printer_technology.value = ptSLA;
sla_print_config.output_filename_format.value = "[input_filename_base].sl1";
@@ -481,12 +485,6 @@ int CLI::run(int argc, char **argv)
if (printer_technology == ptFFF) {
for (auto* mo : model.objects)
fff_print.auto_assign_extruders(mo);
- } else {
- // The default for "output_filename_format" is good for FDM: "[input_filename_base].gcode"
- // Replace it with a reasonable SLA default.
- std::string &format = m_print_config.opt_string("output_filename_format", true);
- if (format == static_cast<const ConfigOptionString*>(m_print_config.def()->get("output_filename_format")->default_value.get())->value)
- format = "[input_filename_base].SL1";
}
print->apply(model, m_print_config);
std::string err = print->validate();