diff --git a/src/libslic3r/Format/bbs_3mf.cpp b/src/libslic3r/Format/bbs_3mf.cpp index b5225f672..68882c53b 100644 --- a/src/libslic3r/Format/bbs_3mf.cpp +++ b/src/libslic3r/Format/bbs_3mf.cpp @@ -3827,6 +3827,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result) bool m_split_model { false }; // save object per file with Production Extention bool m_save_gcode { false }; // whether to save gcode for normal save bool m_skip_model { false }; // skip model when exporting .gcode.3mf + bool m_skip_auxiliary { false }; // skip normal axuiliary files public: //BBS: add plate data related logic @@ -3910,6 +3911,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result) m_split_model = store_params.strategy & SaveStrategy::SplitModel; m_save_gcode = store_params.strategy & SaveStrategy::WithGcode; m_skip_model = store_params.strategy & SaveStrategy::SkipModel; + m_skip_auxiliary = store_params.strategy & SaveStrategy::SkipAuxiliary; boost::system::error_code ec; std::string filename = std::string(store_params.path); @@ -5826,7 +5828,7 @@ bool _BBS_3MF_Exporter::_add_auxiliary_dir_to_archive(mz_zip_archive &archive, c } continue; } - if (boost::filesystem::is_regular_file(dir_entry.path())) + if (boost::filesystem::is_regular_file(dir_entry.path()) && !m_skip_auxiliary) { src_file = dir_entry.path().string(); dst_in_3mf = dir_entry.path().string(); diff --git a/src/libslic3r/Format/bbs_3mf.hpp b/src/libslic3r/Format/bbs_3mf.hpp index d7a90fba7..2feb1c647 100644 --- a/src/libslic3r/Format/bbs_3mf.hpp +++ b/src/libslic3r/Format/bbs_3mf.hpp @@ -93,6 +93,7 @@ enum class SaveStrategy SkipStatic = 1 << 6, SkipModel = 1 << 7, WithSliceInfo = 1 << 8, + SkipAuxiliary = 1 << 9, SplitModel = 0x1000 | ProductionExt, Encrypted = SecureContentExt | SplitModel, diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index 81f1e1da2..80cda8dd2 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -8917,7 +8917,7 @@ int Plater::send_gcode(int plate_idx, Export3mfProgressFn proFn) return -1; } - SaveStrategy strategy = SaveStrategy::Silence | SaveStrategy::SkipModel | SaveStrategy::WithGcode; + SaveStrategy strategy = SaveStrategy::Silence | SaveStrategy::SkipModel | SaveStrategy::WithGcode | SaveStrategy::SkipAuxiliary; #if !BBL_RELEASE_TO_PUBLIC //only save model in QA environment std::string sel = get_app_config()->get("iot_environment"); @@ -8950,7 +8950,7 @@ int Plater::export_config_3mf(int plate_idx, Export3mfProgressFn proFn) return -1; } - SaveStrategy strategy = SaveStrategy::Silence | SaveStrategy::SkipModel | SaveStrategy::WithSliceInfo; + SaveStrategy strategy = SaveStrategy::Silence | SaveStrategy::SkipModel | SaveStrategy::WithSliceInfo | SaveStrategy::SkipAuxiliary; result = export_3mf(p->m_print_job_data._3mf_config_path, strategy, plate_idx, proFn); return result;