#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/libslic3r/ExtrusionEntity.hpp>
Public Member Functions | |
| ExtrusionPath () | |
| ExtrusionPath (ExtrusionRole role) | |
| ExtrusionPath (ExtrusionRole role, double mm3_per_mm, float width, float height, bool no_extrusion=false) | |
| ExtrusionPath (const ExtrusionPath &rhs) | |
| ExtrusionPath (ExtrusionPath &&rhs) | |
| ExtrusionPath (const Polyline3 &polyline, const ExtrusionPath &rhs) | |
| ExtrusionPath (Polyline3 &&polyline, const ExtrusionPath &rhs) | |
| ExtrusionPath & | operator= (const ExtrusionPath &rhs) |
| ExtrusionPath & | operator= (ExtrusionPath &&rhs) |
| ExtrusionEntity * | clone () const override |
| ExtrusionEntity * | clone_move () override |
| void | reverse () override |
| Point | first_point () const override |
| const Point3 & | first_point3 () const override |
| Point | last_point () const override |
| const Point3 & | last_point3 () const override |
| size_t | size () const |
| bool | empty () const |
| bool | is_closed () const |
| void | intersect_expolygons (const ExPolygons &collection, ExtrusionEntityCollection *retval) const |
| void | subtract_expolygons (const ExPolygons &collection, ExtrusionEntityCollection *retval) const |
| void | clip_end (double distance) |
| virtual void | simplify (double tolerance) |
| double | length () const override |
| ExtrusionRole | role () const override |
| void | polygons_covered_by_width (Polygons &out, const float scaled_epsilon) const override |
| void | polygons_covered_by_spacing (Polygons &out, const float scaled_epsilon) const override |
| Polygons | polygons_covered_by_width (const float scaled_epsilon=0.f) const |
| Polygons | polygons_covered_by_spacing (const float scaled_epsilon=0.f) const |
| double | min_mm3_per_mm () const override |
| Polyline | as_polyline () const override |
| void | collect_polylines (Polylines &dst) const override |
| void | collect_points (Points &dst) const override |
| void | collect_points3 (Points3 &dst) const |
| double | total_volume () const override |
| void | simplify_by_fitting_arc (double tolerance) |
| bool | is_force_no_extrusion () const |
| void | set_force_no_extrusion (bool no_extrusion) |
| void | set_extrusion_role (ExtrusionRole extrusion_role) |
| void | set_reverse () override |
| bool | can_reverse () const override |
| virtual bool | is_collection () const |
| virtual bool | is_loop () const |
| virtual bool | can_sort () const |
| virtual Polylines | as_polylines () const |
Static Public Member Functions | |
| static std::string | role_to_string (ExtrusionRole role) |
| static ExtrusionRole | string_to_role (const std::string_view role) |
Public Attributes | |
| Polyline3 | polyline |
| double | overhang_degree = 0 |
| int | curve_degree = 0 |
| double | mm3_per_mm |
| float | width |
| float | height |
| double | smooth_speed = 0 |
| bool | z_contoured = false |
| int | inset_idx = -1 |
Private Member Functions | |
| void | _inflate_collection (const Polylines &polylines, ExtrusionEntityCollection *collection) const |
Private Attributes | |
| bool | m_can_reverse = true |
| ExtrusionRole | m_role |
| bool | m_no_extrusion = false |
|
inline |
References Slic3r::erNone, height, m_no_extrusion, m_role, mm3_per_mm, and width.
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), Slic3r::ExtrusionPathContoured::ExtrusionPathContoured(), Slic3r::ExtrusionPathOriented::ExtrusionPathOriented(), Slic3r::ExtrusionPathSloped::ExtrusionPathSloped(), Slic3r::ExtrusionPathSloped::ExtrusionPathSloped(), Slic3r::ExtrusionPathSloped::ExtrusionPathSloped(), Slic3r::ExtrusionPathSloped::ExtrusionPathSloped(), _inflate_collection(), clone(), clone_move(), operator=(), and operator=().
|
inline |
References height, m_no_extrusion, m_role, mm3_per_mm, role(), and width.
|
inline |
References height, m_no_extrusion, m_role, mm3_per_mm, role(), and width.
|
inline |
References ExtrusionPath(), curve_degree, height, m_can_reverse, m_no_extrusion, m_role, mm3_per_mm, overhang_degree, polyline, smooth_speed, width, and z_contoured.
|
inline |
References ExtrusionPath(), curve_degree, height, m_can_reverse, m_no_extrusion, m_role, mm3_per_mm, overhang_degree, polyline, smooth_speed, width, and z_contoured.
|
inline |
References ExtrusionPath(), curve_degree, height, m_can_reverse, m_no_extrusion, m_role, mm3_per_mm, overhang_degree, polyline, smooth_speed, width, and z_contoured.
|
inline |
References ExtrusionPath(), curve_degree, height, m_can_reverse, m_no_extrusion, m_role, mm3_per_mm, overhang_degree, polyline, smooth_speed, width, and z_contoured.
|
private |
References ExtrusionPath(), Slic3r::ExtrusionEntityCollection::entities, and polyline.
Referenced by intersect_expolygons(), and subtract_expolygons().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
References Slic3r::Polyline3::to_polyline().
Referenced by Slic3r::paths_touch().
|
inlinevirtualinherited |
References collect_polylines().
Referenced by Slic3r::SupportMaterialInternal::remove_bridges_from_contacts().
|
inlineoverridevirtual |
Reimplemented from Slic3r::ExtrusionEntity.
Reimplemented in Slic3r::ExtrusionPathOriented.
References m_can_reverse.
Referenced by Slic3r::ExtrusionMultiPath::ExtrusionMultiPath().
|
inlinevirtualinherited |
Reimplemented in Slic3r::ExtrusionEntityCollection.
| void Slic3r::ExtrusionPath::clip_end | ( | double | distance | ) |
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
Reimplemented in Slic3r::ExtrusionPathContoured, and Slic3r::ExtrusionPathOriented.
References ExtrusionPath().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
Reimplemented in Slic3r::ExtrusionPathContoured, and Slic3r::ExtrusionPathOriented.
References ExtrusionPath().
|
overridevirtual |
Implements Slic3r::ExtrusionEntity.
References polyline.
|
inline |
References Slic3r::append(), and Slic3r::MultiPoint3::points.
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
References Slic3r::MultiPoint3::empty(), and Slic3r::Polyline3::to_polyline().
|
inline |
References Slic3r::MultiPoint3::empty().
Referenced by is_closed(), and Slic3r::thick_polyline_to_multi_path().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
References Slic3r::MultiPoint3::points.
Referenced by Slic3r::GCode::_extrude(), and Slic3r::sort_extra_perimeters().
|
inlineoverridevirtual |
| void Slic3r::ExtrusionPath::intersect_expolygons | ( | const ExPolygons & | collection, |
| ExtrusionEntityCollection * | retval ) const |
References _inflate_collection(), Slic3r::intersection_pl(), and polyline.
|
inline |
References empty(), and Slic3r::MultiPoint3::points.
Referenced by Slic3r::SupportMaterialInternal::collect_bridging_perimeter_areas(), and Slic3r::SupportMaterialInternal::has_bridging_perimeters().
|
inlinevirtualinherited |
Reimplemented in Slic3r::ExtrusionEntityCollection.
Referenced by Slic3r::SupportMaterialInternal::collect_bridging_perimeter_areas(), Slic3r::GCode::compute_farthest_point(), Slic3r::SeamPlacerImpl::extract_perimeter_polygons(), Slic3r::ExtrusionEntityCollection::flatten(), Slic3r::SupportMaterialInternal::has_bridging_fills(), and Slic3r::SupportMaterialInternal::has_bridging_perimeters().
|
inline |
References m_no_extrusion.
Referenced by Slic3r::GCode::_extrude(), Slic3r::GCode::extrude_multi_path(), and Slic3r::to_json().
|
inlinevirtualinherited |
Reimplemented in Slic3r::ExtrusionLoop, and Slic3r::ExtrusionMultiPath.
Referenced by Slic3r::chain_extrusion_entities_impl(), Slic3r::SupportMaterialInternal::collect_bridging_perimeter_areas(), Slic3r::GCode::compute_farthest_point(), Slic3r::SupportMaterialInternal::has_bridging_perimeters(), and Slic3r::is_unsupported_loop().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
References Slic3r::MultiPoint3::points.
Referenced by Slic3r::GCode::_extrude(), and Slic3r::sort_extra_perimeters().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
References Slic3r::MultiPoint3::points.
Referenced by Slic3r::GCode::extrude_path().
|
overridevirtual |
Implements Slic3r::ExtrusionEntity.
References polyline.
Referenced by Slic3r::ExtrusionLoop::clip_end(), Slic3r::ExtrusionLoopSloped::clip_end(), Slic3r::ExtrusionLoopSloped::clip_front(), Slic3r::GCode::extrude_multi_path(), Slic3r::GCode::extrude_support(), and total_volume().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
|
inline |
References ExtrusionPath(), curve_degree, height, m_can_reverse, m_no_extrusion, m_role, mm3_per_mm, overhang_degree, polyline, smooth_speed, width, and z_contoured.
|
inline |
References ExtrusionPath(), m_can_reverse, m_no_extrusion, and m_role.
|
inline |
References polygons_covered_by_spacing().
|
overridevirtual |
Implements Slic3r::ExtrusionEntity.
References Slic3r::Flow::bridging_flow(), height, Slic3r::is_bridge(), Slic3r::offset(), Slic3r::polygons_append(), polyline, role(), and width.
Referenced by polygons_covered_by_spacing().
|
inline |
References polygons_covered_by_width().
|
overridevirtual |
Implements Slic3r::ExtrusionEntity.
References Slic3r::offset(), Slic3r::polygons_append(), polyline, scale_, and width.
Referenced by polygons_covered_by_width().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
Reimplemented in Slic3r::ExtrusionPathContoured.
References Slic3r::Polyline3::reverse().
Referenced by Slic3r::sort_extra_perimeters().
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
References m_role.
Referenced by ExtrusionPath(), ExtrusionPath(), Slic3r::ExtrusionPathOriented::ExtrusionPathOriented(), Slic3r::GCode::_extrude(), Slic3r::GCode::_needSAFC(), Slic3r::SupportMaterialInternal::collect_bridging_perimeter_areas(), Slic3r::GCode::compute_farthest_point(), Slic3r::contour_extrusion_path(), Slic3r::GCode::extrude_path(), Slic3r::SupportMaterialInternal::has_bridging_perimeters(), Slic3r::modulate_extrusion_by_overlapping_layers(), polygons_covered_by_spacing(), Slic3r::LayerRegion::simplify_path(), Slic3r::ExtrusionLoop::split_at(), and Slic3r::to_json().
|
staticinherited |
References Slic3r::erBottomSurface, Slic3r::erBridgeInfill, Slic3r::erBrim, Slic3r::erCustom, Slic3r::erExternalPerimeter, Slic3r::erGapFill, Slic3r::erInternalBridgeInfill, Slic3r::erInternalInfill, Slic3r::erIroning, Slic3r::erMixed, Slic3r::erNone, Slic3r::erOverhangPerimeter, Slic3r::erPerimeter, Slic3r::erSkirt, Slic3r::erSolidInfill, Slic3r::erSupportMaterial, Slic3r::erSupportMaterialInterface, Slic3r::erSupportTransition, Slic3r::erTopSolidInfill, Slic3r::erWipeTower, L, and role().
Referenced by Slic3r::WipeTowerWriter::WipeTowerWriter(), Slic3r::WipeTowerWriter2::WipeTowerWriter2(), Slic3r::GCode::_do_export(), Slic3r::GCode::_extrude(), and Slic3r::anonymous_namespace{GCodeStatistics.cpp}::features_json().
|
inline |
References m_role.
Referenced by Slic3r::from_json().
|
inline |
References m_no_extrusion.
Referenced by Slic3r::GCode::extrude_loop(), and Slic3r::from_json().
|
inlineoverridevirtual |
|
virtual |
Reimplemented in Slic3r::ExtrusionPathContoured.
References polyline, and z_contoured.
Referenced by Slic3r::LayerRegion::simplify_path(), and Slic3r::Layer::simplify_support_path().
| void Slic3r::ExtrusionPath::simplify_by_fitting_arc | ( | double | tolerance | ) |
References polyline, and z_contoured.
Referenced by Slic3r::LayerRegion::simplify_path(), and Slic3r::Layer::simplify_support_path().
|
inline |
References Slic3r::MultiPoint3::size().
Referenced by Slic3r::SupportMaterialInternal::collect_bridging_perimeter_areas(), and Slic3r::SupportMaterialInternal::has_bridging_perimeters().
|
staticinherited |
References Slic3r::erBottomSurface, Slic3r::erBridgeInfill, Slic3r::erBrim, Slic3r::erCustom, Slic3r::erExternalPerimeter, Slic3r::erGapFill, Slic3r::erInternalBridgeInfill, Slic3r::erInternalInfill, Slic3r::erIroning, Slic3r::erMixed, Slic3r::erNone, Slic3r::erOverhangPerimeter, Slic3r::erPerimeter, Slic3r::erSkirt, Slic3r::erSolidInfill, Slic3r::erSupportMaterial, Slic3r::erSupportMaterialInterface, Slic3r::erSupportTransition, Slic3r::erTopSolidInfill, Slic3r::erWipeTower, L, and role().
Referenced by Slic3r::FanMover::_process_gcode_line(), and Slic3r::GCodeProcessor::process_tags().
| void Slic3r::ExtrusionPath::subtract_expolygons | ( | const ExPolygons & | collection, |
| ExtrusionEntityCollection * | retval ) const |
References _inflate_collection(), Slic3r::diff_pl(), and polyline.
|
inlineoverridevirtual |
Implements Slic3r::ExtrusionEntity.
References length(), mm3_per_mm, and Slic3r::unscale().
| int Slic3r::ExtrusionPath::curve_degree = 0 |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), and operator=().
| float Slic3r::ExtrusionPath::height |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), Slic3r::ExtrusionPathOriented::ExtrusionPathOriented(), Slic3r::GCode::_extrude(), libvgcode::convert_to_vertices(), libvgcode::convert_to_vertices(), libvgcode::convert_to_vertices(), Slic3r::ExtrusionSimulator::extrude_to_accumulator(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::from_json(), Slic3r::GCode::generate_skirt(), Slic3r::modulate_extrusion_by_overlapping_layers(), operator=(), polygons_covered_by_spacing(), Slic3r::ExtrusionLoop::split_at(), Slic3r::thick_polyline_to_extrusion_paths_2(), Slic3r::thick_polyline_to_multi_path(), Slic3r::to_json(), and Slic3r::traverse_loops().
|
inherited |
|
private |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), can_reverse(), operator=(), operator=(), and set_reverse().
|
private |
|
private |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), operator=(), operator=(), role(), and set_extrusion_role().
| double Slic3r::ExtrusionPath::mm3_per_mm |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), Slic3r::ExtrusionPathOriented::ExtrusionPathOriented(), Slic3r::GCode::_extrude(), Slic3r::GCode::extrude_loop(), Slic3r::GCode::extrude_multi_path(), Slic3r::ExtrusionSimulator::extrude_to_accumulator(), Slic3r::from_json(), Slic3r::GCode::generate_skirt(), Slic3r::modulate_extrusion_by_overlapping_layers(), operator=(), Slic3r::ExtrusionLoop::split_at(), Slic3r::thick_polyline_to_extrusion_paths_2(), Slic3r::thick_polyline_to_multi_path(), Slic3r::to_json(), total_volume(), and Slic3r::traverse_loops().
| double Slic3r::ExtrusionPath::overhang_degree = 0 |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), and operator=().
| Polyline3 Slic3r::ExtrusionPath::polyline |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), Slic3r::ExtrusionPathContoured::ExtrusionPathContoured(), Slic3r::ExtrusionPathSloped::ExtrusionPathSloped(), Slic3r::ExtrusionPathSloped::ExtrusionPathSloped(), Slic3r::GCode::_extrude(), _inflate_collection(), Slic3r::ExtrusionLoop::clip_end(), Slic3r::ExtrusionLoopSloped::clip_end(), clip_end(), Slic3r::ExtrusionLoopSloped::clip_front(), Slic3r::SupportMaterialInternal::collect_bridging_perimeter_areas(), Slic3r::ExtrusionLoop::collect_points(), Slic3r::ExtrusionMultiPath::collect_points(), collect_points(), Slic3r::contour_extrusion_path(), libvgcode::convert_to_vertices(), libvgcode::convert_to_vertices(), libvgcode::convert_to_vertices(), Slic3r::GCode::extrude_path(), Slic3r::ExtrusionSimulator::extrude_to_accumulator(), Slic3r::extrusion_entities_append_loops(), Slic3r::extrusion_entities_append_loops_and_paths(), Slic3r::extrusion_entities_append_paths(), Slic3r::extrusion_entities_append_paths(), Slic3r::extrusionentity_extents(), Slic3r::extrusionentity_extents(), Slic3r::extrusionentity_extents(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::from_json(), Slic3r::FakeWipeTower::getFakeExtrusionPathsFromWipeTower(), Slic3r::FakeWipeTower::getFakeExtrusionPathsFromWipeTower2(), Slic3r::FakeWipeTower::getTrueExtrusionLayersFromWipeTower(), Slic3r::SupportMaterialInternal::has_bridging_perimeters(), intersect_expolygons(), length(), Slic3r::modulate_extrusion_by_overlapping_layers(), operator=(), Slic3r::paths_touch(), polygons_covered_by_spacing(), polygons_covered_by_width(), Slic3r::ExtrusionPathContoured::reverse(), simplify(), simplify_by_fitting_arc(), Slic3r::ExtrusionLoop::split_at(), Slic3r::ExtrusionLoop::split_at_vertex(), subtract_expolygons(), Slic3r::thick_polyline_to_extrusion_paths_2(), Slic3r::thick_polyline_to_multi_path(), Slic3r::to_json(), Slic3r::traverse_extrusions(), and Slic3r::traverse_loops().
| double Slic3r::ExtrusionPath::smooth_speed = 0 |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), and operator=().
| float Slic3r::ExtrusionPath::width |
Referenced by ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), ExtrusionPath(), Slic3r::ExtrusionPathOriented::ExtrusionPathOriented(), Slic3r::GCode::_extrude(), Slic3r::SupportMaterialInternal::collect_bridging_perimeter_areas(), Slic3r::contour_extrusion_path(), libvgcode::convert_to_vertices(), libvgcode::convert_to_vertices(), libvgcode::convert_to_vertices(), Slic3r::ExtrusionQualityEstimator::estimate_extrusion_quality(), Slic3r::ExtrusionSimulator::extrude_to_accumulator(), Slic3r::extrusionentity_extents(), Slic3r::extrusionentity_extents(), Slic3r::extrusionentity_extents(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::_3DScene::extrusionentity_to_verts(), Slic3r::from_json(), Slic3r::modulate_extrusion_by_overlapping_layers(), operator=(), polygons_covered_by_spacing(), polygons_covered_by_width(), Slic3r::ExtrusionLoop::split_at(), Slic3r::thick_polyline_to_extrusion_paths_2(), Slic3r::thick_polyline_to_multi_path(), Slic3r::to_json(), and Slic3r::traverse_loops().
| bool Slic3r::ExtrusionPath::z_contoured = false |