mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-16 05:27:50 +00:00
FIX:Fix the issue of importing GCode array out of bounds
jira: STUDIO-12389 Change-Id: Id7995558bf0e297e2360b338ffbf63d93efa38f0 (cherry picked from commit 6d15a9005769a7dbfb96bb28ce6b57e55bf1c435)
This commit is contained in:
@@ -5436,6 +5436,16 @@ void GCodeProcessor::process_T(const std::string_view command)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void GCodeProcessor::init_filament_maps_and_nozzle_type_when_import_only_gcode()
|
||||||
|
{
|
||||||
|
if (m_filament_maps.empty()) {
|
||||||
|
m_filament_maps.assign((int) EnforcerBlockerType::ExtruderMax, 1);
|
||||||
|
}
|
||||||
|
if (m_result.nozzle_type.empty()) {
|
||||||
|
m_result.nozzle_type.assign((int) EnforcerBlockerType::ExtruderMax, NozzleType::ntUndefine);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void GCodeProcessor::process_filament_change(int id)
|
void GCodeProcessor::process_filament_change(int id)
|
||||||
{
|
{
|
||||||
assert(id < m_result.filaments_count);
|
assert(id < m_result.filaments_count);
|
||||||
|
|||||||
@@ -838,7 +838,7 @@ class Print;
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
GCodeProcessor();
|
GCodeProcessor();
|
||||||
|
void init_filament_maps_and_nozzle_type_when_import_only_gcode();
|
||||||
// check whether the gcode path meets the filament_map grouping requirements
|
// check whether the gcode path meets the filament_map grouping requirements
|
||||||
bool check_multi_extruder_gcode_valid(const std::vector<Polygons> &unprintable_areas,
|
bool check_multi_extruder_gcode_valid(const std::vector<Polygons> &unprintable_areas,
|
||||||
const std::vector<double> &printable_heights,
|
const std::vector<double> &printable_heights,
|
||||||
|
|||||||
@@ -12324,6 +12324,7 @@ void Plater::load_gcode(const wxString& filename)
|
|||||||
|
|
||||||
// process gcode
|
// process gcode
|
||||||
GCodeProcessor processor;
|
GCodeProcessor processor;
|
||||||
|
processor.init_filament_maps_and_nozzle_type_when_import_only_gcode();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
GCodeProcessor::s_IsBBLPrinter = wxGetApp().preset_bundle->is_bbl_vendor();
|
GCodeProcessor::s_IsBBLPrinter = wxGetApp().preset_bundle->is_bbl_vendor();
|
||||||
|
|||||||
Reference in New Issue
Block a user