OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::anonymous_namespace{PluginHostSlicing.cpp} Namespace Reference

Functions

static void collect_extrusion_paths (const ExtrusionEntity *ee, std::vector< const ExtrusionPath * > &out)
static void refresh_lslices_bboxes (Layer &l)

Function Documentation

◆ collect_extrusion_paths()

void Slic3r::anonymous_namespace{PluginHostSlicing.cpp}::collect_extrusion_paths ( const ExtrusionEntity * ee,
std::vector< const ExtrusionPath * > & out )
static
48{
49 if (ee == nullptr)
50 return;
51 if (const auto* coll = dynamic_cast<const ExtrusionEntityCollection*>(ee)) {
52 for (const ExtrusionEntity* child : coll->entities)
53 collect_extrusion_paths(child, out);
54 } else if (const auto* loop = dynamic_cast<const ExtrusionLoop*>(ee)) {
55 for (const ExtrusionPath& p : loop->paths)
56 out.push_back(&p);
57 } else if (const auto* mp = dynamic_cast<const ExtrusionMultiPath*>(ee)) {
58 for (const ExtrusionPath& p : mp->paths)
59 out.push_back(&p);
60 } else if (const auto* path = dynamic_cast<const ExtrusionPath*>(ee)) {
61 // Catches ExtrusionPath and its subclasses (Sloped/Contoured/Oriented) last,
62 // after the composite types above have been ruled out.
63 out.push_back(path);
64 }
65}
Definition ExtrusionEntityCollection.hpp:33
Definition ExtrusionEntity.hpp:121
Definition ExtrusionEntity.hpp:468
Definition ExtrusionEntity.hpp:175
static void collect_extrusion_paths(const ExtrusionEntity *ee, std::vector< const ExtrusionPath * > &out)
Definition PluginHostSlicing.cpp:47

References collect_extrusion_paths().

Referenced by collect_extrusion_paths().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ refresh_lslices_bboxes()

void Slic3r::anonymous_namespace{PluginHostSlicing.cpp}::refresh_lslices_bboxes ( Layer & l)
static
71{
72 l.lslices_bboxes.clear();
73 l.lslices_bboxes.reserve(l.lslices.size());
74 for (const ExPolygon& island : l.lslices)
75 l.lslices_bboxes.emplace_back(get_extents(island));
76}
Definition ExPolygon.hpp:23
ExPolygons lslices
Definition Layer.hpp:170
std::vector< BoundingBox > lslices_bboxes
Definition Layer.hpp:172
BoundingBox get_extents(const ExPolygonsWithIds &e)
Definition Emboss.cpp:1374

References Slic3r::get_extents(), Slic3r::Layer::lslices, Slic3r::Layer::lslices_bboxes, and refresh_lslices_bboxes().

Referenced by refresh_lslices_bboxes().

Here is the call graph for this function:
Here is the caller graph for this function: