FIX: save and load layer_range to 3mf
Change-Id: Ie18aa8140b5c0fbba87be6ef2f8d0c924fa61791
This commit is contained in:
parent
db282b7515
commit
5a53f33859
|
@ -154,8 +154,8 @@ const std::string BBS_MODEL_CONFIG_FILE = "Metadata/model_settings.config";
|
||||||
const std::string BBS_MODEL_CONFIG_RELS_FILE = "Metadata/_rels/model_settings.config.rels";
|
const std::string BBS_MODEL_CONFIG_RELS_FILE = "Metadata/_rels/model_settings.config.rels";
|
||||||
const std::string SLICE_INFO_CONFIG_FILE = "Metadata/slice_info.config";
|
const std::string SLICE_INFO_CONFIG_FILE = "Metadata/slice_info.config";
|
||||||
const std::string BBS_LAYER_HEIGHTS_PROFILE_FILE = "Metadata/layer_heights_profile.txt";
|
const std::string BBS_LAYER_HEIGHTS_PROFILE_FILE = "Metadata/layer_heights_profile.txt";
|
||||||
/*const std::string LAYER_CONFIG_RANGES_FILE = "Metadata/Prusa_Slicer_layer_config_ranges.xml";
|
const std::string LAYER_CONFIG_RANGES_FILE = "Metadata/layer_config_ranges.xml";
|
||||||
const std::string SLA_SUPPORT_POINTS_FILE = "Metadata/Slic3r_PE_sla_support_points.txt";
|
/*const std::string SLA_SUPPORT_POINTS_FILE = "Metadata/Slic3r_PE_sla_support_points.txt";
|
||||||
const std::string SLA_DRAIN_HOLES_FILE = "Metadata/Slic3r_PE_sla_drain_holes.txt";*/
|
const std::string SLA_DRAIN_HOLES_FILE = "Metadata/Slic3r_PE_sla_drain_holes.txt";*/
|
||||||
const std::string CUSTOM_GCODE_PER_PRINT_Z_FILE = "Metadata/custom_gcode_per_layer.xml";
|
const std::string CUSTOM_GCODE_PER_PRINT_Z_FILE = "Metadata/custom_gcode_per_layer.xml";
|
||||||
const std::string AUXILIARY_DIR = "Auxiliaries/";
|
const std::string AUXILIARY_DIR = "Auxiliaries/";
|
||||||
|
@ -750,8 +750,8 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
typedef std::map<int, CutObjectInfo> IdToCutObjectInfoMap;
|
typedef std::map<int, CutObjectInfo> IdToCutObjectInfoMap;
|
||||||
//typedef std::map<Id, Geometry> IdToGeometryMap;
|
//typedef std::map<Id, Geometry> IdToGeometryMap;
|
||||||
typedef std::map<int, std::vector<coordf_t>> IdToLayerHeightsProfileMap;
|
typedef std::map<int, std::vector<coordf_t>> IdToLayerHeightsProfileMap;
|
||||||
/*typedef std::map<int, t_layer_config_ranges> IdToLayerConfigRangesMap;
|
typedef std::map<int, t_layer_config_ranges> IdToLayerConfigRangesMap;
|
||||||
typedef std::map<int, std::vector<sla::SupportPoint>> IdToSlaSupportPointsMap;
|
/*typedef std::map<int, std::vector<sla::SupportPoint>> IdToSlaSupportPointsMap;
|
||||||
typedef std::map<int, std::vector<sla::DrainHole>> IdToSlaDrainHolesMap;*/
|
typedef std::map<int, std::vector<sla::DrainHole>> IdToSlaDrainHolesMap;*/
|
||||||
|
|
||||||
struct ObjectImporter
|
struct ObjectImporter
|
||||||
|
@ -941,8 +941,8 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
IdToMetadataMap m_objects_metadata;
|
IdToMetadataMap m_objects_metadata;
|
||||||
IdToCutObjectInfoMap m_cut_object_infos;
|
IdToCutObjectInfoMap m_cut_object_infos;
|
||||||
IdToLayerHeightsProfileMap m_layer_heights_profiles;
|
IdToLayerHeightsProfileMap m_layer_heights_profiles;
|
||||||
/*IdToLayerConfigRangesMap m_layer_config_ranges;
|
IdToLayerConfigRangesMap m_layer_config_ranges;
|
||||||
IdToSlaSupportPointsMap m_sla_support_points;
|
/*IdToSlaSupportPointsMap m_sla_support_points;
|
||||||
IdToSlaDrainHolesMap m_sla_drain_holes;*/
|
IdToSlaDrainHolesMap m_sla_drain_holes;*/
|
||||||
std::string m_curr_metadata_name;
|
std::string m_curr_metadata_name;
|
||||||
std::string m_curr_characters;
|
std::string m_curr_characters;
|
||||||
|
@ -1198,7 +1198,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
m_curr_config.volume_id = -1;
|
m_curr_config.volume_id = -1;
|
||||||
m_objects_metadata.clear();
|
m_objects_metadata.clear();
|
||||||
m_layer_heights_profiles.clear();
|
m_layer_heights_profiles.clear();
|
||||||
//m_layer_config_ranges.clear();
|
m_layer_config_ranges.clear();
|
||||||
//m_sla_support_points.clear();
|
//m_sla_support_points.clear();
|
||||||
m_curr_metadata_name.clear();
|
m_curr_metadata_name.clear();
|
||||||
m_curr_characters.clear();
|
m_curr_characters.clear();
|
||||||
|
@ -1509,10 +1509,10 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
_extract_layer_heights_profile_config_from_archive(archive, stat);
|
_extract_layer_heights_profile_config_from_archive(archive, stat);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
/*if (boost::algorithm::iequals(name, LAYER_CONFIG_RANGES_FILE)) {
|
if (boost::algorithm::iequals(name, LAYER_CONFIG_RANGES_FILE)) {
|
||||||
// extract slic3r layer config ranges file
|
// extract slic3r layer config ranges file
|
||||||
_extract_layer_config_ranges_from_archive(archive, stat, config_substitutions);
|
_extract_layer_config_ranges_from_archive(archive, stat, config_substitutions);
|
||||||
}*/
|
}
|
||||||
//BBS: disable SLA related files currently
|
//BBS: disable SLA related files currently
|
||||||
/*else if (boost::algorithm::iequals(name, SLA_SUPPORT_POINTS_FILE)) {
|
/*else if (boost::algorithm::iequals(name, SLA_SUPPORT_POINTS_FILE)) {
|
||||||
// extract sla support points file
|
// extract sla support points file
|
||||||
|
@ -1686,12 +1686,12 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
model_object->layer_height_profile.set(std::move(obj_layer_heights_profile->second));
|
model_object->layer_height_profile.set(std::move(obj_layer_heights_profile->second));
|
||||||
|
|
||||||
// m_layer_config_ranges are indexed by a 1 based model object index.
|
// m_layer_config_ranges are indexed by a 1 based model object index.
|
||||||
/*IdToLayerConfigRangesMap::iterator obj_layer_config_ranges = m_layer_config_ranges.find(object.second + 1);
|
IdToLayerConfigRangesMap::iterator obj_layer_config_ranges = m_layer_config_ranges.find(object.second + 1);
|
||||||
if (obj_layer_config_ranges != m_layer_config_ranges.end())
|
if (obj_layer_config_ranges != m_layer_config_ranges.end())
|
||||||
model_object->layer_config_ranges = std::move(obj_layer_config_ranges->second);
|
model_object->layer_config_ranges = std::move(obj_layer_config_ranges->second);
|
||||||
|
|
||||||
// m_sla_support_points are indexed by a 1 based model object index.
|
// m_sla_support_points are indexed by a 1 based model object index.
|
||||||
IdToSlaSupportPointsMap::iterator obj_sla_support_points = m_sla_support_points.find(object.second + 1);
|
/*IdToSlaSupportPointsMap::iterator obj_sla_support_points = m_sla_support_points.find(object.second + 1);
|
||||||
if (obj_sla_support_points != m_sla_support_points.end() && !obj_sla_support_points->second.empty()) {
|
if (obj_sla_support_points != m_sla_support_points.end() && !obj_sla_support_points->second.empty()) {
|
||||||
model_object->sla_support_points = std::move(obj_sla_support_points->second);
|
model_object->sla_support_points = std::move(obj_sla_support_points->second);
|
||||||
model_object->sla_points_status = sla::PointsStatus::UserModified;
|
model_object->sla_points_status = sla::PointsStatus::UserModified;
|
||||||
|
@ -2435,7 +2435,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
void _BBS_3MF_Importer::_extract_layer_config_ranges_from_archive(mz_zip_archive& archive, const mz_zip_archive_file_stat& stat, ConfigSubstitutionContext& config_substitutions)
|
void _BBS_3MF_Importer::_extract_layer_config_ranges_from_archive(mz_zip_archive& archive, const mz_zip_archive_file_stat& stat, ConfigSubstitutionContext& config_substitutions)
|
||||||
{
|
{
|
||||||
if (stat.m_uncomp_size > 0) {
|
if (stat.m_uncomp_size > 0) {
|
||||||
|
@ -2493,7 +2493,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
void _BBS_3MF_Importer::_extract_sla_support_points_from_archive(mz_zip_archive& archive, const mz_zip_archive_file_stat& stat)
|
void _BBS_3MF_Importer::_extract_sla_support_points_from_archive(mz_zip_archive& archive, const mz_zip_archive_file_stat& stat)
|
||||||
{
|
{
|
||||||
if (stat.m_uncomp_size > 0) {
|
if (stat.m_uncomp_size > 0) {
|
||||||
|
@ -5353,14 +5353,16 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
proFn(EXPORT_STAGE_ADD_LAYER_RANGE, 0, 1, cb_cancel);
|
proFn(EXPORT_STAGE_ADD_LAYER_RANGE, 0, 1, cb_cancel);
|
||||||
if (cb_cancel)
|
if (cb_cancel)
|
||||||
return false;
|
return false;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
// Adds layer config ranges file ("Metadata/Slic3r_PE_layer_config_ranges.txt").
|
// Adds layer config ranges file ("Metadata/Slic3r_PE_layer_config_ranges.txt").
|
||||||
// All layer height profiles of all ModelObjects are stored here, indexed by 1 based index of the ModelObject in Model.
|
// All layer height profiles of all ModelObjects are stored here, indexed by 1 based index of the ModelObject in Model.
|
||||||
// The index differes from the index of an object ID of an object instance of a 3MF file!
|
// The index differes from the index of an object ID of an object instance of a 3MF file!
|
||||||
if (!_add_layer_config_ranges_file_to_archive(archive, model)) {
|
if (!_add_layer_config_ranges_file_to_archive(archive, model)) {
|
||||||
|
close_zip_writer(&archive);
|
||||||
|
boost::filesystem::remove(filename);
|
||||||
return false;
|
return false;
|
||||||
}*/
|
}
|
||||||
|
|
||||||
// BBS progress point
|
// BBS progress point
|
||||||
/*BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" <<__LINE__ << boost::format("export 3mf EXPORT_STAGE_ADD_SUPPORT\n");
|
/*BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" <<__LINE__ << boost::format("export 3mf EXPORT_STAGE_ADD_SUPPORT\n");
|
||||||
|
@ -6406,7 +6408,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
bool _BBS_3MF_Exporter::_add_layer_config_ranges_file_to_archive(mz_zip_archive& archive, Model& model)
|
bool _BBS_3MF_Exporter::_add_layer_config_ranges_file_to_archive(mz_zip_archive& archive, Model& model)
|
||||||
{
|
{
|
||||||
std::string out = "";
|
std::string out = "";
|
||||||
|
@ -6466,6 +6468,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
bool _BBS_3MF_Exporter::_add_sla_support_points_file_to_archive(mz_zip_archive& archive, Model& model)
|
bool _BBS_3MF_Exporter::_add_sla_support_points_file_to_archive(mz_zip_archive& archive, Model& model)
|
||||||
{
|
{
|
||||||
assert(is_decimal_separator_point());
|
assert(is_decimal_separator_point());
|
||||||
|
|
Loading…
Reference in New Issue