ENH: save bed type in 3mf for first layer scan
Change-Id: Id3d83a58f0cca4899e3247b5854500af79cf1b34 (cherry picked from commit d192ae2d8c7d404048e980cfaa0846be48c5fbad)
This commit is contained in:
parent
f9793be848
commit
7bdba58b98
|
@ -76,6 +76,7 @@ struct PlateBBoxData
|
|||
bool is_seq_print = false;
|
||||
int first_extruder = 0;
|
||||
float nozzle_diameter = 0.4;
|
||||
std::string bed_type;
|
||||
// version 1: use view type ColorPrint (filament color)
|
||||
// version 2: use view type FilamentId (filament id)
|
||||
int version = 2;
|
||||
|
@ -88,6 +89,7 @@ struct PlateBBoxData
|
|||
j["first_extruder"] = first_extruder;
|
||||
j["nozzle_diameter"] = nozzle_diameter;
|
||||
j["version"] = version;
|
||||
j["bed_type"] = bed_type;
|
||||
for (const auto& bbox : bbox_objs) {
|
||||
nlohmann::json j_bbox;
|
||||
bbox.to_json(j_bbox);
|
||||
|
@ -102,6 +104,7 @@ struct PlateBBoxData
|
|||
j.at("first_extruder").get_to(first_extruder);
|
||||
j.at("nozzle_diameter").get_to(nozzle_diameter);
|
||||
j.at("version").get_to(version);
|
||||
j.at("bed_type").get_to(bed_type);
|
||||
for (auto& bbox_j : j.at("bbox_objects")) {
|
||||
BBoxData bbox_data;
|
||||
bbox_data.from_json(bbox_j);
|
||||
|
|
|
@ -192,13 +192,14 @@ static std::string bed_type_to_gcode_string(const BedType type)
|
|||
type_str = "cool_plate";
|
||||
break;
|
||||
case btEP:
|
||||
type_str = "engineering_plate";
|
||||
type_str = "eng_plate";
|
||||
break;
|
||||
case btPEI:
|
||||
type_str = "high_temp_plate";
|
||||
type_str = "hot_plate";
|
||||
break;
|
||||
case btPTE:
|
||||
type_str = "frosted_plate";
|
||||
type_str = "textured_plate";
|
||||
break;
|
||||
default:
|
||||
type_str = "unknown";
|
||||
break;
|
||||
|
|
|
@ -6056,6 +6056,7 @@ PlateBBoxData Plater::priv::generate_first_layer_bbox()
|
|||
auto print = this->background_process.m_fff_print;
|
||||
bboxdata.is_seq_print = (print->config().print_sequence == PrintSequence::ByObject);
|
||||
bboxdata.first_extruder = print->get_tool_ordering().first_extruder();
|
||||
bboxdata.bed_type = bed_type_to_gcode_string(print->config().curr_bed_type.value);
|
||||
// get nozzle diameter
|
||||
auto opt_nozzle_diameters = print->config().option<ConfigOptionFloats>("nozzle_diameter");
|
||||
if (opt_nozzle_diameters != nullptr)
|
||||
|
|
Loading…
Reference in New Issue