FIX: issue 551: support to import prusa 3mf file

Change-Id: I6d00fab62304893cc5f1aba0d0a74e4c6194bce9
This commit is contained in:
zhimin.zeng 2022-07-29 15:28:56 +08:00 committed by Lane.Wei
parent acc6d70db9
commit 09d5651c39
5 changed files with 209 additions and 14 deletions

View file

@ -577,6 +577,12 @@ enum class ConversionType : int {
CONV_FROM_METER,
};
enum class En3mfType : int {
From_BBS,
From_Prusa,
From_Other
};
class FacetsAnnotation final : public ObjectWithTimestamp {
public:
// Assign the content if the timestamp differs, don't assign an ObjectID.
@ -1280,8 +1286,8 @@ public:
// BBS: backup
static Model read_from_archive(
const std::string& input_file,
DynamicPrintConfig* config, ConfigSubstitutionContext* config_substitutions,
LoadStrategy options = LoadStrategy::AddDefaultInstances, PlateDataPtrs* plate_data = nullptr, std::vector<Preset*>* project_presets = nullptr, bool* is_bbl_3mf = nullptr, Semver* file_version = nullptr, Import3mfProgressFn proFn = nullptr, BBLProject* project = nullptr);
DynamicPrintConfig* config, ConfigSubstitutionContext* config_substitutions, En3mfType& out_file_type,
LoadStrategy options = LoadStrategy::AddDefaultInstances, PlateDataPtrs* plate_data = nullptr, std::vector<Preset*>* project_presets = nullptr, Semver* file_version = nullptr, Import3mfProgressFn proFn = nullptr, BBLProject* project = nullptr);
// Add a new ModelObject to this Model, generate a new ID for this ModelObject.
ModelObject* add_object();