![]() |
Prusa Slicer 2.6.0
|
Inheritance diagram for Slic3r::_3MF_Importer:
Collaboration diagram for Slic3r::_3MF_Importer:Classes | |
| struct | Component |
| struct | CurrentConfig |
| struct | CurrentObject |
| struct | CutObjectInfo |
| struct | Geometry |
| struct | Instance |
| struct | Metadata |
| struct | ObjectMetadata |
Public Member Functions | |
| _3MF_Importer () | |
| ~_3MF_Importer () | |
| bool | load_model_from_file (const std::string &filename, Model &model, DynamicPrintConfig &config, ConfigSubstitutionContext &config_substitutions, bool check_version) |
| unsigned int | version () const |
| boost::optional< Semver > | prusaslicer_generator_version () const |
| void | log_errors () |
Protected Member Functions | |
| void | add_error (const std::string &error) |
| void | clear_errors () |
Private Types | |
| typedef std::vector< Component > | ComponentsList |
| typedef std::vector< Metadata > | MetadataList |
| typedef std::map< int, int > | IdToModelObjectMap |
| typedef std::map< int, ComponentsList > | IdToAliasesMap |
| typedef std::vector< Instance > | InstancesList |
| typedef std::map< int, ObjectMetadata > | IdToMetadataMap |
| typedef std::map< int, Geometry > | IdToGeometryMap |
| typedef std::map< int, std::vector< coordf_t > > | IdToLayerHeightsProfileMap |
| typedef std::map< int, t_layer_config_ranges > | IdToLayerConfigRangesMap |
| typedef std::map< int, CutObjectInfo > | IdToCutObjectInfoMap |
| typedef std::map< int, std::vector< sla::SupportPoint > > | IdToSlaSupportPointsMap |
| typedef std::map< int, std::vector< sla::DrainHole > > | IdToSlaDrainHolesMap |
Static Private Member Functions | |
| static void XMLCALL | _handle_start_model_xml_element (void *userData, const char *name, const char **attributes) |
| static void XMLCALL | _handle_end_model_xml_element (void *userData, const char *name) |
| static void XMLCALL | _handle_model_xml_characters (void *userData, const XML_Char *s, int len) |
| static void XMLCALL | _handle_start_config_xml_element (void *userData, const char *name, const char **attributes) |
| static void XMLCALL | _handle_end_config_xml_element (void *userData, const char *name) |
Private Attributes | |
| unsigned int | m_version |
| bool | m_check_version |
| boost::optional< Semver > | m_prusaslicer_generator_version |
| unsigned int | m_fdm_supports_painting_version = 0 |
| unsigned int | m_seam_painting_version = 0 |
| unsigned int | m_mm_painting_version = 0 |
| XML_Parser | m_xml_parser |
| bool | m_parse_error { false } |
| std::string | m_parse_error_message |
| Model * | m_model |
| float | m_unit_factor |
| CurrentObject | m_curr_object |
| IdToModelObjectMap | m_objects |
| IdToAliasesMap | m_objects_aliases |
| InstancesList | m_instances |
| IdToGeometryMap | m_geometries |
| CurrentConfig | m_curr_config |
| IdToMetadataMap | m_objects_metadata |
| IdToCutObjectInfoMap | m_cut_object_infos |
| IdToLayerHeightsProfileMap | m_layer_heights_profiles |
| IdToLayerConfigRangesMap | m_layer_config_ranges |
| IdToSlaSupportPointsMap | m_sla_support_points |
| IdToSlaDrainHolesMap | m_sla_drain_holes |
| std::string | m_curr_metadata_name |
| std::string | m_curr_characters |
| std::string | m_name |
| std::vector< std::string > | m_errors |
| struct Slic3r::_3MF_Importer::CutObjectInfo |
Collaboration diagram for Slic3r::_3MF_Importer::CutObjectInfo:| Class Members | ||
|---|---|---|
| vector< Connector > | connectors | |
| CutObjectBase | id | |
| struct Slic3r::_3MF_Importer::ObjectMetadata |
Collaboration diagram for Slic3r::_3MF_Importer::ObjectMetadata:| Class Members | ||
|---|---|---|
| typedef vector< VolumeMetadata > | VolumeMetadataList | |
| Class Members | ||
|---|---|---|
| MetadataList | metadata | |
| VolumeMetadataList | volumes | |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
| Slic3r::_3MF_Importer::_3MF_Importer | ( | ) |
| Slic3r::_3MF_Importer::~_3MF_Importer | ( | ) |
References _destroy_xml_parser().
Here is the call graph for this function:
|
private |
References Slic3r::Geometry::Transformation::get_scaling_factor(), and Slic3r::ModelInstance::set_transformation().
Here is the call graph for this function:
|
private |
References Slic3r::Model::objects, and Slic3r::ModelInstance::printable.
|
private |
References m_xml_parser.
Referenced by ~_3MF_Importer(), and _extract_model_from_archive().
Here is the caller graph for this function:
|
private |
References Slic3r::Model::custom_gcode_per_print_z, Slic3r::CustomGCode::Info::gcodes, Slic3r::CustomGCode::Info::mode, mz_zip_reader_extract_to_mem(), and stat.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References mz_zip_reader_extract_to_mem(), and stat.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References mz_zip_reader_extract_to_mem(), Slic3r::range(), and stat.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References mz_zip_reader_extract_to_mem(), and stat.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References mz_zip_reader_extract_to_mem(), and stat.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References _destroy_xml_parser(), _handle_end_model_xml_element(), _handle_model_xml_characters(), _handle_start_model_xml_element(), Slic3r::_3MF_Base::add_error(), m_xml_parser, mz_zip_reader_extract_to_callback(), and stat.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References mz_zip_reader_extract_to_mem(), and stat.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References mz_zip_reader_extract_to_mem(), stat, and version.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References EPSILON, mz_zip_reader_extract_to_mem(), stat, and version.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
References Slic3r::_3MF_Importer::Geometry::custom_seam, Slic3r::_3MF_Importer::Geometry::custom_supports, Slic3r::TriangleMesh::flip_triangles(), indexed_triangle_set::indices, Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::isApprox(), Slic3r::its_compactify_vertices(), MATRIX_KEY, Slic3r::_3MF_Importer::Geometry::mmu_segmentation, MODIFIER_KEY, NAME_KEY, SOURCE_FILE_KEY, SOURCE_IN_INCHES_KEY, SOURCE_IN_METERS_KEY, SOURCE_IS_BUILTIN_VOLUME_KEY, SOURCE_OBJECT_ID_KEY, SOURCE_OFFSET_X_KEY, SOURCE_OFFSET_Y_KEY, SOURCE_OFFSET_Z_KEY, SOURCE_VOLUME_ID_KEY, Slic3r::TriangleMesh::transform(), Slic3r::Geometry::transform3d_from_string(), Slic3r::_3MF_Importer::Geometry::triangles, indexed_triangle_set::vertices, Slic3r::_3MF_Importer::Geometry::vertices, Slic3r::TriangleMesh::volume(), and VOLUME_TYPE_KEY.
Referenced by _load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
References CONFIG_TAG, MESH_TAG, METADATA_TAG, OBJECT_TAG, and VOLUME_TAG.
Referenced by _handle_end_config_xml_element().
Here is the caller graph for this function:
|
staticprivate |
References _handle_end_config_xml_element().
Here is the call graph for this function:
|
private |
|
private |
|
private |
References _u8L, Slic3r::check_painting_version(), FDM_SUPPORTS_PAINTING_VERSION, MM_PAINTING_VERSION, SEAM_PAINTING_VERSION, SLIC3RPE_3MF_VERSION, SLIC3RPE_FDM_SUPPORTS_PAINTING_VERSION, SLIC3RPE_MM_PAINTING_VERSION, SLIC3RPE_SEAM_PAINTING_VERSION, and VERSION_3MF_COMPATIBLE.
Here is the call graph for this function:
|
private |
References Slic3r::Model::delete_object(), Slic3r::ModelObject::instances, and Slic3r::Model::objects.
Here is the call graph for this function:References BUILD_TAG, COMPONENT_TAG, COMPONENTS_TAG, ITEM_TAG, MESH_TAG, METADATA_TAG, MODEL_TAG, OBJECT_TAG, RESOURCES_TAG, TRIANGLE_TAG, TRIANGLES_TAG, VERTEX_TAG, and VERTICES_TAG.
Referenced by _extract_model_from_archive(), and _handle_end_model_xml_element().
Here is the caller graph for this function:
|
staticprivate |
References _handle_end_model_xml_element().
Here is the call graph for this function:
|
private |
References Slic3r::_3MF_Importer::CurrentObject::components, Slic3r::Model::delete_object(), Slic3r::_3MF_Importer::Geometry::empty(), Slic3r::_3MF_Importer::CurrentObject::geometry, Slic3r::_3MF_Importer::CurrentObject::id, Slic3r::_3MF_Importer::CurrentObject::model_object_idx, and Slic3r::_3MF_Importer::CurrentObject::object.
Here is the call graph for this function:
|
private |
|
private |
|
private |
|
private |
|
private |
Referenced by _extract_model_from_archive(), and _handle_model_xml_characters().
Here is the caller graph for this function:
|
staticprivate |
References _handle_model_xml_characters().
Here is the call graph for this function:
|
private |
|
private |
References Slic3r::_3MF_Importer::CurrentObject::components, get_attribute_value_int(), get_attribute_value_string(), get_transform_from_3mf_specs_string(), OBJECTID_ATTR, and TRANSFORM_ATTR.
Here is the call graph for this function:
|
private |
References Slic3r::_3MF_Importer::CurrentObject::components.
|
private |
|
private |
References get_attribute_value_string(), KEY_ATTR, Slic3r::_3MF_Importer::CurrentConfig::object_id, OBJECT_TYPE, TYPE_ATTR, VALUE_ATTR, Slic3r::_3MF_Importer::CurrentConfig::volume_id, and VOLUME_TYPE.
Here is the call graph for this function:
|
private |
References get_attribute_value_int(), ID_ATTR, and Slic3r::_3MF_Importer::CurrentConfig::object_id.
Here is the call graph for this function:
|
private |
References FIRST_TRIANGLE_ID_ATTR, get_attribute_value_int(), LAST_TRIANGLE_ID_ATTR, Slic3r::_3MF_Importer::CurrentConfig::object_id, and Slic3r::_3MF_Importer::CurrentConfig::volume_id.
Here is the call graph for this function:
|
private |
References get_attribute_value_int(), MESH_STAT_BACKWARDS_EDGES, MESH_STAT_DEGENERATED_FACETS, MESH_STAT_EDGES_FIXED, MESH_STAT_FACETS_REMOVED, MESH_STAT_FACETS_RESERVED, and Slic3r::_3MF_Importer::CurrentConfig::object_id.
Here is the call graph for this function:
|
private |
References CONFIG_TAG, MESH_TAG, METADATA_TAG, OBJECT_TAG, TEXT_TAG, and VOLUME_TAG.
Referenced by _handle_start_config_xml_element().
Here is the caller graph for this function:
|
staticprivate |
References _handle_start_config_xml_element().
Here is the call graph for this function:
|
private |
References get_attribute_value_bool(), get_attribute_value_int(), get_attribute_value_string(), get_transform_from_3mf_specs_string(), OBJECTID_ATTR, PRINTABLE_ATTR, and TRANSFORM_ATTR.
Here is the call graph for this function:
|
private |
References Slic3r::_3MF_Importer::CurrentObject::geometry, and Slic3r::_3MF_Importer::Geometry::reset().
Here is the call graph for this function:
|
private |
References get_attribute_value_string(), and NAME_ATTR.
Here is the call graph for this function:
|
private |
References get_attribute_value_string(), get_unit_factor(), and UNIT_ATTR.
Here is the call graph for this function:
|
private |
References BUILD_TAG, COMPONENT_TAG, COMPONENTS_TAG, ITEM_TAG, MESH_TAG, METADATA_TAG, MODEL_TAG, OBJECT_TAG, RESOURCES_TAG, TRIANGLE_TAG, TRIANGLES_TAG, VERTEX_TAG, and VERTICES_TAG.
Referenced by _extract_model_from_archive(), and _handle_start_model_xml_element().
Here is the caller graph for this function:
|
staticprivate |
References _handle_start_model_xml_element().
Here is the call graph for this function:
|
private |
References Slic3r::Model::add_object(), get_attribute_value_int(), get_attribute_value_string(), Slic3r::_3MF_Importer::CurrentObject::id, ID_ATTR, is_valid_object_type(), Slic3r::_3MF_Importer::CurrentObject::model_object_idx, Slic3r::ModelObject::name, NAME_ATTR, Slic3r::_3MF_Importer::CurrentObject::object, Slic3r::Model::objects, Slic3r::_3MF_Importer::CurrentObject::reset(), and TYPE_ATTR.
Here is the call graph for this function:
|
private |
|
private |
References Slic3r::_3MF_Importer::CurrentConfig::object_id.
|
private |
References Slic3r::_3MF_Importer::Geometry::custom_seam, CUSTOM_SEAM_ATTR, Slic3r::_3MF_Importer::Geometry::custom_supports, CUSTOM_SUPPORTS_ATTR, Slic3r::_3MF_Importer::CurrentObject::geometry, get_attribute_value_int(), get_attribute_value_string(), Slic3r::_3MF_Importer::Geometry::mmu_segmentation, MMU_SEGMENTATION_ATTR, Slic3r::_3MF_Importer::Geometry::triangles, V1_ATTR, V2_ATTR, and V3_ATTR.
Here is the call graph for this function:
|
private |
References Slic3r::_3MF_Importer::CurrentObject::geometry, and Slic3r::_3MF_Importer::Geometry::triangles.
|
private |
References Slic3r::_3MF_Importer::CurrentObject::geometry, get_attribute_value_float(), Slic3r::_3MF_Importer::Geometry::vertices, X_ATTR, Y_ATTR, and Z_ATTR.
Here is the call graph for this function:
|
private |
References Slic3r::_3MF_Importer::CurrentObject::geometry, and Slic3r::_3MF_Importer::Geometry::vertices.
|
private |
References _extract_custom_gcode_per_print_z_from_archive(), _extract_cut_information_from_archive(), _extract_layer_config_ranges_from_archive(), _extract_layer_heights_profile_config_from_archive(), _extract_model_config_from_archive(), _extract_model_from_archive(), _extract_print_config_from_archive(), _extract_sla_drain_holes_from_archive(), _extract_sla_support_points_from_archive(), _generate_volumes(), Slic3r::_3MF_Base::add_error(), Slic3r::ModelObject::add_instance(), Slic3r::Model::add_object(), Slic3r::ModelObject::clear_instances(), Slic3r::close_zip_reader(), Slic3r::ModelObject::config, CUSTOM_GCODE_PER_PRINT_Z_FILE, Slic3r::ModelObject::cut_id, CUT_INFORMATION_FILE, Slic3r::ModelObject::delete_last_instance(), Slic3r::Geometry::Transformation::get_offset(), Slic3r::ModelVolume::get_transformation(), Slic3r::ModelInstance::get_transformation(), Slic3r::ObjectBase::id(), Slic3r::ModelVolume::Source::input_file, Slic3r::ModelObject::instances, Slic3r::ModelObject::layer_config_ranges, LAYER_CONFIG_RANGES_FILE, Slic3r::ModelObject::layer_height_profile, LAYER_HEIGHTS_PROFILE_FILE, m_cut_object_infos, m_geometries, m_layer_config_ranges, m_layer_heights_profiles, m_model, m_name, m_objects, m_objects_metadata, m_sla_drain_holes, m_sla_support_points, m_version, MODEL_CONFIG_FILE, MODEL_EXTENSION, MODEL_FOLDER, mz_zip_reader_file_stat(), mz_zip_reader_get_num_files(), mz_zip_zero_struct(), Slic3r::ModelObject::name, Slic3r::ModelVolume::Source::object_idx, Slic3r::Model::objects, Slic3r::open_zip_reader(), PRINT_CONFIG_FILE, Slic3r::LayerHeightProfile::set(), Slic3r::ModelConfig::set_deserialize(), Slic3r::ModelVolume::set_offset(), Slic3r::ModelInstance::set_offset(), Slic3r::ModelObject::sla_drain_holes, SLA_DRAIN_HOLES_FILE, Slic3r::ModelObject::sla_points_status, Slic3r::ModelObject::sla_support_points, SLA_SUPPORT_POINTS_FILE, Slic3r::ModelVolume::source, stat, Slic3r::_3MF_Importer::Geometry::triangles, Slic3r::sla::UserModified, Slic3r::ModelVolume::Source::volume_idx, and Slic3r::ModelObject::volumes.
Referenced by load_model_from_file().
Here is the call graph for this function:
Here is the caller graph for this function:References m_parse_error, m_parse_error_message, and m_xml_parser.
References error, and Slic3r::_3MF_Base::m_errors.
Referenced by _extract_model_from_archive(), and _load_model_from_file().
Here is the caller graph for this function:
|
inlineprotectedinherited |
References Slic3r::_3MF_Base::m_errors.
Referenced by load_model_from_file().
Here is the caller graph for this function:| bool Slic3r::_3MF_Importer::load_model_from_file | ( | const std::string & | filename, |
| Model & | model, | ||
| DynamicPrintConfig & | config, | ||
| ConfigSubstitutionContext & | config_substitutions, | ||
| bool | check_version | ||
| ) |
References _load_model_from_file(), Slic3r::_3MF_Base::clear_errors(), m_check_version, m_curr_characters, m_curr_config, m_curr_metadata_name, m_curr_object, m_fdm_supports_painting_version, m_geometries, m_instances, m_layer_config_ranges, m_layer_heights_profiles, m_mm_painting_version, m_model, m_objects, m_objects_aliases, m_objects_metadata, m_seam_painting_version, m_sla_support_points, m_unit_factor, m_version, Slic3r::_3MF_Importer::CurrentConfig::object_id, Slic3r::_3MF_Importer::CurrentObject::reset(), and Slic3r::_3MF_Importer::CurrentConfig::volume_id.
Referenced by Slic3r::load_3mf().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
References error, and Slic3r::_3MF_Base::m_errors.
Referenced by Slic3r::load_3mf(), and Slic3r::store_3mf().
Here is the caller graph for this function:
|
inlineprivate |
References m_parse_error.
|
inlineprivate |
References m_parse_error, m_parse_error_message, and m_xml_parser.
|
inline |
References m_prusaslicer_generator_version.
Referenced by Slic3r::load_3mf().
Here is the caller graph for this function:
|
inline |
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by _load_model_from_file().
|
privateinherited |
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by _load_model_from_file(), and load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by _load_model_from_file(), and load_model_from_file().
|
private |
Referenced by _load_model_from_file(), and load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by _load_model_from_file(), and load_model_from_file().
|
private |
Referenced by _load_model_from_file().
|
private |
Referenced by _load_model_from_file(), and load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by _load_model_from_file(), and load_model_from_file().
|
private |
Referenced by _stop_xml_parser(), parse_error(), and parse_error_message().
|
private |
Referenced by _stop_xml_parser(), and parse_error_message().
|
private |
Referenced by prusaslicer_generator_version().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by _load_model_from_file().
|
private |
Referenced by _load_model_from_file(), and load_model_from_file().
|
private |
Referenced by load_model_from_file().
|
private |
Referenced by _load_model_from_file(), load_model_from_file(), and version().
|
private |
Referenced by _destroy_xml_parser(), _extract_model_from_archive(), _stop_xml_parser(), and parse_error_message().