FIX: add object id for gcode check

and display plater limit error individually
jira: none

Change-Id: Ie6105642667530901be494b344ce853e728ae5fa
(cherry picked from commit acd6016fc834c749307205448e05bffee954c71e)
This commit is contained in:
zhimin.zeng
2024-10-16 10:38:52 +08:00
committed by Noisyfox
parent eec174ccf0
commit 56af264273
5 changed files with 101 additions and 40 deletions

View File

@@ -136,8 +136,7 @@ class Print;
struct GCodeCheckResult
{
int error_code = 0; // 0 means succeed
std::map<int, std::vector<int>> error_infos; // extruder_id to filament_ids
std::map<int, std::vector<std::pair<int, int>>> error_infos; // extruder_id to <filament_id - object_label_id> which cannot printed in this extruder
void reset() {
error_code = 0;
error_infos.clear();
@@ -187,6 +186,7 @@ class Print;
EMovePathType move_path_type{ EMovePathType::Noop_move };
Vec3f arc_center_position{ Vec3f::Zero() }; // mm
std::vector<Vec3f> interpolation_points; // interpolation points of arc for drawing
int object_label_id{-1};
float volumetric_rate() const { return feedrate * mm3_per_mm; }
//BBS: new function to support arc move
@@ -707,6 +707,7 @@ class Print;
bool m_flushing; // mark a section with real flush
bool m_virtual_flushing; // mark a section with virtual flush, only for statistics
bool m_wipe_tower;
int m_object_label_id{-1};
std::vector<float> m_remaining_volume;
bool m_manual_filament_change;