From a93f487e2e8a6d22343f99fc001f99885ff97c83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20=C3=85kerlind?= Date: Fri, 17 Jan 2020 23:30:20 +0100 Subject: [PATCH] Add G-code export for M3D Micro --- xs/src/libslic3r/GCodeWriter.cpp | 4 +++- xs/src/libslic3r/PrintConfig.cpp | 2 ++ xs/src/libslic3r/PrintConfig.hpp | 5 +++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/xs/src/libslic3r/GCodeWriter.cpp b/xs/src/libslic3r/GCodeWriter.cpp index 8b1e56754e..aa9f8e8f23 100644 --- a/xs/src/libslic3r/GCodeWriter.cpp +++ b/xs/src/libslic3r/GCodeWriter.cpp @@ -67,7 +67,9 @@ GCodeWriter::preamble() std::ostringstream gcode; if (FLAVOR_IS_NOT(gcfMakerWare)) { - gcode << "G21 ; set units to millimeters\n"; + if (FLAVOR_IS_NOT(gcfM3dMicro)) { + gcode << "G21 ; set units to millimeters\n"; + } gcode << "G90 ; use absolute coordinates\n"; } if (FLAVOR_IS(gcfRepRap) || FLAVOR_IS(gcfTeacup) || FLAVOR_IS(gcfRepetier) || FLAVOR_IS(gcfSmoothie)) { diff --git a/xs/src/libslic3r/PrintConfig.cpp b/xs/src/libslic3r/PrintConfig.cpp index 9b72137a23..fc50bcf165 100644 --- a/xs/src/libslic3r/PrintConfig.cpp +++ b/xs/src/libslic3r/PrintConfig.cpp @@ -666,6 +666,7 @@ PrintConfigDef::PrintConfigDef() def->enum_values.push_back("mach3"); def->enum_values.push_back("machinekit"); def->enum_values.push_back("smoothie"); + def->enum_values.push_back("m3dmicro"); def->enum_values.push_back("no-extrusion"); def->enum_labels.push_back("RepRap (Marlin/Sprinter)"); def->enum_labels.push_back("Repetier"); @@ -675,6 +676,7 @@ PrintConfigDef::PrintConfigDef() def->enum_labels.push_back("Mach3/LinuxCNC"); def->enum_labels.push_back("Machinekit"); def->enum_labels.push_back("Smoothieware"); + def->enum_labels.push_back("M3D Micro"); def->enum_labels.push_back("No extrusion"); def->default_value = new ConfigOptionEnum(gcfRepRap); diff --git a/xs/src/libslic3r/PrintConfig.hpp b/xs/src/libslic3r/PrintConfig.hpp index 0c9bd27f7a..b39ad84ee9 100644 --- a/xs/src/libslic3r/PrintConfig.hpp +++ b/xs/src/libslic3r/PrintConfig.hpp @@ -26,7 +26,7 @@ namespace Slic3r { enum GCodeFlavor { - gcfRepRap, gcfTeacup, gcfMakerWare, gcfSailfish, gcfMach3, gcfMachinekit, gcfNoExtrusion, gcfSmoothie, gcfRepetier, + gcfRepRap, gcfTeacup, gcfMakerWare, gcfSailfish, gcfMach3, gcfMachinekit, gcfNoExtrusion, gcfSmoothie, gcfRepetier, gcfM3dMicro }; enum HostType { @@ -58,7 +58,8 @@ template<> inline t_config_enum_values ConfigOptionEnum::get_enum_v keys_map["mach3"] = gcfMach3; keys_map["machinekit"] = gcfMachinekit; keys_map["no-extrusion"] = gcfNoExtrusion; - keys_map["smoothie"] = gcfSmoothie; + keys_map["smoothie"] = gcfSmoothie; + keys_map["m3dmicro"] = gcfM3dMicro; return keys_map; }