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;
|
bool is_seq_print = false;
|
||||||
int first_extruder = 0;
|
int first_extruder = 0;
|
||||||
float nozzle_diameter = 0.4;
|
float nozzle_diameter = 0.4;
|
||||||
|
std::string bed_type;
|
||||||
// version 1: use view type ColorPrint (filament color)
|
// version 1: use view type ColorPrint (filament color)
|
||||||
// version 2: use view type FilamentId (filament id)
|
// version 2: use view type FilamentId (filament id)
|
||||||
int version = 2;
|
int version = 2;
|
||||||
|
@ -88,6 +89,7 @@ struct PlateBBoxData
|
||||||
j["first_extruder"] = first_extruder;
|
j["first_extruder"] = first_extruder;
|
||||||
j["nozzle_diameter"] = nozzle_diameter;
|
j["nozzle_diameter"] = nozzle_diameter;
|
||||||
j["version"] = version;
|
j["version"] = version;
|
||||||
|
j["bed_type"] = bed_type;
|
||||||
for (const auto& bbox : bbox_objs) {
|
for (const auto& bbox : bbox_objs) {
|
||||||
nlohmann::json j_bbox;
|
nlohmann::json j_bbox;
|
||||||
bbox.to_json(j_bbox);
|
bbox.to_json(j_bbox);
|
||||||
|
@ -102,6 +104,7 @@ struct PlateBBoxData
|
||||||
j.at("first_extruder").get_to(first_extruder);
|
j.at("first_extruder").get_to(first_extruder);
|
||||||
j.at("nozzle_diameter").get_to(nozzle_diameter);
|
j.at("nozzle_diameter").get_to(nozzle_diameter);
|
||||||
j.at("version").get_to(version);
|
j.at("version").get_to(version);
|
||||||
|
j.at("bed_type").get_to(bed_type);
|
||||||
for (auto& bbox_j : j.at("bbox_objects")) {
|
for (auto& bbox_j : j.at("bbox_objects")) {
|
||||||
BBoxData bbox_data;
|
BBoxData bbox_data;
|
||||||
bbox_data.from_json(bbox_j);
|
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";
|
type_str = "cool_plate";
|
||||||
break;
|
break;
|
||||||
case btEP:
|
case btEP:
|
||||||
type_str = "engineering_plate";
|
type_str = "eng_plate";
|
||||||
break;
|
break;
|
||||||
case btPEI:
|
case btPEI:
|
||||||
type_str = "high_temp_plate";
|
type_str = "hot_plate";
|
||||||
break;
|
break;
|
||||||
case btPTE:
|
case btPTE:
|
||||||
type_str = "frosted_plate";
|
type_str = "textured_plate";
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
type_str = "unknown";
|
type_str = "unknown";
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -6056,6 +6056,7 @@ PlateBBoxData Plater::priv::generate_first_layer_bbox()
|
||||||
auto print = this->background_process.m_fff_print;
|
auto print = this->background_process.m_fff_print;
|
||||||
bboxdata.is_seq_print = (print->config().print_sequence == PrintSequence::ByObject);
|
bboxdata.is_seq_print = (print->config().print_sequence == PrintSequence::ByObject);
|
||||||
bboxdata.first_extruder = print->get_tool_ordering().first_extruder();
|
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
|
// get nozzle diameter
|
||||||
auto opt_nozzle_diameters = print->config().option<ConfigOptionFloats>("nozzle_diameter");
|
auto opt_nozzle_diameters = print->config().option<ConfigOptionFloats>("nozzle_diameter");
|
||||||
if (opt_nozzle_diameters != nullptr)
|
if (opt_nozzle_diameters != nullptr)
|
||||||
|
|
Loading…
Reference in New Issue