![]() |
Prusa Slicer 2.6.0
|
#include <src/libslic3r/TriangleMesh.hpp>
Collaboration diagram for Slic3r::TriangleMesh:Public Attributes | |
| indexed_triangle_set | its |
Private Attributes | |
| TriangleMeshStats | m_stats |
|
default |
| Slic3r::TriangleMesh::TriangleMesh | ( | const std::vector< Vec3f > & | vertices, |
| const std::vector< Vec3i > & | faces | ||
| ) |
References Slic3r::fill_initial_stats(), its, and m_stats.
Here is the call graph for this function:| Slic3r::TriangleMesh::TriangleMesh | ( | std::vector< Vec3f > && | vertices, |
| const std::vector< Vec3i > && | faces | ||
| ) |
References Slic3r::fill_initial_stats(), its, and m_stats.
Here is the call graph for this function:
|
explicit |
|
explicit |
References Slic3r::fill_initial_stats(), its, m_stats, and Slic3r::TriangleMeshStats::repaired_errors.
Here is the call graph for this function:| void Slic3r::TriangleMesh::align_to_origin | ( | ) |
References m_stats, Slic3r::TriangleMeshStats::min, and translate().
Here is the call graph for this function:| BoundingBoxf3 Slic3r::TriangleMesh::bounding_box | ( | ) | const |
References Slic3r::BoundingBoxBase< PointType, APointsType >::defined, m_stats, Slic3r::BoundingBoxBase< PointType, APointsType >::max, Slic3r::TriangleMeshStats::max, Slic3r::BoundingBoxBase< PointType, APointsType >::min, and Slic3r::TriangleMeshStats::min.
Referenced by Slic3r::bounding_box(), center(), Slic3r::ModelVolume::center_geometry_after_creation(), Slic3r::GUI::Plater::export_stl_obj(), Slic3r::GUI::ObjectList::load_generic_subobject(), Slic3r::GUI::ObjectList::load_mesh_object(), Slic3r::GUI::ObjectList::load_modifier(), Slic3r::GUI::Selection::paste_volumes_from_clipboard(), Slic3r::ModelObject::print_info(), Slic3r::GUI::Emboss::CreateVolumeJob::process(), Slic3r::GUI::Emboss::UpdateJob::process(), and Slic3r::GUI::Selection::scale_to_fit_print_volume().
Here is the caller graph for this function:
|
inline |
Return the center of the related bounding box.
References bounding_box(), and Slic3r::BoundingBox3Base< PointType >::center().
Referenced by Slic3r::GUI::Emboss::CreateObjectJob::process(), and rotate().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References indexed_triangle_set::clear(), Slic3r::TriangleMeshStats::clear(), its, and m_stats.
Referenced by Slic3r::GUI::GLGizmoCut3D::update_connector_shape().
Here is the call graph for this function:
Here is the caller graph for this function:| Polygon Slic3r::TriangleMesh::convex_hull | ( | ) |
References Slic3r::Geometry::convex_hull(), its, and indexed_triangle_set::vertices.
Referenced by Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::get_chull_rotations(), and Slic3r::GUI::Selection::scale_to_fit_print_volume().
Here is the call graph for this function:
Here is the caller graph for this function:| TriangleMesh Slic3r::TriangleMesh::convex_hull_3d | ( | ) | const |
References its, and Slic3r::its_convex_hull().
Referenced by Slic3r::sla::find_min_z_height_rotation(), Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::get_chull_rotations(), Slic3r::GLVolumeCollection::load_object_auxiliary(), Slic3r::GLVolumeCollection::load_wipe_tower_preview(), and Slic3r::GUI::GLGizmoFlatten::update_planes().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References facets_count().
Referenced by Slic3r::GUI::Emboss::create_sources(), Slic3r::GUI::Plater::export_stl_obj(), Slic3r::GUI::Emboss::CreateObjectJob::finalize(), Slic3r::sla::hollow_mesh(), Slic3r::load_obj(), Slic3r::GLVolumeCollection::load_object_auxiliary(), Slic3r::load_stl(), Slic3r::GUI::CommonGizmosDataObjects::Raycaster::on_update(), Slic3r::GUI::CommonGizmosDataObjects::SupportsClipper::on_update(), Slic3r::GUI::GLGizmoCut3D::perform_cut(), Slic3r::ModelObject::process_solid_part_cut(), Slic3r::ModelVolume::split(), Slic3r::SLAPrint::Steps::support_tree(), and Slic3r::GUI::GLGizmoSlaBase::update_volumes().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References m_stats, and Slic3r::TriangleMeshStats::number_of_facets.
Referenced by empty(), Slic3r::SlicingAdaptive::prepare(), Slic3r::ModelObject::print_info(), Slic3r::ModelObject::split(), and Slic3r::GUI::GLGizmoFlatten::update_planes().
Here is the caller graph for this function:| void Slic3r::TriangleMesh::flip_triangles | ( | ) |
References its, Slic3r::its_flip_triangles(), m_stats, and Slic3r::TriangleMeshStats::volume.
Referenced by Slic3r::_3MF_Importer::_generate_volumes(), Slic3r::load_obj(), and Slic3r::GUI::GLGizmoMeasure::update_if_needed().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::TriangleMesh::has_zero_volume | ( | ) | const |
References Slic3r::is_approx(), and size().
Referenced by Slic3r::ModelObject::split(), and Slic3r::ModelVolume::split().
Here is the call graph for this function:
Here is the caller graph for this function:| ExPolygons Slic3r::TriangleMesh::horizontal_projection | ( | ) | const |
References Eigen::Transform< double, 3, Eigen::Affine, Eigen::DontAlign >::Identity(), its, Slic3r::project_mesh(), and Slic3r::union_ex().
Referenced by Slic3r::GUI::BedShapePanel::load_stl().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::TriangleMesh::is_splittable | ( | ) | const |
Calculates whether or not the mesh is splittable.
References its, and Slic3r::its_is_splittable().
Here is the call graph for this function:| size_t Slic3r::TriangleMesh::memsize | ( | ) | const |
References its, m_stats, indexed_triangle_set::memsize(), and memsize().
Referenced by memsize().
Here is the call graph for this function:
Here is the caller graph for this function:| void Slic3r::TriangleMesh::merge | ( | const TriangleMesh & | mesh | ) |
References its, Slic3r::its_merge(), m_stats, and Slic3r::TriangleMeshStats::merge().
Referenced by Slic3r::sla::cut_drainholes(), Slic3r::GUI::Plater::export_stl_obj(), Slic3r::sla::hollow_mesh(), Slic3r::GLVolumeCollection::load_wipe_tower_preview(), Slic3r::ModelObject::merge(), Slic3r::ModelObject::mesh(), Slic3r::Model::mesh(), Slic3r::GUI::GLGizmoCut3D::perform_cut(), Slic3r::ModelObject::raw_mesh(), Slic3r::GUI::GLGizmoMeasure::update_if_needed(), and Slic3r::GUI::GLGizmoFlatten::update_planes().
Here is the call graph for this function:
Here is the caller graph for this function:References its, Slic3r::its_flip_triangles(), m_stats, Slic3r::TriangleMeshStats::max, Slic3r::TriangleMeshStats::min, indexed_triangle_set::vertices, Slic3r::X, Slic3r::Y, and Slic3r::Z.
Referenced by mirror_x(), mirror_y(), and mirror_z().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
|
inline |
|
inline |
| bool Slic3r::TriangleMesh::ReadSTLFile | ( | const char * | input_file, |
| bool | repair = true |
||
| ) |
References stl_stats::backwards_edges, stl_stats::connected_facets_1_edge, stl_stats::connected_facets_2_edge, stl_stats::connected_facets_3_edge, stl_stats::degenerate_facets, stl_stats::edges_fixed, stl_stats::facets_removed, stl_stats::facets_reversed, its, m_stats, stl_stats::max, Slic3r::TriangleMeshStats::max, stl_stats::min, Slic3r::TriangleMeshStats::min, stl_stats::number_of_facets, Slic3r::TriangleMeshStats::number_of_facets, stl_stats::number_of_parts, Slic3r::TriangleMeshStats::number_of_parts, Slic3r::TriangleMeshStats::open_edges, Slic3r::TriangleMeshStats::repaired_errors, stl_stats::size, Slic3r::TriangleMeshStats::size, stl_file::stats, stl_generate_shared_vertices(), stl_open(), Slic3r::trianglemesh_repair_on_import(), stl_stats::volume, and Slic3r::TriangleMeshStats::volume.
Referenced by Slic3r::GUI::GalleryDialog::load_files(), Slic3r::GUI::GalleryDialog::load_label_icon_list(), Slic3r::load_stl(), and Slic3r::GUI::MainFrame::repair_stl().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
| bool Slic3r::TriangleMesh::repaired | ( | ) | const |
|
inline |
References Slic3r::angle(), center(), its, its_rotate_z(), and translate().
Here is the call graph for this function:References Slic3r::angle(), its, its_rotate_x(), its_rotate_y(), its_rotate_z(), m_stats, Slic3r::Geometry::rad2deg(), Slic3r::update_bounding_box(), Slic3r::X, Slic3r::Y, and Slic3r::Z.
Referenced by rotate_x(), rotate_y(), and rotate_z().
Here is the call graph for this function:
Here is the caller graph for this function:References Slic3r::angle(), Eigen::Transform< double, 3, Eigen::Affine, Eigen::DontAlign >::Identity(), its, its_transform(), m_stats, Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::rotate(), and Slic3r::update_bounding_box().
Here is the call graph for this function:
|
inline |
|
inline |
|
inline |
References its, m_stats, Slic3r::TriangleMeshStats::max, Slic3r::TriangleMeshStats::min, Slic3r::TriangleMeshStats::size, indexed_triangle_set::vertices, and Slic3r::TriangleMeshStats::volume.
| void Slic3r::TriangleMesh::scale | ( | float | factor | ) |
References scale().
Referenced by Slic3r::GLVolumeCollection::load_wipe_tower_preview(), and scale().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References m_stats, and Slic3r::TriangleMeshStats::size.
Referenced by has_zero_volume().
Here is the caller graph for this function:| std::vector< ExPolygons > Slic3r::TriangleMesh::slice | ( | const std::vector< double > & | z | ) | const |
References its, and Slic3r::slice_mesh_ex().
Here is the call graph for this function:| std::vector< TriangleMesh > Slic3r::TriangleMesh::split | ( | ) | const |
References its, Slic3r::its_split(), and volume().
Referenced by Slic3r::ModelVolume::split().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References m_stats.
Referenced by Slic3r::ModelVolume::get_repaired_errors_count(), Slic3r::is_front_up_left(), cereal::load(), Slic3r::ModelObject::print_info(), cereal::save(), and Slic3r::GUI::Sidebar::show_info_sizer().
Here is the caller graph for this function:References its, Slic3r::its_flip_triangles(), its_transform(), m_stats, Slic3r::update_bounding_box(), and Slic3r::TriangleMeshStats::volume.
Here is the call graph for this function:| void Slic3r::TriangleMesh::transform | ( | const Transform3d & | t, |
| bool | fix_left_handed = false |
||
| ) |
References its, Slic3r::its_flip_triangles(), its_transform(), m_stats, Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::matrix(), Slic3r::update_bounding_box(), and Slic3r::TriangleMeshStats::volume.
Referenced by Slic3r::_3MF_Importer::_generate_volumes(), Slic3r::GUI::Plater::export_stl_obj(), Slic3r::sla::RotfinderBoilerplate< MAX_ITER >::get_mesh_to_rotate(), Slic3r::GLVolumeCollection::load_object_auxiliary(), Slic3r::GUI::CommonGizmosDataObjects::Raycaster::on_update(), Slic3r::GUI::GLGizmoCut3D::perform_cut(), Slic3r::SlicingAdaptive::prepare(), Slic3r::ModelObject::process_volume_cut(), Slic3r::ModelObject::raw_mesh(), Slic3r::GUI::Selection::scale_to_fit_print_volume(), Slic3r::ModelInstance::transform_mesh(), Slic3r::ModelVolume::transform_this_mesh(), Slic3r::ModelVolume::transform_this_mesh(), Slic3r::GUI::GLGizmoMeasure::update_if_needed(), Slic3r::GUI::GLGizmoFlatten::update_planes(), and Slic3r::GUI::GLGizmoSlaBase::update_volumes().
Here is the call graph for this function:
Here is the caller graph for this function:| BoundingBoxf3 Slic3r::TriangleMesh::transformed_bounding_box | ( | const Transform3d & | trafo | ) | const |
References Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::cast(), its, Slic3r::BoundingBox3Base< PointType >::merge(), and indexed_triangle_set::vertices.
Referenced by Slic3r::GUI::GLGizmoCut3D::perform_cut(), and Slic3r::GUI::Sidebar::show_info_sizer().
Here is the call graph for this function:
Here is the caller graph for this function:| BoundingBoxf3 Slic3r::TriangleMesh::transformed_bounding_box | ( | const Transform3d & | trafo, |
| double | world_min_z | ||
| ) | const |
References Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::cast(), Slic3r::BoundingBoxBase< PointType, APointsType >::defined, Eigen::AlignedBox< _Scalar, _AmbientDim >::extend(), indexed_triangle_set::indices, Eigen::AlignedBox< _Scalar, _AmbientDim >::isEmpty(), its, Eigen::AlignedBox< _Scalar, _AmbientDim >::max(), Slic3r::BoundingBoxBase< PointType, APointsType >::max, Eigen::AlignedBox< _Scalar, _AmbientDim >::min(), Slic3r::BoundingBoxBase< PointType, APointsType >::min, sign(), and indexed_triangle_set::vertices.
Here is the call graph for this function:References its, m_stats, Slic3r::TriangleMeshStats::max, Slic3r::TriangleMeshStats::min, and indexed_triangle_set::vertices.
| void Slic3r::TriangleMesh::translate | ( | float | x, |
| float | y, | ||
| float | z | ||
| ) |
References translate().
Referenced by align_to_origin(), Slic3r::GUI::Plater::export_stl_obj(), Slic3r::GLVolumeCollection::load_wipe_tower_preview(), Slic3r::GUI::Emboss::CreateVolumeJob::process(), Slic3r::GUI::Emboss::UpdateJob::process(), Slic3r::ModelObject::process_connector_cut(), rotate(), and translate().
Here is the call graph for this function:
Here is the caller graph for this function:| float Slic3r::TriangleMesh::volume | ( | ) |
References its, Slic3r::its_volume(), m_stats, and Slic3r::TriangleMeshStats::volume.
Referenced by Slic3r::_3MF_Importer::_generate_volumes(), Slic3r::load_obj(), Slic3r::ModelObject::print_info(), split(), and Slic3r::GUI::GLGizmoMeasure::update_if_needed().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::TriangleMesh::write_ascii | ( | const char * | output_file | ) |
References its, and Slic3r::its_write_stl_ascii().
Referenced by Slic3r::store_stl().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::TriangleMesh::write_binary | ( | const char * | output_file | ) |
References its, and Slic3r::its_write_stl_binary().
Referenced by Slic3r::store_stl().
Here is the call graph for this function:
Here is the caller graph for this function:References its, and its_write_obj().
Referenced by Slic3r::GUI::MainFrame::repair_stl(), and Slic3r::store_obj().
Here is the call graph for this function:
Here is the caller graph for this function:| indexed_triangle_set Slic3r::TriangleMesh::its |
Referenced by TriangleMesh(), TriangleMesh(), TriangleMesh(), Slic3r::MeshBoolean::cgal::_mesh_boolean_do(), Slic3r::GUI::Camera::calc_zoom_to_volumes_factor(), clear(), convex_hull(), convex_hull_3d(), Slic3r::GUI::CameraUtils::create_hull2d(), Slic3r::GUI::Emboss::create_sources(), Slic3r::TriangleSelector::deserialize(), Slic3r::MeshBoolean::cgal::does_self_intersect(), Slic3r::TriangleSelectorWrapper::enforce_spot(), Slic3r::GUI::Emboss::CreateVolumeJob::finalize(), Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::find_ground_level(), Slic3r::sla::find_min_z_height_rotation(), flip_triangles(), Slic3r::GUI::Selection::get_bounding_box_in_reference_system(), Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::get_chull_rotations(), Slic3r::ModelObject::get_instance_max_z(), Slic3r::ModelObject::get_instance_min_z(), Slic3r::csg::get_mesh(), Slic3r::csg::get_mesh(), Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::get_misalginment_score(), Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::get_supportedness_onfloor_score(), Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::get_supportedness_score(), Slic3r::sla::anonymous_namespace{Rotfinder.cpp}::get_triangle_vertices(), Slic3r::sla::hollow_mesh(), horizontal_projection(), Slic3r::GUI::GLModel::init_from(), is_splittable(), cereal::load(), memsize(), merge(), mirror(), Slic3r::GUI::CommonGizmosDataObjects::SupportsClipper::on_update(), Slic3r::SlicingAdaptive::prepare(), Slic3r::GUI::Emboss::UpdateJob::process(), Slic3r::ModelObject::process_volume_cut(), ReadSTLFile(), Slic3r::sla::remove_inside_triangles(), Slic3r::TriangleSelector::reset(), rotate(), rotate(), rotate(), cereal::save(), scale(), slice(), split(), transform(), transform(), transformed_bounding_box(), transformed_bounding_box(), translate(), Slic3r::MeshBoolean::cgal::triangle_mesh_to_cgal(), Slic3r::MeshBoolean::triangle_mesh_to_eigen(), Slic3r::GLVolume::SinkingContours::update(), Slic3r::GLVolume::NonManifoldEdges::update(), Slic3r::GUI::GLGizmoMeasure::update_if_needed(), Slic3r::Measure::MeasuringImpl::update_planes(), Slic3r::GUI::GLGizmoFlatten::update_planes(), volume(), write_ascii(), write_binary(), and WriteOBJFile().
|
private |
Referenced by TriangleMesh(), TriangleMesh(), TriangleMesh(), TriangleMesh(), align_to_origin(), bounding_box(), clear(), facets_count(), flip_triangles(), memsize(), merge(), mirror(), ReadSTLFile(), rotate(), rotate(), scale(), size(), stats(), transform(), transform(), translate(), and volume().