10{
12
16
17 for (const LayerRegion *layerm : layer.regions())
18 for (
const Surface &surface : layerm->slices().surfaces)
19 if (surface.is_internal())
21
22 std::vector<AABBTreeIndirect::BoundingBoxWrapper> bboxes;
26
28 }
29
32 int result = -1;
35 [&bbox_travel_eigen](const AABBTree::Node &node) {
36 return bbox_travel_eigen.intersects(node.bbox);
37 },
38 [&travel, &bbox_travel, &result, &islands =
m_internal_islands](
const AABBTree::Node &node) {
39 assert(node.is_leaf());
40 assert(node.is_valid());
43
44 result = int(node.idx);
45
46 return false;
47 }
48
49 return true;
50 });
51 return result != -1;
52}
void clear()
Definition AABBTreeIndirect.hpp:74
void build_modify_input(std::vector< SourceNode > &input)
Definition AABBTreeIndirect.hpp:93
Eigen::AlignedBox< CoordType, NumDimensions > BoundingBox
Definition AABBTreeIndirect.hpp:45
std::vector< const ExPolygon * > m_internal_islands
Definition RetractWhenCrossingPerimeters.hpp:24
AABBTree m_aabbtree_internal_islands
Definition RetractWhenCrossingPerimeters.hpp:27
const Layer * m_layer
Definition RetractWhenCrossingPerimeters.hpp:22
#define const
Definition getopt.c:38
EIGEN_DEVICE_FUNC const VectorType &() min() const
Definition AlignedBox.h:106
if(!(yy_init))
Definition lexer.c:1190
#define SCALED_EPSILON
Definition libslic3r.h:71
void traverse(const Tree< Dims, T > &tree, Predicate &&pred, Fn &&callback)
Definition AABBTreeIndirect.hpp:981
Polygons clip_clipper_polygons_with_subject_bbox(const Polygons &src, const BoundingBox &bbox)
Definition ClipperUtils.cpp:152
std::vector< Polygon, PointsAllocator< Polygon > > Polygons
Definition Polygon.hpp:15
Slic3r::Polylines diff_pl(const Slic3r::Polyline &subject, const Slic3r::Polygons &clip)
Definition ClipperUtils.cpp:852
BoundingBox get_extents(const ExPolygon &expolygon)
Definition ExPolygon.cpp:352
bool empty(const BoundingBoxBase< PointType, PointsType > &bb)
Definition BoundingBox.hpp:229