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
This commit is contained in:
Eldenroot
2026-05-15 03:58:45 +02:00
committed by GitHub
parent 23e6d8440d
commit 40888242c6

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"))