![]() |
Prusa Slicer 2.6.0
|
#include <src/libslic3r/BuildVolume.hpp>
Collaboration diagram for Slic3r::BuildVolume:Public Types | |
| enum class | Type : unsigned char { Invalid , Rectangle , Circle , Convex , Custom } |
| enum class | ObjectState : unsigned char { Inside , Colliding , Outside , Below } |
Static Public Member Functions | |
| static std::string_view | type_name (Type type) |
Static Public Attributes | |
| static constexpr const double | SceneEpsilon = EPSILON |
| static constexpr const double | BedEpsilon = 3. * EPSILON |
Private Attributes | |
| std::vector< Vec2d > | m_bed_shape |
| double | m_max_print_height |
| Type | m_type { Type::Invalid } |
| Polygon | m_polygon |
| BoundingBox | m_bbox |
| BoundingBoxf3 | m_bboxf |
| double | m_area { 0. } |
| Polygon | m_convex_hull |
| std::pair< std::vector< Vec2d >, std::vector< Vec2d > > | m_top_bottom_convex_hull_decomposition_scene |
| std::pair< std::vector< Vec2d >, std::vector< Vec2d > > | m_top_bottom_convex_hull_decomposition_bed |
| Geometry::Circled | m_circle { Vec2d::Zero(), 0 } |
|
strong |
| Enumerator | |
|---|---|
| Inside | |
| Colliding | |
| Outside | |
| Below | |
|
strong |
| Enumerator | |
|---|---|
| Invalid | |
| Rectangle | |
| Circle | |
| Convex | |
| Custom | |
|
inline |
| Slic3r::BuildVolume::BuildVolume | ( | const std::vector< Vec2d > & | bed_shape, |
| const double | max_print_height | ||
| ) |
References Slic3r::Polygon::area(), bed_shape(), BedEpsilon, Slic3r::Geometry::Circle< Vector >::center, Circle, Slic3r::Geometry::circle_ransac(), Convex, Slic3r::Geometry::convex_hull(), Custom, Slic3r::Geometry::decompose_convex_polygon_top_bottom(), Slic3r::expand(), Slic3r::get_extents(), Invalid, m_area, m_bbox, m_bboxf, m_circle, m_convex_hull, m_polygon, m_top_bottom_convex_hull_decomposition_bed, m_top_bottom_convex_hull_decomposition_scene, m_type, Slic3r::BoundingBoxBase< PointType, APointsType >::max, max_print_height(), Slic3r::BoundingBoxBase< PointType, APointsType >::min, Slic3r::Polygon::new_scale(), Slic3r::MultiPoint::points, Slic3r::Geometry::Circle< Vector >::radius, Rectangle, SCALED_EPSILON, SceneEpsilon, Slic3r::BoundingBoxBase< PointType, APointsType >::size(), Slic3r::MultiPoint::size(), Slic3r::Geometry::smallest_enclosing_circle_welzl(), Slic3r::sqr(), Slic3r::to_3d(), and type_name().
Here is the call graph for this function:| bool Slic3r::BuildVolume::all_paths_inside | ( | const GCodeProcessorResult & | paths, |
| const BoundingBoxf3 & | paths_bbox, | ||
| bool | ignore_bottom = true |
||
| ) | const |
References BedEpsilon, bounding_volume(), Slic3r::Geometry::Circle< Vector >::center, Circle, Slic3r::BoundingBox3Base< PointType >::contains(), Convex, Custom, Slic3r::Custom, Slic3r::Extrude, Slic3r::BoundingBox3Base< PointType >::inflated(), m_circle, m_max_print_height, m_type, Slic3r::BoundingBoxBase< PointType, APointsType >::max, Slic3r::BoundingBoxBase< PointType, APointsType >::min, Slic3r::GCodeProcessorResult::moves, Slic3r::Geometry::Circle< Vector >::radius, Rectangle, and Slic3r::sqr().
Here is the call graph for this function:| bool Slic3r::BuildVolume::all_paths_inside_vertices_and_normals_interleaved | ( | const std::vector< float > & | paths, |
| const Eigen::AlignedBox< float, 3 > & | bbox, | ||
| bool | ignore_bottom = true |
||
| ) | const |
References Slic3r::all_inside_vertices_normals_interleaved(), BedEpsilon, bounding_volume(), Slic3r::Geometry::Circle< Vector >::center, Circle, Slic3r::BoundingBox3Base< PointType >::contains(), Convex, Custom, Slic3r::BoundingBox3Base< PointType >::inflated(), Slic3r::Geometry::inside_convex_polygon(), m_circle, m_max_print_height, m_top_bottom_convex_hull_decomposition_bed, m_type, Eigen::AlignedBox< _Scalar, _AmbientDim >::max(), Slic3r::BoundingBoxBase< PointType, APointsType >::max, Eigen::AlignedBox< _Scalar, _AmbientDim >::min(), Slic3r::BoundingBoxBase< PointType, APointsType >::min, Slic3r::Geometry::Circle< Vector >::radius, Rectangle, Slic3r::sqr(), and Slic3r::to_2d().
Here is the call graph for this function:
|
inline |
References Slic3r::BoundingBox3Base< PointType >::center(), m_bboxf, and Slic3r::to_2d().
Here is the call graph for this function:References m_bed_shape.
Referenced by BuildVolume(), Slic3r::GUI::Bed3D::set_shape(), and priv::start_create_object_job().
Here is the caller graph for this function:
|
inline |
|
inline |
References m_bboxf.
Referenced by Slic3r::GUI::GLCanvas3D::_max_bounding_box(), all_paths_inside(), all_paths_inside_vertices_and_normals_interleaved(), Slic3r::GUI::BedShape::apply_optgroup_values(), Slic3r::GUI::bed_stride(), Slic3r::GUI::Bed3D::calc_extended_bounding_box(), Slic3r::GUI::BedShape::get_full_name_with_params(), object_state(), Slic3r::GUI::Bed3D::set_shape(), volume_state_bbox(), and Slic3r::GUI::GLCanvas3D::zoom_to_bed().
Here is the caller graph for this function:
|
inline |
References m_bboxf, Slic3r::BoundingBoxBase< PointType, APointsType >::max, Slic3r::BoundingBoxBase< PointType, APointsType >::min, and Slic3r::to_2d().
Referenced by Slic3r::GUI::GLCanvas3D::get_size_proportional_to_max_bed_size(), and Slic3r::GUI::Bed3D::render_model().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References m_circle.
Referenced by Slic3r::GUI::BedShape::apply_optgroup_values(), Slic3r::GUI::BedShape::get_full_name_with_params(), and object_state().
Here is the caller graph for this function:References m_convex_hull.
|
inline |
References m_max_print_height.
Referenced by BuildVolume(), Slic3r::GUI::GLCanvas3D::scene_bounding_box(), and Slic3r::GUI::Bed3D::set_shape().
Here is the caller graph for this function:| BuildVolume::ObjectState Slic3r::BuildVolume::object_state | ( | const indexed_triangle_set & | its, |
| const Transform3f & | trafo, | ||
| bool | may_be_below_bed, | ||
| bool | ignore_bottom = true |
||
| ) | const |
References bounding_volume(), Slic3r::Geometry::Circle< Vector >::center, Circle, circle(), Slic3r::BoundingBox3Base< PointType >::contains(), Slic3r::Geometry::Circle< Vector >::contains(), Convex, Custom, Slic3r::BoundingBox3Base< PointType >::inflated(), Inside, Slic3r::Geometry::inside_convex_polygon(), Invalid, m_circle, m_max_print_height, m_top_bottom_convex_hull_decomposition_scene, m_type, Slic3r::BoundingBoxBase< PointType, APointsType >::max, Slic3r::BoundingBoxBase< PointType, APointsType >::min, Slic3r::object_state_templ(), Slic3r::Geometry::Circle< Vector >::radius, Rectangle, SceneEpsilon, and Slic3r::to_2d().
Referenced by Slic3r::GUI::GLCanvas3D::check_volumes_outside_state(), and Slic3r::ModelObject::update_instances_print_volume_state().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References m_top_bottom_convex_hull_decomposition_bed.
|
inline |
References m_top_bottom_convex_hull_decomposition_scene.
|
inline |
References m_type.
Referenced by Slic3r::GUI::BedShape::apply_optgroup_values(), Slic3r::GUI::GLCanvas3D::check_volumes_outside_state(), Slic3r::GUI::BedShape::get_full_name_with_params(), Slic3r::GUI::BedShape::get_page_type(), Slic3r::GUI::BedShape::is_custom(), and type_name().
Here is the caller graph for this function:
|
inline |
References m_type, and type_name().
Referenced by BuildVolume(), and type_name().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
|
inline |
References Invalid, and m_type.
Referenced by Slic3r::GUI::GLCanvas3D::_render_objects(), Slic3r::GUI::GLCanvas3D::render(), and Slic3r::GUI::Bed3D::render_axes().
Here is the caller graph for this function:| BuildVolume::ObjectState Slic3r::BuildVolume::volume_state_bbox | ( | const BoundingBoxf3 & | volume_bbox, |
| bool | ignore_bottom = true |
||
| ) | const |
References Below, bounding_volume(), Colliding, Slic3r::BoundingBox3Base< PointType >::contains(), Slic3r::BoundingBox3Base< PointType >::inflated(), Inside, Slic3r::BoundingBox3Base< PointType >::intersects(), m_max_print_height, m_type, Slic3r::BoundingBoxBase< PointType, APointsType >::max, Slic3r::BoundingBoxBase< PointType, APointsType >::min, Outside, Rectangle, and SceneEpsilon.
Referenced by Slic3r::GUI::GLCanvas3D::check_volumes_outside_state().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Referenced by BuildVolume().
|
private |
Referenced by BuildVolume(), and bounding_box().
|
private |
Referenced by BuildVolume(), bed_center(), bounding_volume(), and bounding_volume2d().
|
private |
Referenced by bed_shape().
|
private |
Referenced by BuildVolume(), all_paths_inside(), all_paths_inside_vertices_and_normals_interleaved(), circle(), and object_state().
|
private |
Referenced by BuildVolume(), and convex_hull().
|
private |
|
private |
Referenced by BuildVolume(), and polygon().
|
private |
Referenced by BuildVolume(), object_state(), and top_bottom_convex_hull_decomposition_scene().
|
private |